Category Archives: nVidia

Il driver Nvidia e il problema di num_physpages

A luglio Linus Torvald rimosse la variabile num_physpages dalla versione 3.11 del kernel di Linux. Questa decisione ha però determinato una conflittualità tra il codice sorgente del driver fornito da Nvidia e il kernel stesso. La num_physpages era definita nel gestore mm della memoria di Linux.

Oggi, l’ultimo driver stabile di Nvidia è il 319.60 e ci sono ancora i riferimenti alla variabile suddetta nel file d’intestazione nv-linux.h. Se anche voi avete una distribuzione con il kernel 3.11 (o più recente) e tentate, come ho fatto io, di compilare il driver per le schede video, otterrete il seguente messaggio di errore:


In file included from /tmp/selfgz4790/NVIDIA-Linux-x86_64-319.49/kernel/os-interface.c:26:0:
   /tmp/selfgz4790/NVIDIA-Linux-x86_64-319.49/kernel/os-interface.c: In function ‘os_get_system_memory_size’:
   /tmp/selfgz4790/NVIDIA-Linux-x86_64-319.49/kernel/nv-linux.h:1040:41: error: ‘num_physpages’ undeclared (first use in this function)
    #define NV_NUM_PHYSPAGES                num_physpages
                                            ^

Come già detto, num_physpages è stata tolta da Torvalds, quindi per il momento non c’è altra soluzione che correggere il file nv-linux.h del driver con una patch oppure un editor di testo. Potete scaricare la patch dalla Rete, ma si tratta di un file specifico per una particolare versione del driver di Nvidia che dovreste adattare alla vostra situazione. A questo indirizzo troverete le istruzioni per procedere nel modo corretto. Oltre a servirvi di una patch, in alternativa potete modificare il file nv-linux.h durante l’installazione del driver, per esempio seguendo questa procedura:

  1. Eseguite l’installer di Nvidia con l’opzione -x, il comando decomprirà l’archivio che contiene il codice sorgente del driver.
  2. Modificate il file nv-linux.h, che trovate nella directory kernel, con un editor, vi oppure gedit vanno benissimo.
  3. Cercate la riga che ha la seguente definizione in linguaggio C #define NV_NUM_PHYSPAGES   num_physpages, dovreste trovarla inserita fra altre definizioni, esattamente come nell’esempio sottostante:
    
    #if !defined(NV_VMWARE):
    #define NV_NUM_PHYSPAGES                num_physpages
    #define NV_GET_CURRENT_PROCESS()        current->tgid
    #define NV_IN_ATOMIC()                  in_atomic()
    
  4. Dopo la riga corrispondente all’istruzione condizionale #if, ma prima della definizione #define NV_GET_CURRENT_PROCESS ecc. dovete creare un nuovo blocco che corrisponda al seguente codice per il preprocessore C:
    
    #if LINUX_VERSION_CODE &gt;= KERNEL_VERSION(3, 11, 0)</p>
    #define NV_NUM_PHYSPAGES                get_num_physpages()
    #else</p>
    #define NV_NUM_PHYSPAGES                num_physpages
    #endif
    
  5. Ultimate le vostre modifiche, avrete esattamente questo:
    
    #if !defined(NV_VMWARE)
    #if LINUX_VERSION_CODE &gt;= KERNEL_VERSION(3, 11, 0)</p>
    #define NV_NUM_PHYSPAGES                get_num_physpages()
    #else
    #define NV_NUM_PHYSPAGES                num_physpages
    #endif</p>
    #define NV_GET_CURRENT_PROCESS()        current-&gt;tgid
    #define NV_IN_ATOMIC()
    
  6. Potete ora chiudere l’editor ed eseguire il comando nvidia-installer che trovate nella directory principale del driver.

Ubuntu 13.10 è in circolazione da poco tempo e utilizza un kernel recentissimo che non è compatibile con il driver per le schede video GeForce. Il bug dovrebbe essere ormai già noto ai programmatori di Nvidia, anche se il problema non sembra molto diffuso fra gli utenti. In questo caso è bastato cercare la patch con un motore di ricerca, usando i termini num_physpage, kernel 3.11 e Nvidia. Vista l’importanza raggiunta da Linux, e in particolare dalla distribuzione Ubuntu, mi aspetto da un giorno all’altro un driver che sia compatibile con il recente kernel 3.11 e 3.12.

