Mac chat


chest
 Share

Recommended Posts

olaf>nel nostro caso no, visto che poi il programma termina subito. è comunque una buona abitudine, altrimenti la memoria rimane occupata e magari in applicazioni vere può diventare un problema.

chest> ma io non ho cambiato il codice di olaf per quanto riguarda gli array. ho estratto una divisione per risparmiare cicli di cpu e ho cambiato malloc con new perché malloc è void. comunque se non vuoi utilizzare la cache di 2 livello escludila con i chud, no?

Link to comment
Share on other sites

  • Replies 22.6k
  • Created
  • Last Reply

Top Posters In This Topic

olaf>nel nostro caso no, visto che poi il programma termina subito. è comunque una buona abitudine, altrimenti la memoria rimane occupata e magari in applicazioni vere può diventare un problema.

chest> ma io non ho cambiato il codice di olaf per quanto riguarda gli array. ho estratto una divisione per risparmiare cicli di cpu e ho cambiato malloc con new perché malloc è void. comunque se non vuoi utilizzare la cache di 2 livello escludila con i chud, no?

Link to comment
Share on other sites

Su un PB Al con G4 1.25 GHz:

Al:~/tmp zann$ cat deadbeef.c

#define N 10000000

main () {

static int v[N], j;

for (j= 0; j < N; j++) v[j]= 0xdeadbeef;

}

Al:~/tmp zann$ cat copy.c

#define N 10000000

main () {

static int f[N], t[N], j;

for (j= 0; j < N; j++) t[j]= f[j];

}

Al:~/tmp zann$ cat both.c

#define N 10000000

main () {

static int f[N], t[N], j;

for (j= 0; j < N; j++) f[j]= 0xdeadbeef;

for (j= 0; j < N; j++) t[j]= f[j];

}

Al:~/tmp zann$ gcc deadbeef.c -o deadbeef

Al:~/tmp zann$ gcc copy.c -O0 -o copy

Al:~/tmp zann$ gcc both.c -O0 -o both

Al:~/tmp zann$ time ./deadbeef

real 0m0.316s

user 0m0.150s

sys 0m0.150s

Al:~/tmp zann$ time ./copy

real 0m0.527s

user 0m0.180s

sys 0m0.270s

Al:~/tmp zann$ time ./both

real 0m0.723s

user 0m0.450s

sys 0m0.220s

Link to comment
Share on other sites

Su un PB Al con G4 1.25 GHz:

Al:~/tmp zann$ cat deadbeef.c

#define N 10000000

main () {

static int v[N], j;

for (j= 0; j < N; j++) v[j]= 0xdeadbeef;

}

Al:~/tmp zann$ cat copy.c

#define N 10000000

main () {

static int f[N], t[N], j;

for (j= 0; j < N; j++) t[j]= f[j];

}

Al:~/tmp zann$ cat both.c

#define N 10000000

main () {

static int f[N], t[N], j;

for (j= 0; j < N; j++) f[j]= 0xdeadbeef;

for (j= 0; j < N; j++) t[j]= f[j];

}

Al:~/tmp zann$ gcc deadbeef.c -o deadbeef

Al:~/tmp zann$ gcc copy.c -O0 -o copy

Al:~/tmp zann$ gcc both.c -O0 -o both

Al:~/tmp zann$ time ./deadbeef

real 0m0.316s

user 0m0.150s

sys 0m0.150s

Al:~/tmp zann$ time ./copy

real 0m0.527s

user 0m0.180s

sys 0m0.270s

Al:~/tmp zann$ time ./both

real 0m0.723s

user 0m0.450s

sys 0m0.220s

Link to comment
Share on other sites

Su un PB Al con G4 1.25 GHz:

Al:~/tmp zann$ cat deadbeef.c

#define N 10000000

main () {

static int v[N], j;

for (j= 0; j < N; j++) v[j]= 0xdeadbeef;

}

Al:~/tmp zann$ cat copy.c

#define N 10000000

main () {

static int f[N], t[N], j;

for (j= 0; j < N; j++) t[j]= f[j];

}

Al:~/tmp zann$ cat both.c

#define N 10000000

main () {

static int f[N], t[N], j;

for (j= 0; j < N; j++) f[j]= 0xdeadbeef;

for (j= 0; j < N; j++) t[j]= f[j];

}

Al:~/tmp zann$ gcc deadbeef.c -o deadbeef

Al:~/tmp zann$ gcc copy.c -O0 -o copy

Al:~/tmp zann$ gcc both.c -O0 -o both

Al:~/tmp zann$ time ./deadbeef

real 0m0.316s

user 0m0.150s

sys 0m0.150s

Al:~/tmp zann$ time ./copy

real 0m0.527s

user 0m0.180s

sys 0m0.270s

Al:~/tmp zann$ time ./both

real 0m0.723s

user 0m0.450s

sys 0m0.220s

Link to comment
Share on other sites

L'ho rifatto una seconda volta e i risultati si sono abbassati (la prima volta avevo anche molte App aperte...)

real 0m1.855s

user 0m1.030s

sys 0m0.540s

Link to comment
Share on other sites

L'ho rifatto una seconda volta e i risultati si sono abbassati (la prima volta avevo anche molte App aperte...)

real 0m1.855s

user 0m1.030s

sys 0m0.540s

Link to comment
Share on other sites

L'ho rifatto una seconda volta e i risultati si sono abbassati (la prima volta avevo anche molte App aperte...)

real 0m1.855s

user 0m1.030s

sys 0m0.540s

Link to comment
Share on other sites

Camillo> <FONT COLOR="ff0000">Il processore senz'altro. Il computer non saprei... è grande come un armadio e contiene appena un disco in più dell'iMac... :P </FONT>

beh, non proprio... gli 8 slot di memoria (standard), i due processori (che da soli, con i dissipatori, sono grandi quanto lo zuccotto), i 4 slot d'espansione per schede (di cui uno AGP 8x), li hai dimenticati?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share