Archive for the ‘ET: Quake Wars’ Category

Linux e il 3D Benchmarking

Monday, February 23rd, 2009

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

Quake Wars demo v2.0
– Contiene la mappa Valley
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

Ho messo a confronto il PC Frag Storm con il portatile Asus A6Tc. I risultati sono raccolti in diversi istogrammi. Tra i due computer c’è una marcata differenza di prestazioni alle alte risoluzioni: da 1280×1024 pixels in su, per intenderci. Lo scarto si riduce ad appena venti FPS usando la configurazione di 800×600 pixels con bassa qualità della immagine. Da questa analisi, mi aspettavo un rendimento maggiore dal PC Fragstorm perché montava delle componenti più moderne e potenti. Ma non posso nemmeno lamentarmi ora che raggiungo le risoluzioni elevate mantenendo un frame rate decente: il minimo di quaranta FPS è pur sempre garantito a 1680×1050 pixels, a questo livello ricordo che la resa del portatile era pressoché nulla. Non ho preso in considerazione l’overclocking, col quale avrei potuto guadagnare prestazioni leggermente superiori, credo.

1687

PC Fragstorm

  • CPU Amd Athlon 64 X2, 2.5GHz
  • 2 GB DDR2, 800MHz
  • GeForce 8600 GTS, GPU Clock=675Mhz, Memoria DDR3 da 1008Mhz

Asus A6Tc

  • CPU Amd Turion 64 X2, 1.60Ghz
  • 1 GB DDR2, 533Mhz
  • GeForce 7300 Go, GPU Clock=325MHz

Sapphire ATI 2600 XT. Scheda grafica di fascia media

Tuesday, December 4th, 2007

Ho ritirato la scheda video ieri dal negozio. Sono però ancora impaziente di avere tutte le componenti disponibili, perché soltanto così potrò completare il montaggio del PC e verificare, sulla base delle scelte fatte il mese scorso, se Quake Wars “girerà” con un buon FPS. Oggi mi limiterò dunque a presentare con alcuni scatti fotografici la componente video, ovvero una ATI HD 2600 XT di marca Sapphire per bus AGP 8x, costata 101,50€.
Ciò che risalta di più sulla confezione è la dicitura “256MB GDDR3 Memory” e poi, ovviamente, al centro il personaggio femminile 3D (riprodotto anche sul corpo del dissipatore della GPU) che dovrebbe incarnare il vero spirito “combattivo” della scheda video con quei videogame tosti da elaborare. La scatola ha dimensioni ridotte, ma comunque nell’insieme è assai robusta; essa contiene il cavetto per il collegamento alla TV e quello per l’alimentazione ausiliaria, la guida rapida all’installazione, un adattatore DVI-VGA, un adattatore RCA, il CD con il software per Windows XP e Vista, infine la Sapphire HD 2600 XT ben protetta da una busta antistatica e assicurata saldamente alla scatola da “linguette” di cartone.

Le caratteristiche tecniche principali, riportate dal sito di Sapphire Italia, sono le seguenti:

  • GPU: ATI Radeon RV630 XT
  • Bus: AGP
  • Memoria: 256MB
  • Tipo di memoria: GDDR3 128-Bit
  • Freq. memoria: 1400Mhz
  • Engine clock: 800Mhz
  • Ramdac: 400Mhz
  • Tecnologie Integrate: OpenGL 2.0

Naturalmente, per ora posso solamente sperare di aver fatto la scelta giusta!

Quake Wars 1.2 R5, nVidia GeForce 7300 Go e Linux From Scratch 6.3. Nuovo bench

Monday, November 19th, 2007

Propongo in questo articolo i risultati del benchmark effettuato tra ieri e oggi sul mio portatile con il driver beta 169.04 per schede nVidia e il gioco Quake Wars.

NVIDIA X Server Settings Non posso dire con assoluta certezza se questa versione incrementa le prestazioni di Quake Wars, perché i dati relativi al timeNetdemo che ho in mano non superano nettamente quelli rilevati all’inizio di novembre. C’è stato un progresso, ecco.
Il problema di stabilità riscontrato con i driver della serie 100.XX durante l’ultimo test con LFS 6.3 non si è piu` ripresentato, per esempio. Non potendo usare il driver 1.0-9755 a causa del kernel installato, a questo punto il “169.04″ è, fra tutti quelli disponibili, il driver che devo preferire per giocare. Tra l’altro è stata aggiunta, nel pannello di controllo della scheda video, una interfaccia alla tecnologia PowerMizer per monitorare lo stato della GPU (vedasi immagine a lato). PowerMizer è una peculiarità delle GeForce per mobile computing (Go 7300, 8600M). Essa gestisce efficientemente la potenza richiesta dalla GPU nei vari task.

Ma nemmeno passando da Quake Wars 1.2-11401 a 1.2-11663 con la release 5 (R5) degli eseguibili del gioco, il frame rate medio è migliorato. E’ proprio giunto il momento di esaminare un sistema hardware alternativo.

Bench con Quake Wars a 640x480 e LFS 6.3
Anche stavolta ho considerato per la prova tre livelli di dettaglio, corrispondenti alle denominazioni: “low quality”, “medium quality”, “high quality”; essi si determinano opportunamente variando i parametri principali della grafica, nella scheda delle impostazioni video del gioco. Ho usato la mappa Salvage, registrata tempo fa durante una partita online, per il timeNetDemo.

GF7300go-bench800x600

Sta Quake Wars sfruttando pienamente le capacità multithreading della CPU Dual Core montata sul portatile A6Tc? Probabilmente no. La variabile r_useThreadedRenderer ha internamente valore 0 ed è impossibile cambiarlo. A proposito di questo, spero di raccogliere maggiori informazioni per il prossimo articolo sul tweaking.
Alla risoluzione di 1280×1024 pixels e dettagli minimi ho rilevato 24.1 FPS. Qui mi fermo, perché nemmenno con i dettagli alti a 800×600 ho potuto far girare il timeNetDemo, purtroppo.