Nvidia non deve abbassare i prezzi

Dovrebbe abbassare i prezzi Nvidia? A questa domanda una fonte che conosce profondamente l’industria delle schede video ha detto, in un’intervista rilasciata alla rivista PCR, che non è necessario un gioco al ribasso sul prezzo di listino delle GeForce Titan. La fonte ritiene che il nuovo processore grafico Radeon R9 290X  di AMD non batterà di molto il modello di prima classe di Nvidia. I benchmark di alcuni siti specializzati mostrano quest’oggi una differenza modestissima di FPS: con un test di 45 secondi fatto eseguendo il gioco Tom Raider a qualità “ultra” e alla risoluzione di 3840×2160, è risutato che solo quattro frame per secondo separano le due schede. Inoltre, c’è anche una diceria che circola intensamente a proposito di un modello erede del Titan che Nvidia metterebbe in vendita per competere meglio con il nuova accelleratore grafico di AMD. Se fosse vera, sarebbe opportuno effettuare il taglio al prezzo della Titan.

Diamoci un taglio
Diamoci un taglio

Al di là dell’aspetto economico di queste schede di prima classe, bisogna considerare che si tratta di bench effettuati a risoluzioni HD, pochi giocatori le usano. Inoltre, queste schede per il momento non hanno sbocco nel gaming sotto Linux dove tra i driver dei due produttori c’è troppa disparità di qualità (vd. i recenti bench di Miachael Larabel) e l’offerta di video game è limitata.

Fonte:

  1. ‘Nvidia doesn’t need to lower prices to compete with new AMD R7/R9 cards’

Nouveau e CPUFreq: Geforce 9800 supera GTX680

Il recente test di Michael Larabel sul driver AMD open source, fra le due versione del kernel 3.11 e 3.12 (da git), ha reso evidente un miglioramento delle prestazioni del computer. Lo stesso test è stato ripetuto con il driver Nouveau, però in questo caso il guadagno è risultato minimo con le schede denominate Kepler e Fermi. Per quale motivo? Il motivo è che il driver open source non supporta ancora il reclock, ovvero la selezione del livello delle prestazioni della GPU.

I cambiamenti nel codice di CPUFreq (il modulo che governa la frequenza d’esercizio della CPU) hanno giovato alle GPU Radeon, ma non a tutte quelle di marca nVidia. Da tempo c’è la possibilità di fare “re-clocking” delle schede grafiche GeForce: fino alla serie 7 il reclock avveniva in fase di boot e non interessava la velocità della VRAM; a partire dalla serie 8, i modelli M dei portatili avevano la capacità di riaggiustare sia il clock della RAM video sia quello del core della GPU. Questa modifica fu decisa per ridurre i consumi energetici quando la GPU si trovava per lo più in riposo. Il clock era impostato a una velocità intermedia fra il valore massimo e quello minimo d’esercizio. Con le GeForce 200 il clock al boot era impostato a ⅓ della velocità massima della GPU. Con le schede video denominate Fermi (dalla serie 400 alla 600) le prestazioni sono peggiorate perché il clock di default è al 10% della frequenza massima d’esercizio e non c’è ancora modo di fare reclock usando il driver Nouveau. Per questo motivo nel test di Michael la scheda 9800GTX ha superato una GeForce GTX680.

PTS: Nouveau bench con Xonotic
PTS: Nouveau bench con Xonotic

Linux e il 3D Benchmarking

