LUG Castegnato - Linux Users Group Castegnato / Guida a Phoronix Test Suite - Prima parte

LUG Castegnato - Linux Users Group Castegnato

Linux User Group Castegnato - BS

Non hai eseguito l'accesso.

#1 21-09-2008 22:45:56

gattosilvestro
Moderator
Registrato: 20-05-2008
Messaggi: 442

Guida a Phoronix Test Suite - Prima parte

Phoronix Test Suite (PTS) é una piattaforma che permette di eseguire benchmark dell'hardware per Linux in modo accurato ed allo stesso tempo facile anche per l'utente meno esperto.
In questa guida illustrerò l'installazione di PTS su Ubuntu e Mandriva e darò alcune indicazioni sull'utilizzo del software, che dispone di un'ottima documentazione ma purtroppo per ora solo in inglese.


Come è nato Phoronix Test Suite
Phoronix.com é il sito di riferimento per quanto riguarda l'hardware e Linux. È stato creato creato da Michael Larabel nel 2004 ed è ora di proprietà di Phoronix Media, che sviluppa anche Phoronix Test Suite. Sul sito trovate pubblicate dettagliate recensioni di schede madre, schede video, processori, periferiche varie, sempre accompagnate da accurati benchmark.
Tra le altre cose, viene seguito da vicino, con puntuali aggiornamenti sul rilascio di nuove release, lo sviluppo dei driver grafici, sia nelle versioni proprietarie rilasciate dai produttori dei chip, sia nelle alternative open source. Tutta la vicenda del rilascio delle specifiche tecniche dei propri chip da parte della ATI è stata coperta meticolosamente, così come viene dedicata ampia attenzione al progetto Nouveau Companion, che si prefigge di fornire driver open source per i chip NVIDIA con le stesse funzionalità e prestazioni degli equivalenti rilasciati dalla casa costruttrice.
L'esperienza sviluppata in questi anni nel benchmark dell'hardware con Linux ha portato alla creazione di Phoronix Test Suite (PTS), rilasciata sotto licenza GPLv3. L'ultimo rilascio è la versione 1.2.2, nome in codice MALVIX, che supporta i sistemi operativi Linux, OpenSolaris e FreeBSD.


Installazione
Nota: nelle istruzioni che seguono è stato inserito uno spazio all'interno di alcuni comandi per la shell e di alcune directory, per esempio dove trovate scritto "c d" oppure "e tc". Questo è necessario a causa di un problema che c'è attualmente con il server che ospita il LUG. Se non ne siete ancora al corrente leggete qui per i dettagli.

Installazione in Ubuntu 8.04
Phoronix Media mantiene dei repository per le distribuzioni Debian e Ubuntu. Per installare PTS basta quindi aggiungere questi repository al file /e tc/apt/sources.list. Digitiamo il seguente comando da terminale per modificare il file interessato con gedit e privilegi di root:

Codice:

gksuo gedit /e tc/apt/sources.list

Aggiungiamo in fondo al file la seguente riga:

Codice:

deb http://www.phoronix-test-suite.com/releases/repo pts.debian/

Salviamo le modifiche e digitiamo il comando "sudo apt-get update" per aggiornare il database dei repository e quindi installiamo il pacchetto "phoronix-test-suite" e le necessarie dipendenze con il comando "sudo apt-get install phoronix-test-suite". Verrà visualizzato, tra gli altri, il seguente messaggio:

Codice:

ATTENZIONE: i seguenti pacchetti non possono essere autenticati!
  phoronix-test-suite
Installare questi pacchetti senza la verifica [s/N]?

Questo messaggio è dovuto al fatto che non è disponibile una chiave per l'autenticazione dei pacchetti che si trovano nel repository di Phoronix Media. Confermiamo per portare a termine l'installazione.

