Mac chat


chest
 Share

Recommended Posts

Olaf: <FONT COLOR="aa00aa">Per il bus> la frequenza indica la massima distanza fra i componenti e il numero di volte che il segnale viene inviato. La latenza (dopo quanti cicli è possibile avere il dato che torna indietro) non è mai fornito, dipende da molti fattori e agli utenti non interessa.</FONT>

No.

Camillo: <FONT COLOR="0077aa">Il rasoio di Occam è autocontraddittorio. :P</FONT>

Zann: <FONT COLOR="ff0000">Infatti: less is more :P</FONT>

Aubergines.

Comunque, ecco una versione di deadbeef compatibile con win32:

<FONT FACE="Courier New">#include <stdio.h>

#include <stdlib.h>

#include <time.h>

#ifdef _WIN32

    #define USE_CLOCK 1

    #define USE_RUSAGE 0

#endif

#ifndef USE_CLOCK

    #define USE_CLOCK 0

#endif

#ifndef USE_RUSAGE

    #define USE_RUSAGE 1

#endif

#if USE_RUSAGE

    #include <sys/time.h>

    #include <sys/resource.h>

#endif

#define DEFAULT_N 10000000

#define DEFAULT_R 10

int main (int argc, char *argv[])

{

    int m, n, q, r;

    int *v;

    float s;

#if USE_CLOCK

    clock_t cbegin, cend, ctime;

#endif

#if USE_RUSAGE

    struct rusage ru;

    struct timeval tv_ubegin, tv_uend, tv_utime, tv_sbegin, tv_send, tv_stime;

#endif

    if (argc == 3) {

        n = atoi (argv[1]);

        r = atoi (argv[2]);

    } else if (argc == 2) {

        n = atoi (argv[1]);

        r = DEFAULT_R;

    } else if (argc == 1) {

        n = DEFAULT_N;

        r = DEFAULT_R;

    } else {

            fprintf(stderr, "Syntax: %s [n] [r]\n", argv[0]);

            return 1;

    }

    v = malloc (sizeof(int) * n);

    

#if USE_CLOCK

    cbegin = clock();

#endif

#if USE_RUSAGE

    getrusage(RUSAGE_SELF, &ru);

    tv_ubegin = ru.ru_utime;

    tv_sbegin = ru.ru_stime;

#endif

    q = r;

    while (q--) {

        m = n;

        do {

            v[--m] = 0xDEADBEEF;

        } while (m);

    }

#if USE_CLOCK

    cend = clock();

#endif

#if USE_RUSAGE

    getrusage(RUSAGE_SELF, &ru);

    tv_uend = ru.ru_utime;

    tv_send = ru.ru_stime;

#endif

    

#if USE_CLOCK

    ctime = cend - cbegin;

    s = (float)(ctime)/CLOCKS_PER_SEC;

    printf("clock: %.2f s (precision %.2f s)\n", s, (float)1/CLOCKS_PER_SEC);

    printf("clock: %f Mbit/s\n", (float)sizeof(int)*n*r*8/1024/1024/s);

    printf("clock: 32-bit bus frequency: %f MHz\n", (float)sizeof(int)*n*r/s/4000000);

    printf("clock: 64-bit bus frequency: %f MHz\n\n", (float)sizeof(int)*n*r/s/8000000);

#endif

#if USE_RUSAGE

    timersub(&tv_uend, &tv_ubegin, &tv_utime);

    timersub(&tv_send, &tv_sbegin, &tv_stime);

    s = (float)tv_utime.tv_sec+(float)tv_utime.tv_usec/1000000;

    printf("rusage: user: %.2f s   system: %.2f s\n", s, (float)tv_stime.tv_sec+(float)tv_stime.tv_usec/1000000);

    printf("rusage: %f Mbit/s\n", (float)sizeof(int)*n*r*8/1024/1024/s);

    printf("rusage: 32-bit bus frequency: %f MHz\n", (float)sizeof(int)*n*r/s/4000000);

    printf("rusage: 64-bit bus frequency: %f MHz\n\n", (float)sizeof(int)*n*r/s/8000000);

#endif

    return 0;

}</FONT>

Link to comment
Share on other sites

  • Replies 22.6k
  • Created
  • Last Reply

Top Posters In This Topic

Mi sembrano dei rumors veritieri, anche se un pochino troppo ottimistici...

Direi che non è plausibile pensarea a 3 steep di processore per gli iBook, come addirittura il SuperDrive per l'iBook senza metterlo standard su tutta la linea Pro...ucciderebbe sia le vendite dei PowerBook da 12,1" e darebbe parecchio fastidio anche all'Alluminium da 15,2"...