L’analisi delle prestazioni di un elaboratore consiste nel misurare le capacità di calcolo con un insieme di programmi (carico di lavoro, detto workload) particolari. “Nella maggior parte dei casi le prestazioni sono l’attributo più importante nell’orientare la scelta fra diversi elaboratori disponibili” (Patterson e Hennessy, Struttura e progetto dei calcolatori, pag. 37). Certamente la misura da sola non suggerisce alcuna indicazione utile all’acquirente. Occorre ripeterla fra varie macchine, cioè svolgere un confronto e poi riferire i risultanti. Studiando questi dati, nel corso degli anni, i progettisti hanno perfezionato gli elementi del personal computer che davano maggiori prestazioni in certe aree piuttosto che in altre. L’acceleratore grafico (GPU) ha sostituito la CPU nei calcoli geometrici e si è specializzato sul rendering delle scene 3D. La tecnologia SLI (o l’alternativa Crossfire), di recente invenzione, promette di raddoppiare o triplicare (quasi), a seconda del numero di GPU messe in parallelo, le prestazioni dell’elaboratore con le applicazioni 3D che sono prevalentemente giochi basati su OpenGL o DirectX. Gli ingegneri hanno aggiunto poi alla GPU le istruzioni macchina per risolvere complicate formule di matematica e fisica, mi riferisco all’engine CUDA di nVidia. Una valutazione accurata sull’efficienza del sistema hardware e software viene svolta con un gruppo di benchmark. Si tratta spesso di programmi individuati fra quelli che l’utente utilizza abitualmente (Phoronix Test Suite), oppure sono applicazioni specifiche che esaminano determinate componenti (CPU2006, RAMSpeed, ecc). Oggi la grafica 3D richiede più potenza e memoria di qualsiasi altro programma per PC. Quando usiamo i videogiochi come carico di lavoro sul nostro banco di prova, otteniamo una previsione molto attendibile delle prestazioni del calcolatore. Il metodo è semplice. Possiamo valutare l’affidabilità del nostro computer partendo dai seguenti giochi: Quake III, Unreal Tournament 4, Doom 3, Enemy Territory, Quake Wars, Savage 2, Nexuiz, perché li troviamo a pagamento, gratuitamente o come demo nel World Wide Web e con uno sforzo minimo riusciamo a installarli in Linux.

Quake Wars

Quake Wars si adatta bene all’analisi delle prestazioni. Il suo motore grafico è derivato da Doom 3 e incorpora la tecnologia denominata MegaTexture che migliora indubbiamente l’aspetto del gioco negli spazi aperti della mappa. Possiamo adoperare, per il nostro scopo, la versione di prova oppure quella commerciale. Prima dobbiamo scegliere la mappa, quindi registrare una partita da Internet e poi ripetere la registrazione con una opzione determinata. Al termine dell’operazione, il motore grafico calcola il frame rate dividendo il numero totale di immagini che compongono l’animazione con il tempo, espresso in secondi, impiegato dalla macchina fisica per visualizzarle. Il risultato esprime l’effettiva prestazione della scheda grafica e del sottosistema hardware/software. Il valore suggerisce anche a quale risoluzione video possiamo giocare senza perdere troppa qualità nell’immagine.

Scarica uno dei pacchetti messi a disposizione per Linux

  1. Quake Wars demo v2.0 – Contiene la mappa Valley
  2. Quake Wars 1.5 Full – Richiede il DVD

Per registrare una partita, collegati a un server e premi il tasto F12. Troverai il file della registrazione nella directory:

$HOME/.etqw/base/demos

Dalla console del gioco esegui i seguenti comandi in successione:

com_unlock_FPS 1
com_unlock_timingMethod 0
com_showFPS 1
timeNetDemo FILENAME.ndm
condump FILENAME.log

Puoi mettere questi comandi, preceduti dalla parola chiave seta, in un file di testo chiamato NOMEFILE.cfg:

seta com_unlock_FPS 1
seta com_unlock_timingMethod 0
seta com_showFPS 1
timeNetDemo FILENAME.ndm (* questo senza seta *)

Poi dalla console devi soltanto invocarlo con: exec NOMEFILE.cfg

Non dimenticare la riga di comando di Unix che abilita la console (se disabilitata):

etqw +set com_AllowConsole 1

 

Una sintesi del PC Gigabyte S-Series

Il PC Gigabyte S-Series (denominato Frag Storm) è un computer IBM compatibile con processore a doppio core che ho assemblato l’estate scorsa. Volevo un sistema radicalmente nuovo, cioè costruito da zero usando componenti più moderne, soprattutto per giocare a Savage 2, dato che il portatile A6Tc non lo reggeva veramente bene. Tuttora lo ritengo adatto anche per i giochi che acquisterò o proverò in futuro: Unreal Tournament 3, Postal 3, Rage, ecc. Dopo sei mesi, scrivo finalmente questo articolo soddisfatto dei risultati ottenuti e allego i grafici dell’ultima analisi effettuata sulle memorie DDR2 con la ben nota collezione di programmi Phoronix Test Suite per Linux. Le componenti che costituiscono il Frag Storm sono elencate di seguito assieme alle foto scattate all’epoca del montaggio. Dove possibile riporto il prezzo aggiornato di ogni pezzo.

Scheda madre