Installazione in Mandriva Spring 2008.1
Il pacchetto di Phoronix Test Suite è attualmente presente nella Mandriva Coocker, cioè la futura Mandriva Linux 2009. Per ora è necessario eseguire l'installazione manualmente. Per prima cosa installiamo i pacchetti "php-cli", "php-gd" e "php-posix", che sono le uniche dipendenze necessarie per PTS.
Poi scarichiamo da qui il tarball contenente il software. Infine apriamo il terminale, spostiamoci nella cartella dove abbiamo scaricato il file ed eseguiamo i seguenti comandi:

Codice:

tar xzf phoronix-test-suite-1.2.2.tar.gz
c d phoronix-test-suite
su -c "./install-sh"



Primo avvio

Phoronix Test Suite per ora non dispone di un'interfaccia grafica e tutte le operazioni vanno lanciate da riga di comando. I programmi che vengono scaricati ed installati per effettuare i vari test, ed anche tutti i file di configurazione, vengono posizionati nella cartella nascosta ".phoronix-test-suite" all'interno della HOME, quindi non è necessario eseguire il programma con privilegi di root. A volte però PTS si appoggia al gestore dei pacchetti della nostra distribuzione per installare del software di cui necessita per l'esecuzione dei test. In questi casi verrà chiesta la password di root per poter procedere con l'installazione.
La prima volta che lanciamo Phoronix Test Suite ci viene richiesto di accettare i termini di licenza, che in pratica dicono che il software é rilasciato sotto licenza GPLv3 e che eventuali danni causati al nostro hardware dall'esecuzione del programma saranno problemi nostri.

Codice:

[gatto@localhost ~]$ phoronix-test-suite list-tests

====================================
PHORONIX TEST SUITE - WELCOME
====================================

The Phoronix Test Suite is the most comprehensive testing and
benchmarking platform available for Linux and is designed to
carry out tests in a clean, reproducible, and easy-to-use manner.
This software ships with over 70 test profiles and 30 test
suites, but new tests and suites can be easily added through its
XML-based test profile system.

- The Phoronix Test Suite is open-source and licensed under the
GNU GPLv3. However, some tests supported by the PTS are not
open-source. To see the license of tests, run:
phoronix-test-suite list-tests.

- The Phoronix Test Suite contains tests which may stress your
system and in some cases could exhibit stability problems of the
system's hardware or software configuration. The Phoronix Test
Suite is provided WITHOUT ANY WARRANTY. Phoronix Media and
involved parties take no responsibility for misuse of this
software. Use of the Phoronix Test Suite is at your own risk.

- For enterprise support, sponsorship, or other professional
inquiries, contact phoronix@phoronix.com. Community support can
be found in the Phoronix Forums at
http://www.phoronix.com/forums/.

- If you opt to submit your test results to Phoronix Global, the
final results as well as basic hardware and software details
(what is shown in the PTS Results Viewer) will be shared and
publicly accessible through
http://global.phoronix-test-suite.com/.

For more information on the Phoronix Test Suite and its
possibilities, visit http://www.phoronix-test-suite.com/ or view
the included documentation.


Do you agree to these terms and wish to proceed (Y/n)? y

É possibile eseguire in tutto 76 test. Diamo il comando "phoronix-test-suite list-tests" per avere la lista di tutti i test disponibili:

Codice:

gatto@tux:~$ phoronix-test-suite list-tests

====================================
Phoronix Test Suite - Tests
====================================

