[OT] Re: [PLUTO-help] Velocità dei processori
Gian Uberto Lauri
GianUberto.Lauri a eng.it
Lun 7 Feb 2005 10:33:09 CET
>>>>> "SS" == Simone Stevanin <simone a pluto.it> writes:
>> I test vanno eseguiti molte volte coi programmi che interessa usare,
>> non con benchmark.
SS> I bechmark (almeno quelli per Windows - leggo dalle riviste di
SS> settore) sono costituiti da un programma che simula l'esecuzione
SS> di un ventaglio di applicazioni.
I benchmark sono spesso traditori. Leggersi Hennessy Patterson:
Un benchmark può essere codificato in modo malandrino
dando risultati per euristica, ottimizzato per andare
bene su una architettura e male su un'altra etc.
SS> Secondo me è abbastanza limitante fermarsi a testare un pc solo
SS> sulle applicazioni che si useranno perchè, a meno di utilizzi
SS> particolari, potrebbero cambiare col tempo. Un benchmark è
SS> predisposto anche per dare dei risultati, mediante il calcolo dei
SS> tempi interno al programma e la visulizzazione dei risultati a
SS> video: mettersi col cronometro a vedere quanto ci mette a
SS> caricarsi, che ne so, Firefox avrebbe un margine di errore che
SS> falserebbe completamente la misura ;-)
...
SS> Le differenze saranno nell'ordine dei decimi di secondo per molti
SS> applicativi e per un uso comune.
"Vedere quanto ci mette" è vero, non specifica il come fai la misura
ed anche la mia frase non specificava un'altra cosa dando per scontato
che ovviamente sto parlando di applicazioni CPU intensive: fintanto
che si tratta di battere i tasti, usare Emacs sotto DOS su un 386 non
è tanto diverso da usare Emacs su un G5.
Il come fare la misura, anche questo era sottointeso, richiede il
massimo della oggettività, la cosa migliore sarebbe andare in
assembler ed usare un clock hardware, poi viene l'uso di getrusage()
ed infine l'uso del comando time.
Occhio che comunque i risultati possono essere variati dal carico
della macchina sia come CPU che come memoria (ho notato con saint6 che
in presenza di swap pesante, getrusage() comincia ad aumentare anche
gli user time).
>> Ma la cosa migliore è vedere quale dei due fa eseguire meglio i
>> programmi che ti servono.
SS> Le differenze saranno nell'ordine dei decimi di secondo per molti
SS> applicativi e per un uso comune. Certo, nell'editing audio/video
SS> o in altri campi ben specifici potrebbero essere ben maggiori.
Un'altra cosa dei benchmark per Windows è che si dovrebbe verificare a
che priorità girano i thread del processo. Se cominciano ad andare a
priorità maggiore di 16 mi sa che i valori cominciano ad essere un
"pelo" più distanti dalla realtà, visto che il simpatico scheduler di
Windows lascia a secco di CPU tutti i programmi con proiorita minore
di X fintanto che c'è un thread X pronto per l'esecuzione.
Meglio invece vedere come quei programmi che si usano di solito e che
fanno largo uso di CPU (ricalcolo di grossi fogli elettronici,
programmi come Octave o il non libero Matlab, giochi con grafica 3D,
editing audio, di immagini e video girano, misurando oggettivamente i
dati.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico
\/ e coltivatore diretto di software
More information about the pluto-help
mailing list