GIGABYTE – GA-M57SLI-S4 è la scheda madre che ho acquistato. La scatola include il manuale dell’utente in lingua francese e in inglese. Gigabyte è una marca che non ha bisogno certo di presentazioni; ho preferito il presente modello principalmente per tre motivi: il chipset è nForce, ha il dissipatore passivo e il disegno costruttivo della scheda appare molto elegante. Fa insomma un figurone con i cabinet aperti o semplicemente dotati di finestra come il mio. Colpisce subito lo stile grafico utilizzato per la stampa delle informazioni sulla scatola e sul libretto informativo, grazie alla scelta indovinata dei colori bianco/arancione/giallo/verde, con sigle evidenti sul lato superiore e diciture esaustive su quello inferiore. I loghi delle principali caratteristiche tecniche spiccano fra tutto il resto: Gamer’s Choice! SLI. Speed. Smart. Safe SATA 3Gb/s. Support AM2+ CPU. C’è un doppio involucro: quello esterno è sottile e patinato, quello interno si dimostra più robusto per custodire la scheda madre e gli accessori. Se la confezione è di qualità, si può tenerla in mostra sugli scaffali oppure rivendere l’oggetto senza pericolo di danneggiarlo durante la spedizione. Però le cose che mi piacciono particolarmente, come la Gigabyte M57SLI-S4, alla fine le custodisco nell’imballo originale in un armadietto, lontano dalla polvere e dall’umidità. Il codice GA-M57SLI-S4 fa riferimento al controller nForce 570 SLI e alle quattro funzioni principali offerte: SLI, Speed, Smart e Safe.

Dal punto di vista informatico, sulla mobo (da mother board) è saldato il socket AM2, adatto per l’installazione dei modelli Athlon 64 FX, Athlon 64 X2 Dual Core, Athlon 64 e Sempron. Il sito web di riferimento (vd. dettagli GA-M57SLI-S4) e la confezione specificano che la mother board ha la compatibilità per AM2+, il supporto si estende quindi anche alle CPU Phenom X3 e X4. E’ scontato che con queste capacità di espansione, si può ancora far ricorso ad un aggiornamento del sistema a un anno dall’acquisto o persino oltre. Il bus HyperTransport (FSB) collega la CPU al chipset per le operazioni di Input/output. I banchi della memoria Dram sono invece direttamente connesse alla CPU tramite la tecnologia Direct Connect Architecture, mentre il processore (MCP) nForce 570 SLI di nVidia permette l’inserimento di due schede video sui pettini PCIe x16 disponibili; le schede si abbassano però a lavorare in parallelo su due vie a x8, è il limite del chipset. Oggi questa configurazione, denominata SLI, garantisce anche agli utenti del sitema operativo Linux un incremento delle prestazioni nella grafica e nei giochi rispetto alla soluzione con scheda video singola. La scheda con un grosso dissipatore, se inserita nel secondo bus PCIe x16, rende inutilizzabile l’adiacente slot PCI di vecchia generazione a causa del layout compatto. Per quanto riguarda le connessioni di input/output di nForce, ci sono: un connettore per floppy disk, un connettore per dispositivi IDE (ATA 33/66/100/133), sei connettori SATA-II da 3GB/s, incluso il supporto via hardware per combinare i dischi in RAID 0, RAID 1, RAID 0+1 e RAID 5 i dischi SATA. Il Marvell 88E1116 è il microcontrollore LAN ethernet da 10/100/1000 Mbit, regolato dal modulo nforcedeth del kernel di Linux. L’audio viene prodotto dal chip Realtek ALC888, con le più diffuse caratteristiche attualmente disponibili: High Definition Audio, configurazioni da 2/4/6/8 canali, riproduzione diretta dal lettore CD, ingresso e uscita S/PDIF. Le dieci porte USB consentono il collegamento di un soddisfacente numero di periferiche: stampante, mouse, tastiera, ricevitori DVB-T, e molto altro. Prezzo, iva inclusa: 70,80

Cabinet