bonnie             1.03d  1.1.0  VERIFIED     FREE         0.1  0.1  Michael Larabel       
build-apache       2.2.8  1.0.1  VERIFIED     FREE         5.8       Michael Larabel       
build-imagemagick  6.4.0  1.0.0  VERIFIED     FREE         8.4       Michael Larabel       
build-Linux-kernel 2.6.25 1.0.0  VERIFIED     FREE         46.4      Michael Larabel       
build-mplayer      1.0-rc2 1.0.0  VERIFIED     FREE         8.9       Michael Larabel       
build-php          5.2.5  1.0.0  VERIFIED     FREE         16.4 49.3 Michael Larabel       
byte               3.6    1.0.0  VERIFIED     FREE         0.2  0.5  Michael Larabel       
compliance-acpi           1.0.1  VERIFIED     FREE              0.01 Michael Larabel       
compliance-ogl     1.5.0  1.0.0  VERIFIED     FREE         0.33 3.8  Michael Larabel       
compliance-sensors        1.0.1  VERIFIED     FREE              0.01 Michael Larabel       
compress-7zip             1.0.1  VERIFIED     FREE         1.4  10   Michael Larabel       
compress-gzip             1.0.0  VERIFIED     FREE                   Michael Larabel       
compress-lzma             1.0.1  VERIFIED     FREE                   apaige                
compress-pbzip2    1.0.2  1.0.0  VERIFIED     FREE         0.82 4.5  Michael Larabel       
doom3              1.3.1  1.0.3  VERIFIED     NON-FREE               Michael Larabel       
encode-ape         3.99u4b5 1.0.0  VERIFIED     FREE         0.4  5    apaige                
encode-flac        1.2.1  1.0.0  VERIFIED     FREE         2    9    Michael Larabel       
encode-mp3         3.98   1.1.0  VERIFIED     FREE         1.3  1.7  Michael Larabel       
encode-ogg         1.2.0  1.0.0  VERIFIED     FREE         2.8  6    Michael Larabel       
encode-wavpack     4.41.0 1.0.0  VERIFIED     FREE         0.3  5    apaige                
espeak             1.37   1.0.1  VERIFIED     FREE         1.2  2.2  Michael Larabel       
et                 2.60   1.0.1  VERIFIED     FREE         260  273  Michael Larabel       
etqw-demo                 1.0.2  VERIFIED     NON-FREE     660  765  Michael Larabel       
etqw               1.5    1.0.2  VERIFIED     NON-FREE     531  566  Michael Larabel       
ffmpeg                    1.0.0  VERIFIED     FREE         88   16   Michael Larabel       
fgl-glxgears              1.0.0  VERIFIED     RESTRICTED             Michael Larabel       
fhourstones        3.1    1.0.0  VERIFIED     FREE         0.1  0.1  Michael Larabel       
fio                1.21   1.0.0  VERIFIED     FREE         1.30 5.0  Michael Larabel       
fract              1.07b  1.0.0  VERIFIED     FREE         0.58 3.2  Michael Larabel       
glmark             0.5.2  1.0.2  VERIFIED     FREE         1    1.5  Michael Larabel       
gnupg              1.4.9  1.0.0  VERIFIED     FREE         4.4  8.4  Michael Larabel       
gtkperf            0.40   1.0.0  VERIFIED     FREE         0.38 0.11 Michael Larabel       
hdparm-read               0.3    UNVERIFIED   FREE                   Michael Larabel       
hmmer              2.3.2  1.0.0  VERIFIED     FREE         107  707  Andrew Schofield      
idle                      1.0.0  VERIFIED     FREE         0.01 0.01 Pekka Panula          
iozone             3.308  1.1.0  VERIFIED     FREE         1.5  2.3  Michael Larabel       
j2dbench           1.0    1.0.0  VERIFIED     FREE                   Tao Zhang             
java-scimark2      2.0    1.0.0  VERIFIED     FREE         0.03 0.05 Michael Larabel       
jgfxbat            2.0    1.0.0  VERIFIED     FREE                   Tao Zhang             
lightsmark         2008   1.1.1  VERIFIED     NON-FREE               Michael Larabel       
mafft              6.240  1.0.0  VERIFIED     FREE                   Andrew Schofield      
md-gromacs         3.3.3  1.1.0  VERIFIED     FREE         30   106  Andrew Schofield      
memory-bandwidth   0.13   1.0.0  VERIFIED     FREE         0.01 0.05 Michael Larabel       
mencoder           1.0-rc2 1.0.0  VERIFIED     FREE         95   16   Michael Larabel       
mrbayes            3.1    1.0.0  VERIFIED     FREE         17   22   Andrew Schofield      
nexuiz             2.4.2  1.0.2  VERIFIED     FREE         376  746  Michael Larabel       
norsetto-shadow           1.0.0  VERIFIED     FREE         1.3  2.5  Michael Larabel       
openarena          0.8.0  1.1.0  VERIFIED     FREE         309  329  Michael Larabel       
openssl            0.9.8h 1.1.0  VERIFIED     FREE         3.2  37   Michael Larabel       
ppracer            0.5 Alpha 1.0.0  VERIFIED     FREE         15.0 23.3 Michael Larabel       
pts-graph          1.00   1.0.0  VERIFIED     FREE         0.01 0.02 Michael Larabel       
quake4             1.4.2  1.0.3  VERIFIED     NON-FREE     275  2868 Michael Larabel       
ramspeed           2.5.1  1.0.0  VERIFIED     FREE         0.06 0.72 Michael Larabel       
render-bench              1.0.0  VERIFIED     FREE         0.02 0.12 Michael Larabel       
sample-program            1.0.0  EXPERIMENTAL FREE                   Phoronix Media        
scimark2           2.0    1.0.0  VERIFIED     FREE         0.01 0.04 Michael Larabel       
specviewperf10     10.0   1.0.0  VERIFIED     FREE         585  1600 Michael Larabel       
specviewperf9      9.0.3  1.0.0  VERIFIED     FREE         625  1800 Michael Larabel       
sqlite             3.6.1  1.1.0  VERIFIED     FREE         2.1  18.4 Michael Larabel       
stresscpu2         2      0.9.0  VERIFIED     FREE         1    2    Andrew Schofield      
sunflow            0.07.2 1.0.0  VERIFIED     FREE         1.2  1.3  Michael Larabel       
super-pi           2.0    1.0.1  VERIFIED     UNKNOWN      0.07 1.4  Pekka Panula          
tandem-xml         1.0    1.0.0  VERIFIED     FREE         0.01 0.02 Michael Larabel       
tremulous          1.1.0  1.0.2  VERIFIED     FREE         101  110  Michael Larabel       
trislam                   1.0.0  VERIFIED     FREE         0.4  0.8  Michael Larabel       
unigine-sanctuary  4      1.0.1  VERIFIED     NON-FREE     25   55   Michael Larabel       
unigine-tropics           1.0.1  VERIFIED     NON-FREE     63   73   Michael Larabel       
urbanterror        4.1    1.0.2  VERIFIED     FREE         721  740  Michael Larabel       
ut2004-demo        3334   1.1.1  VERIFIED     NON-FREE               Michael Larabel       
vdrift             2008-08-05 0.0.1  BROKEN       FREE                   Michael Larabel       
video-extensions   1.0-rc2 1.0.0  VERIFIED     FREE         24.0 30.0 Michael Larabel       
warsow             0.42   1.0.4  VERIFIED     FREE         185  195  Michael Larabel       
wine                      0.1    UNVERIFIED   FREE                   Stefan Doesinger      
x11perf            1.5    1.0.1  VERIFIED     FREE         0.13 1.7  Michael Larabel       
xplane9            9.00   1.0.1  VERIFIED     FREE         475  855  Michael Larabel       
yafray             0.0.9  1.0.0  VERIFIED     FREE         2.9  28.9 Michael Larabel