Altre fonti parlano di SuperDrive su entrambi i modelli da 15,2" e naturalmente sul modello da 17" insieme alla Radeon 9700 da 64mb sul modello da 15,2" e da 128mb sul modello da 17"...oltre a dischi da 5400rpm e 7200rpm...vedremo ragazzi, si tratterebbe di eccellenti macchine, ultra competitive con i nuovi Centrino di Intel...

Mickey

Link to comment
Share on other sites

Oalf, premesso che posso sbagliare, se ciò che tu dici è vero (sulla latenza), come puoi dire che aglu utenti la latenza non interessa??? Che ce ne facciamo di un bus a 3Ghz che però manda dati in un verso e nell'altro a frequenze molto inferiori (come del resto riusciremo a dimostrare)???

Link to comment
Share on other sites

Luca, sull'accordo tra Real ed Apple mi documento meglio e poi ti rispondo. A prima vista mi sembrerebbe una buona cosa, soprattutto perchè Real ha trovato ottimi accordi con Nokia, e l'uso in licenza di Fairpaly potrebbe far vendere ad Apple direttamente sui cellulari. Mi rendo conto che gli americani non sappiano cosa è un cellulare (sic), però l'affare è *oggettivamente* interessante.

Per il resto non mi paiono brutti dati. C'è persino un +5% di macchine vendute.

Insomma ragazzi. Teniamo duro che se escono i nuovi G5 questo sarà l'anno della ripresa delle quote di mercato (nonostante la commedia di Anderson questo resta il punto strategico principale per la sopravvivenza di apple).

Link to comment
Share on other sites

Leggo che Jobs avrebbe rifiutato. Non mi stupisce ma mi dispiace. Se fosse vero Apple potrebbe dire addio da subito al mercato della musica digitale sui cellulari, che invece io vedo in ottima crescita.

Mah.

Se la voce è vera si conferma l'antico errore di Jobs: credere che gli USA rappresentino l'avanguardia del mondo tecnologico. Ma non è mai stato così, neppure nell'epoca d'oro, ed ora poi chi riesce a imporre standard mondiali si trova ad imporli anche agli USA, nonostante le loro pratiche ultramonopolistiche e protettive.

Mi vien da dire che WMA sarà il classico cavallo di ritorno. Fortuna che Nokia per ora sembra resistere ed anzi ribattere a muso duro.

Link to comment
Share on other sites

Gennaro: <FONT COLOR="119911">Mannaggia ad Apple ... se solo avesse azzeccato quel paio di messe giuste oggi staremo a vedere un mercato ben diverso</FONT>

Se solo Steve Jobs avesse dato retta a Bill Gates. Gates cercò di convincere Jobs a dare in licenza la tecnologia Mac ad altri produttori, almeno sui mercati esteri. Aveva ottimi argomenti, ma Jobs non volle sentir ragioni, e sappiamo come andò a finire.

Link to comment
Share on other sites

Macteo, perché non fai la prova sul G5 con il nuovo programma?

Camillo: <FONT COLOR="0077aa">Aubergines</FONT>

Zann: <FONT COLOR="aa00aa">?</FONT>

Niente... non capivo il senso della tua risposta, così ho detto la prima parola che mi è venuta in mente. Di solito funziona.

Link to comment
Share on other sites

Camillo:<FONT COLOR="7a1f2c"> Niente... non capivo il senso della tua risposta, così ho detto la prima parola che mi è venuta in mente. Di solito funziona.</FONT>

No.

Comunque, probabilmente è anche interessante vedere cosa succede per un array piccolo, che sta tutto in cache:

<FONT FACE="Courier New">

> gcc -W -O dead.c -o dead

> ./dead 10000 10000

rusage: user: 0.32 s system: 0.00 s

rusage: 9536.743164 Mbit/s

rusage: 32-bit bus frequency: 312.500000 MHz

rusage: 64-bit bus frequency: 156.250000 MHz

</FONT>

invece di:

<FONT FACE="Courier New">

> ./dead 10 10000000

rusage: user: 0.36 s system: 0.00 s

rusage: 8477.104492 Mbit/s

rusage: 32-bit bus frequency: 277.777771 MHz

rusage: 64-bit bus frequency: 138.888885 MHz

</FONT>

usando:

<FONT FACE="Courier New">

> system_profiler -detailLevel -2

Machine Model: PowerBook5,2

CPU Type: PowerPC G4 (1.1)

Number Of CPUs: 1

CPU Speed: 1.25 GHz

L2 Cache (per CPU): 512 KB

Memory: 512 MB

Bus Speed: 167 MHz

System Version: Mac OS X 10.3.3 (7F44)

Kernel Version: Darwin 7.3.0

</FONT>

Non cambia poi di molto... Scommetto che memset (3) usa meglio la cache.

BTW, i 200 MHz non li ho mai più visti. Eppure quando ho fatto post di quel messaggio avevo fatto più prove, ottenendo consistentemente valori intorno ai 200MHz. Boh...

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