Thermaltake – Armor Jr. Per l’assemblaggio del Lan Party UT250 avevo scelto il Vostok di Enermax, un cabinet robusto ed economico, ma per il nuovo PC volevo fare le cose in grande stile comprandone uno munito di finestra che non costasse un patrimonio e che potesse eventualmente ospitare un sistema di raffreddamento a liquido. Poiché la postazione di lavoro era composta da mobili di legno in pino massiccio, dovevo procurarmi un case di colore nero, di tipo miditower, non troppo pesante perché l’avrei collocato su uno scaffale IVAR di IKEA che porta al massimo venticinque chili per ripiano. Il Thermaltake Armor Jr. mi piaceva esteticamente ed era proprio adatto ai miei scopi. L’avevo ricevuto a casa ad agosto, imballato in uno scatolone con doppio strato di cartone, ma all’interno protetto ulteriormente da cuscinetti di polistirolo e da una cuffia di materiale sintetico tessuto a “nido d’ape”. Oggi si trova in commercio in diverse versioni, con alimentatore a partire da 400W oppure senza alimentazione. L’Armor Jr. presenta due lunghe placche di alluminio che realizzano una originale armatura per il pannello anteriore. All’occorrenza le ante vanno aperte, per far scorrere il cassetto del lettore di DVD oppure per raggiungere meglio i pulsanti dei dispositivi di controllo (accensione, spegnimento, raffreddamento, ecc.). La finestra di plastica del fianco sinistro non ha una linea semplice, si distinguono quattro curve che lasciano comunque intravedere la scheda madre e buona parte dei cestelli per gli apparecchi da tre e cinque pollici. Sul lato posteriore in alto c’è spazio per il blocco di alimentazione, al centro si vedono gli sfiatatoi esagonali della generosa ventola di raffreddamento da dodici centimentri, in basso le sette aperture per l’upgrade hanno un efficacie sistema di bloccaggio delle schede. Il cabinet è conforme allo standard ATX, con la possibilità di cambiarlo a BTX mediante un kit supplementare. All’interno i cavi di vari colori del bottone d’accensione, di reset e delle spie luminose sono intrecciati fra loro; invece i fili per le prese (nascoste da uno sportellino sul lato superiore) USB, Firewire e audio sono isolati da una guaina nera. Dietro al pannello anteriore è stata installata, all’altezza del cesto più piccolo, un’altra ventola da dodici centimetri con led di colore blu incorporato. La ventola fa un effetto suggestivo a computer accceso, ma di nascosto esegue anche un lavoro molto utile: convoglia un flusso d’aria fresca ai dischi rigidi e alle restanti componenti. Prezzo, iva inclusa: 115,20

CPU e memoria

CPU e memoria sono rispettivamente i modelli AMD – Athlon 64 X2 e Kingston – KVR800D2N5. Il processore Amd Athlon 64 X2 4800+ per socket AM2 ha un doppio core con frequenza operativa di 2.5 Ghz, consuma 65 Watt e dispone di una cache L1 da 128Kb e L2 da 512Kb per ciascuna cpu. Ad agosto costava 53€; non è più in commercio.
La memoria Kingston KVN800D2N5 ha 8 chip per lato da 64MB ciascuno, è di tipo DDR2 da 800MHz e appartiene alla categoria ValueRAM per sistemi desktop generici; non presenta un dissipatore passivo. Avendo acquistato due moduli, ho speso 44€, ma oggi si trovano a circa 13,50€ cadauno. Ho ritenuto opportuno installare 2GB, per ottenere stabilità e fluidità di gioco soprattutto in Savage 2. Il test con ramspeed ha rivelato una velocità di trasferimento pari a 2262 MB che non sembra eccezionale, ma resta pur sempre nella norma.

Assemblaggio e alimentatore

Per il montaggio del PC ho utilizzato soltanto il cacciavite e la forbice, impiegando circa un’ora. L’alimentatore iTek fornisce 500 Watt di potenza, la minima per un sistema SLI; però io ho acquistato una sola scheda video, di per sé già abbastanza potente: la nVidia GeForce 8600 GTS di XFX. Questo modello GeForce 8, avendo una GPU con frequenza di 675MHz e 256MB di memoriea DDR3 da 1008MHz, supera notevolmente la GeForce 7300 Go del portatile nei giochi eseguiti ad alte risoluzioni (anche dell’ordine di 1680×1024 pixels).

 

L’importante è giocare