Per avere informazioni su un particolare test digitiamo il comando "phoronix-test-suite info", seguito dal nome del test che ci interessa, come nel seguente esempio:

Codice:

gatto@tux:~$ phoronix-test-suite info compress-7zip

====================================
7-Zip Compression
====================================

Test Version: 1.0.1
Maintainer: Michael Larabel
Test Type: Processor
Software Type: Utility
License Type: FREE
Test Status: VERIFIED
Project Web-Site: http://www.7-zip.org/
Download Size: 1.4 MB
Environment Size: 10 MB

Description: This is a test of 7-Zip using p7zip with the integrated benchmark feature.

Test Installed: No

Software Dependencies:
- GNU Development Utilities / Libraries

Suites Using This Test:
- compression
- multicore
- universe
- universe-cli

I test sono poi raggruppati all'interno di 38 suite. Per avere la lista delle suite digitiamo il comando "phoronix-test-suite list-suites":

Codice:

gatto@tux:~$ phoronix-test-suite list-suites

====================================
Phoronix Test Suite - Suites
====================================

audio-encoding             - Audio Encoding                   1.0.0  System      
compilation                - Timed Code Compilation           1.0.0  Processor   
compression                - Timed File Compression           1.0.0  Processor   
computational-biology      - Computational Biology Test Suite 1.0.0  Scientific  
computational              - Computational Test Suite         1.0.1  System      
cryptography               - Cryptography                     1.0.0  Processor   
database                   - Database Test Suite              1.0.0  System      
disk                       - Hard Disk Test Suite             1.0.3  Hard Disk   
encoding                   - Encoding                         1.0.0  System      
gaming-closed              - Closed-Source Gaming             1.0.1  System      
gaming-free                - Free Software Gaming             1.0.2  System      
gaming                     - Gaming                           1.0.0  System      
gui-toolkits               - GUI Toolkits                     1.0.1  Graphics    
ioquake3-games             - Games Using The ioquake3 Engine  1.0.0  System      
java-opengl                - Java OpenGL                      1.0.0  System      
java                       - Java                             1.0.0  System      
memory                     - System Memory Test Suite         1.0.1  Memory      
molecular-dynamics         - Molecular Dynamics Test Suite    1.1.0  Processor   
multicore                  - Multi-Core                       1.0.0  Processor   
netbook                    - Netbook Test Suite               1.0.0  System      
opengl-demos               - OpenGL Demos Test Suite          1.0.2  System      
opengl-workstation         - OpenGL Workstation Test Suite    1.0.1  System      
pcqs-desktop-graphics      - PCQS: Desktop Graphics           1.0.1  System      
pcqs-graphics              - PCQS: Graphics                   1.0.0  System      
pcqs-memory                - PCQS Memory Test Suite           1.0.0  Memory      
pcqs-motherboard           - PCQS: Motherboard                1.0.1  Motherboard 
pcqs-processor             - PCQS: Processor                  1.0.1  Processor   
pcqs-server-motherboard    - PCQS: Server Motherboard         1.0.0  Motherboard 
pcqs-workstation-graphics  - PCQS: Workstation Graphics       1.0.1  Graphics    
ray-tracing                - Ray-Tracing Test Suite           1.0.0  System      
system-compliance          - System Compliance                1.0.0  System      
system-memory              - System Memory                    1.0.0  Memory      
unigine                    - Unigine Test Suite               1.0.0  Graphics    
universe-cli               - Universe CLI Test Suite          1.0.3  System      
universe-x                 - Universe Test Suite              1.0.2  System      
universe                   - Universe Test Suite              1.0.0  System      
video-encoding             - Video Encoding                   1.0.0  System      
x-testing                  - X Testing                        1.0.0  System

Per avere informazioni su una o più suite e sapere quali test vi sono contenuti digitiamo sempre "phoronix-test-suite info" seguito questa volta dal nome della suite, come nel seguente esempio (potete indicare anche più di una suite):

Codice:

gatto@tux:~$ phoronix-test-suite info compression

====================================
Timed File Compression
====================================

Suite Version: 1.0.0
Maintainer: Michael Larabel
Suite Type: Processor
Unique Tests: 4
Suite Description: This test suite consists of tests that measure various forms of file compression such as gzip, bzip2, and 7zip. The same 512MB original file is used in each test. This suite is good for testing the system's processor, memory, and overall system performance.

compression
  * compress-7zip
  * compress-gzip
  * compress-pbzip2
  * compress-lzma



Esecuzione di un test o di una suite

Per eseguire un test od una suite é necessario prima installarlo sul proprio computer. Per far questo digitiamo "phoronix-test-suite install" seguito dal nome del test o della suite (per esempio "phoronix-test-suite install compress-7zip). PTS eseguirà il download di tutto quello che necessita per eseguire i test selezionati e lo installerà in un'apposita sottodirectory di "~/.phoronix-test-suite".
Fatto questo possiamo eseguire il test (o la suite) con il comando "phoronix-test-suite run" seguito dal nome del test (o della suite).
In alternativa è possibile riunire questi due passaggi, installazione ed esecuzione, in un unico comando digitando "phoronix-test-suite benchmark" seguito dal nome del test (o della suite).

Quando eseguiamo un test ci viene chiesto come prima cosa se desideriamo salvarne i risultati. Se rispondiamo affermativamente dobbiamo assegnare al test un "name" e un "unique name":

Codice:

gatto@tux:~$ phoronix-test-suite run compress-7zip

Would you like to save these test results (Y/n)? y
Enter a name to save these results:
Enter a unique name for this test run:
...

Per ora limitiamoci a dare due nomi diversi. La differenza diventa significativa quando vogliamo eseguire due o più volte lo stesso tipo di test, per esempio per verificare se abbiamo ottenuto dei miglioramenti di prestazioni dopo aver modificato particolari settaggi. In questo caso il "name" raggrupperà i vari test mentre lo "unique name" indicherà le singole ripetizioni dello stesso test.
Se vogliamo possiamo anche inserire una nuova descrizione, altrimenti premiamo semplicemente INVIO per accettare la descrizione di default.

Alla fine del test vengono poste altre due domande:

Codice:

...
Do you want to view the results in your web browser (y/N)? y
Would you like to upload these results to Phoronix Global (Y/n)? n
...

Alla prima rispondiamo "y" per vedere i risultati del test visualizzati all'interno del nostro browser. La seconda domanda ci chiede se vogliamo inviare i risultati del nostro test al database Phoronix Global. Per ora rispondiamo negativamente, vedremo l'utilizzo di questa funzionalità più avanti.


Confrontare i risultati

Supponiamo di aver già eseguito dei test e di aver poi cambiato alcune cose del nostro sistema operativo per migliorarne le prestazioni, per esempio abbiamo installato un nuovo kernel e vogliamo verificare quanto questo influisca sulla velocità di compilazione.
Per prima cosa possiamo elencare i risultati dei test che abbiamo già eseguito con il comando "phoronix-test-suite list-results":

Codice:

gatto@tux:~$ phoronix-test-suite list-results

====================================
Phoronix Test Suite - Saved Results
====================================

audio-encoding-1
Saved Name: audio-encoding-1   Test: audio-encoding     
    - 21-9-2008-19-43

build-mplayer-1
Saved Name: build-mplayer-1    Test: build-mplayer      
    - 21-09-2008-20-23

compress-7zip-1
Saved Name: compress-7zip-1    Test: compress-7zip      
    - 21-09-2008-22-03

Per rieseguire questi test (o suite) confrontando i risultati con quelli ottenuti in precedenza digitiamo "phoronix-test-suite run" seguito questa volta dal nome che abbiamo assegnato al test, come nel seguente esempio (questa volta ci viene chiesto di inserire solo lo "unique name"):

Codice:

gatto@tux:~$ phoronix-test-suite run build-mplayer-1

Current Test Identifiers:
- 21-09-2008-20-23

Enter a unique name for this test run:



Prossima parte

Per ora esercitatevi con questi comandi. Nella prossima parte della guida descriverò come utilizzare il database Phoronix Global ed altre funzionalità di PTS.
Vi consiglio di provare ad eseguire "phoronix-test-suite benchmark et" per godervi una demo di Enemy Territory utilizzata per monitorare le prestazioni della scheda grafica.


Link utili
Il sito ufficiale
Articolo apparso su linux.com il 19 giugno
Phoronix.com

Ultima modifica di gattosilvestro (21-09-2008 23:09:32)


ASUS P5K-VM | INTEL CORE 2 DUO E6300 | MAXTOR SMT3160812AS, MAXTOR3320820AS | 2 x CORSAIR VS1GB667D2 | SONY AWG170AB2 DVD+-RW DL

Non in linea

 

Footer forum

Powered by PunBB
© Copyright 2002–2008 PunBB