Avevo tutte le componenti pronte per il montaggio di un PC particolarmente bello e nutrivo fiducia in AMD perché stava dimostrando buoni intenti nel migliorare il driver per Linux delle schede ATI. Come molti di voi, credo, mi ero fatto questa opinione leggendo gli articoli di Phoronix. Così acquistai con convinzione una Radeon nel novembre del 2007. Ma già alcuni mesi dopo sospendevo l’impresa, infatti stavo dirigendo le mie forze per la realizzazione di un sistema completamente differente, composto da altri modelli e marche. Lo scorso luglio mi decisi finalmente, dopo un anno di tentennamenti, a prendere in mano cacciavite, viti e vademecum del perfetto ‘assemblatore’ per terminare il vecchio progetto: l’obiettivo era aggiornare un sistema basato su una mobo AGP (la Lan Party UT 250 di DFI) con componenti economiche (200€ ‘chiavi in mano’) e abbastanza potenti da permettermi di giocare con i giochi di ultima generazione (almeno Quake Wars). Avevo assegnato al computer il nome Caviator; riconosco di aver fatto una scelta non tanto fantasiosa, perché deriva semplicemente da Caviar che è il modello di disco rigido della ditta Western Digital ordinato assieme alla memoria DDR Kingston da 1GB, il cabinet Vostok di Enermax e il lettore di CDROM LG GH20NS10. Adoro dare un nome ai computer ‘assemblati’ che uso frequentemente per lavoro o per svago. In questo modo posso facilmente indentificarli con categorie specifiche quando devo parlarne su questo blog. Stavo scrivendo quindi una serie di articoli, cominciata nel giugno 2007 e che comprendeva già le seguenti parti

  1. L’idea originale
  2. Obiettivo 200€ per giocare
  3. Sapphire ATI 2600 XT. Scheda grafica di fascia media
Lan Party UT DFI 250, nF4 Ultra-D
Lan Party UT DFI 250, nF4 Ultra-D

E poi dovevo scrivere questo articolo e tessere le lodi di AMD e ATI. Invece la mia opinione personale va oggi nella direzione opposta: l’avevo montato a tempo di record, in mezzora il cabinet era già chiuso e davo corrente all’alimentatore per installare Ubuntu da CD. Non voglio dire che ci sia qualcosa che non va con il desktop di Ubuntu o l’esecuzione degli effetti grafici di Compiz Fusion. Al contrario va tutto bene. Le vicissitudini sono cominciate online, quando era il momento di fare sul serio con i giochi. Appena mi sono collegato a un server remoto di Quake Wars il computer ha fatto le bizze. Ho provato e riprovato per diverse volte, anche con Doom e Unreal Tournament 2004 — Non si sa mai, poteva essere antipatica la tecnologia Megatexture — ma ho di nuovo ottenuto lo stesso esito fatale: macchina inchiodata e inutilizzabile. Pensavo allora a un problema di surriscaldamento, eppure il Cabinet Vostok disponeva di una ventola supplementare di dimensioni generose (per consuetudine non pratico ocing sui miei computer). Se erano le memorie difettose, perché la più vecchia GeForce 5600 FX Ultra mi dava soddisfacenti risultati? No, la causa era software. Ho scoperto in seguito che i possessori di modelli HD 2400 e 2600 per bus AGP potevano godere dei benefici del driver unificato Catalyst a partire dalla versione 8.6, rilasciata lo scorso 18 giugno. Il modesto ’supporto’ per una antica tecnologia (AGP) non era abbastanza per un tipo esigente come me, avido di FPS, con la brama della perfetta stabilità del sistema. Così deluso potevo solo tornare ai patri lidi della nVidia con una GeForce 8600 GTS di marca XFX.

Il PC radiografato con Phoronix Test Suite. Michael’s Laptop vs Ferocious

Mentre leggo la notizia di Phoronix, già fantastico sulle prestazioni del portatile che acquisterò alla fine di questo mese (devo scegliere fra MSI GX 700 o Toshiba X200). Non aggiungerò oggi nulla a quanto è stato già scritto altrove, a parte naturalmente parlarvi di alcune prove effettuate per conto mio con il nuovo Phoronix Test Suite (PTS) sull’attuale computer. Ammetto che l’argomento benchmark è piuttosto ostico, ma i software di questo tipo vengono in aiuto ai principianti perché permettono facilmente di svolgere comparazioni, confronti con altri dati statistici pubblicati sul web oppure semplicemente esaminare a fondo il PC alla ricerca dei punti deboli che compromettono il rendimento complessivo (valore importante per giocare bene). PTS è dunque una collezione di programmi per il Benchmark sotto Linux; non solo Phoronix li usa per i suoi test “interni”, ciò basterebbe come garanzia sui risultati, ma sono stati sviluppati seguendo anche i suggerimenti dei venditori di componenti hardware. Non voglio sminuire i progetti analoghi, anzi colgo l’occasione per ringraziare Encelo per avermi segnalato GL O.B.S. Mi occuperò anche del suo GL Open Benchmark Suite così come di SPECviewperf, questione di giorni perché devo prima conoscere a fondo una cosa per poterla trattare in maniera obiettiva e completa. Ma il mio contributo resterà pur sempre modesto, dovendomi limitare a riportare link ed opinioni da un blog così poco conosciuto. Mi dispiace soprattutto per gli addetti ai lavori, che non riceveranno una eco pari allo sforzo da loro compiuto.

Inizialmente ho avuto dei problemi di installazione ed esecuzione. La procedura non era chiara, speravo di trovare istruzioni precise nella directory per lanciarmi subito con i benchmark, invece conteneva solo informazioni essenziali: un README con i collegamenti al sito web, un TODO con la lista delle cose ancora da fare: scrivere la documentazione per esempio! Poi mi ha sorpreso il linguaggio di scripting php usato per l’esecuzione batch dei comandi. PHP rappresenta un emblema della portabilità dei programmi fra sistemi operativi, ma questa portabilità è veramente necessaria per i nostri scopi? Sì, se il confronto si deve fare fra Linux con Windows, Linux e FreeBSD o Solaris, ecc. Però siamo abituati a eseguire php sui server per creare e serverire pagine web anziché da linea di comando per mandare in esecuzione le applicazioni. L’impatto del software di benchmark sulla memoria di sistema e sull’elaborazione è cruciale. Forse anche sotto questo punto di vista l’interprete php si rivela una scelta azzeccata per non falsare i risultati, avendo poche dipendenze e consumando risorse minime. Gli intoppi che accennavo in precedenza, non si sarebbero manifestati su una distribuzione Linux, io invece usavo Linux From Scratch e tra una dipendenza e l’altra (PHP 5, Php-GTK) non sono riuscito a venirne a capo immediatamente, ma solo dopo aver chiesto lumi a Michael sul forum.

PTS Global raccoglie i risultati dei test. Tramite identificatori si possono effettuare confronti con i benchmark di altri utenti e pubblicarli sul sito, nella sezione creata apposta. Una caratteristica utile e interessante che potrebbe essere migliorata con l’aggiunta di stili personali per la grafica (con tag per un facile inserimento degli istogrammi nei blog o nei siti web). Il sistema sembra pure predisposto per una “autenticazione” degli utenti, previa registrazione. Per il momento però l’upload dei dati avviene in maniera anonima e la ricerca tramite le ID o per categoria di suite. Manca il riassunto finale dei dati con una interpretazione, almeno delle note per spiegare quando i valori sono da considerarsi positivi e quando negativi. Avendo voluto fare una analisi delle prestazioni con Ramspeed fra il mio portatile e quello di Michael Larabel, principale autore di questo software, mi sono procurato dalla lista la ID che corrispondeva al benchmark da lui svolto e l’ho passata come argomento al programma phoronix-test-suite. Tutto il necessario per la prova comparativa veniva scaricato all’occorrenza da Internet. PTS Global per Ramspeed test

Micheal’s Laptop:
Processor: Intel Core2 Duo CPU T9300 @ 2.50GHz (Total Cores: 2), Motherboard Chipset: Intel Mobile PM965/GM965/GL960, System Memory: 1982MB, Graphics: nVidia Quadro NVS 140M, Screen Resolution: 1680×1050. OS: Ubuntu 8.04, Kernel: 2.6.24-14-generic (x86_64), X.Org Server: 1.4.0.90, Compiler: GCC 4.2.3.

Ferocious’ Laptop

Processor: AMD Turion(tm) 64 X2 Mobile Technology TL-50 (Total Cores: 2) @ 1.60GHz, Motherboard Chipset: Advanced Micro Devices, System Memory: 1009MB, Graphics: nVidia GeForce Go 7200, Screen Resolution: 1680×1050. OS: Linux From Scratch, Kernel: 2.6.23.1 (i686), X.Org Server: 7.2.0, Compiler: GCC

Ho effettuato un’ultima prova comparativa fra il Turion X2 del mio Asus e il processore Intel Pentium M di Michael, i risultati sono pubblicati al seguente indirizzo: root-21922-23591-12366