Newsgroup: it.comp.os.dibattiti
Titolo: G4 Issues

Da MacOS Rumors
http://macosrumors.com/?view=macos
OS X's Altivec Acceleration described as "dramatic" 
Reliable sources close to the Darwin project and privvy to many of the 
technical
details of recent builds of OS X have reported that with Beta now 
closing in on
release, Altivec/Velocity Engine optimization has begun in earnest.
Apparently, these early G4 optimizations have accelerated the 
responsiveness of
the Aqua interface by a factor of five to ten over G3s at indentical 
clock rates, and
system boot-up times by 25-30%. Application launches are approximately 
twice
as fast (with apps needing large memory allocations benefitting the 
most); sources
at a major graphics application maker who shall remain nameless report 
that their
popular application boots in 1/3 the time, and overall performance is 
improved by
an average of 30% over their already Altivec-accelerated OS9 version.
There are reportedly still several major bugs related to Altivec and
Altivec-enhanced memory management in OS X as it stands on Apple's 
internal
development servers, but if these numbers bear out in the Beta 
release, momentum
for Consumer may begin to pick up earlier and with more force than 
even the
most optimistic of us had hoped.
--
Mi chiedo, cos'e' un Altivec-enhanced memory management?
Allora, o c'e' qualcosa che non va in questa news, o ci sono 
caratteristiche di Altivec che non sono ben comprese. Bene, la 
documentazione piu' interessante l'ho trovata qui':
http://developer.apple.com/hardware/altivec/instruction_crossref.html
Da una analisi superficiale del set istruzioni, ho l'impressione che 
altivec possa essere utilizzato non solo per ottimizzare calcoli 
matematici. Ma questa e' solo un'impressione. Magari dedichero' del 
tempo a fare dei test e poter verificare le mie impressioni.
Per ora posso solo citare uno stupido test comparativo che mi sono 
divertito a fare nei giorni scorsi. Dieci milioni di rotazioni di 
vettori bidimensionali con coordinate espresse in double (due seni, 
due coseni, quattro prodotti, due somme, un incremento ed un confronto 
ripetuti per dieci milioni di volte). Il risultato e' stato il 
seguente:
Dual PIII 500 - 256 MB Ram - Scheda madre Asustec P2B Bus 100 Mhz -  
gcc (ver?) su Linux RH6.1, compilando con l'opzione di ottimizzazione 
\O3
	circa 7.9 secondi
Stessa macchina su Visual C++ sotto Windows 98 (windows lo uso per 
gicare)
	circa 9.2 secondi (non ricordo bene, ma sicuramente piu' di nove 
secondi)
G4 400 - 128 MB Ram - Codewarrior Pro 4 - Tutte le ottimizzazioni del 
compilatore abilitate, altivec esclusa
	circa 5.5 secondi
Se voltete vi mando il sorgente ed i risultati dettagliati.
Ciao

Se voltete vi mando il sorgente ed i risultati dettagliati.
Manda manda.
-- 
Lorenzo
"Given enough eyeballs, all bugs are shallow", Linus'Law
(address rot13 encoded)

 ...e Altivec conferma la sua potenza.
Hai letto che altivec è stato escluso dall'ottimizzazione?
Saluti,
Fabio Alemagna

         circa 5.5 secondi
Perche' non hai ottimizzato altivec? Vediamo che cosa e' capace di fare
:-)
Ciao ... Dino

 tempo a fare dei test e poter verificare le mie impressioni.
E' una buona idea ;-)
________________________________________________________________________
What is AltiVec?
AltiVec is a Single Instruction Multiple Data (SIMD) machine and an
extension to the current PowerPC instruction set, designed to improve
the performance of any application that can exploit data parallelism.
Examples are 3-D graphics (Electric Image, games), image processing
(Photoshop filters), video processing (MPEG, MPEG2), theater-quality
audio (Dolby AC-3, DTS) and software based cell phones (perhaps for a
PowerBook?).
Why do we need AltiVec?
AltiVec offers greater flexibility and opportunities for better
performance in video, audio and communications tasks which are
increasingly important for applications. AltiVec provides a cornerstone
for robust and powerful multimedia capabilities that significantly
extend the PowerPC instruction set.
What is the expected improvement? 
Here is a small AltiVec performance table, which has been compiled from
newly created AltiVec routines and existing PowerPC code. The numbers
refer to improvements over current optimized PowerPC C programs (in
times) for a few selected functions in key technologies.
Technology                 Function                          Speed up
Audio           Inverse FFT in floating-point                     3.6
Video           Forward DCT in floating-point                     3.6
Video           Forward DCT in 16-bit integer                    11.4
Graphics        Matrix-Matrix Multiplication in floating-point    6.2
Small Kernels   Sorting in 8-bit integer                           14
Linear Systems  Gaussian Elimination in floating-point           1.43
A more comprehensive performance table is available
[
http://developer.apple.com/hardware/altivec/performance_table.html
].
How do Altivec Features Compare with MMX & SSE?
AltiVec:
a. 32 separate registers;
b. 128-bits per register;
c. more than 160 new instructions;
d. no interference with scalar FP registers;
e. no context or mode switching.
MMX & SSE: 
a. 8 MMX registers shared with FPU, 8 dedicated SSE registers;
b. 64-bits per integer register, 128-bits per floating-point register;
c. 127 new instructions;
d. MMX stalls the FP registers;
e. context switching required for MMX.
How does Altivec Performance Compare with MMX & SSE?
This table compares AltiVec to MMX/SSE on several DSP calculations:
Function                             AltiVec    MMX&SSE        Units 
1024 dim. square (bsqr1)                0.5       1.3           ccpe
1024 dim. multiply (bMpy2)             0.75       1.33          ccpe
1024 dim. dot product (DotProd)         0.5       2.21       ccpm-aa
256 point complex FFT (FFT)             < 4       6.94       ccpf-pe
32 tap x 1024 dim. FIR filter (bfir)   0.33       0.95       ccpm-aa
32 tap x 1024 convolution (conv)         11         85         ccpop
Why should a developer care about AltiVec? 
AltiVec can provide a substantial boost in performance and capability
for an application that makes signficant use of 3D graphics, image
processing, audio compression or other graphics-intense functions. Other
features of a program may be speeded up by recoding to take advantage of
the parallelism and additional operations of AltiVec. Apple is adding
AltiVec capabilities to QuickDraw and QuickTime. An application that
calls them today will see improvements from AltiVec without any changes.
AltiVec also offers the potential to create new applications that take
advantage of its features and power. To take advantage of AltiVec, an
application must be reprogrammed or at least recompiled.
Steps to get started with AltiVec: 
These HTML pages and the accompanying materials provide an introduction
to AltiVec. Developers can gain familiarity with AltiVec by downloading
the examples and tools.
Why is this information provided? 
This page, along with its tool download area
[
http://developer.apple.com/hardware/altivec/tools.html
], has been
created to encourage and facilitate the development of AltiVec code
benefiting Apple technologies.
Readers can view a more comprehensive AltiVec presentation
[
ftp://ftp.apple.com/developer/Development_Kits/altivec/presentation.hqx
]. For best results, put the fonts that are downloaded with the
presentation into your fonts folder in the system folder.
http://developer.apple.com/hardware/altivec/summary.html
________________________________________________________________________
PPG

 velocemente su win98. Ben strano...
guarda che un processo non può stare a metà tra un processore ed un
altro...
Ciao,
Fabio Alemagna


Certo .. se e' un solo thread. Non sono un programmatore ma mi pare
possibile effettuare quel calcolo ripartendolo tra le cpu.
Ciao ... Dino


Se il tuo lavoro è strutturato in modo da usare i threads, e da
*sfruttarne* i vantaggi. Il suo non lo fa, quindi un processore in più
od in meno non fa differenza.
Saluti,
Fabio Alemagna

Hai letto che altivec è stato escluso dall'ottimizzazione?
s/G4/Altivec


 s/G4/Altivec
Ma fai sul serio? Scusa, secondo te il codice non ottimizzato per
altivec lo sfrutta? Mah...
Saluti,
Fabio Alemagna


Errata:
s/Altivec/G4
In ogni caso...
Dual PIII 500	7.9s
G4 400		5.5s
..e il PowerPC 7400 AKA G4 puntualmente massacra il doppio PIII.
A occhio direi che con l'ottimizzazione per Altivec possa scendere
sotto il secondo o giu` di li`.


 sotto il secondo o giu` di li`.
Bada che sono d'accordo con te che il PPC "massacra" :) solo che in
questo caso massacra pure senza altivec...
Saluti,
Fabio Alemagna

 sotto il secondo o giu` di li`.
Perche' dual se il tuo soft sfrutta un processore solo?
Oltretutto si tratta di p3 vecchi e non dei nuovi coppermine. Diciamo
che hai fatto un test con una configurazione che era il top un anno o
poco piu' fa :-)
Ciao ... Dino

 poco piu' fa :-)
Fatto sta che pur se con una frequenza del 20% in meno rispetto al PIII
il G4 è più veloce del 30%, e senza sfruttare l'altivec.
Saluti,
Fabio Alemagna


Si sapeva gia' questo. E' con i p3 nuovi e i k7 che cominciano i
problemi :-)
E pensare che Neno accusava me di avere i MHz come riferimento :-)
Ciao ... DIno



 :-)
Perche' mi serve la R5 del CodeWarrior per avere un'ottimizzazione 
altivec decente col solo compilatore (sempre che i risultati siano 
significativi). Altrimenti devo usare le librerie specifiche. Devo 
prima imparare ad usarle. Non ci vuole tanto, ma lo devo fare. Pensavo 
di provare l'efficienza di un algoritmo di ordinamento scritto 
sfruttando le istruzioni di confronto e di riordino.
ciao

 od in meno non fa differenza.
No, e' un tipo di calcolo che e' possibile parallelizzare. Non a caso 
ho comprato un dual. Ma il problema e' diverso. Ho fatto un confronto 
tra singoli processori e non tra sistemi.
Ciao

 Oltretutto si tratta di p3 vecchi e non dei nuovi coppermine.
Bene, allora possiamo tentare una stima. Qual'e' a parita' di clock 
l'incremento di prestazioni di un coppermine rispetto ad un vecchio 
PIII?
Ciao

 


 tra singoli processori e non tra sistemi.
Non ho detto che non č possibile, ho detto che non l'hai fatto.
Saluti,
Fabio Alemagna

 PIII?
Non e' facile stimarlo. La cache e' sincrona (sui vecchi e' a 1/2) ma
piu' piccola (256k invece di 512k) e con un algoritmo piu' efficiente.
Cosa comporti nelle applicazioni reali e' un discorso, in test di questo
tipo e' sicuramente un'altro :-)
Non c'e' altro modo di saperlo se non provando direttamente.
Ciao ... Dino

 Grazie!
A sto punto se non sono troppo lunghi postali qui cosi chi vuole fa
qualche prova.
Ciao ... Dino

 Non c'e' altro modo di saperlo se non provando direttamente.
In ogni caso non credo che possano raddoppiare...
Volevi dei test sul G4? eccoli...
Ovviamente non ti vanno bene (che novità...) perché il Pentium "perde".
Ciao ciao

 qualche prova.
Banalmente
--
#include <stdio.h>
#include <math.h>
#include <time.h>
#define ANGLE 0.68
int main ( int argc , char* argv [] )
{
	long i;
	double x , y , x1 , y1;
	char* buf [ 100 ];
	clock_t start_time;
	clock_t end_time;
	/* non e' proprio necessario, ma in questo modo ho tutto il tempo di 
cambiare la priorita' del processo */
	printf ( ">" );
	scanf ( "%s" , buf );
	x = 32.0;
	y = 68.0;
	start_time = clock ();
	for ( i = 0 ; i < 10000000 ; i++ )
	{
		x1 = x * cos ( ANGLE ) - y * sin ( ANGLE );
		y1 = y * sin ( ANGLE ) + y * cos ( ANGLE );
		x = x1;
		y = y1;
	}
	end_time = clock ();
	printf ( "Time enlapsed: %d / %d = %f\n" , end_time - start_time ,
		CLOCKS_PER_SEC , ( float ) ( end_time - start_time ) / 
CLOCKS_PER_SEC );
	return 0;
}

         printf ( "Time enlapsed: %d / %d = %f\n" , end_time - start_time ,
                          ^
                          ^
questa "n" è di troppo :)
Ciao,
Fabio Alemagna

 questa "n" è di troppo :)
Hai trovato un bug!
:)

Banalmente
Su Intel, ottengo 6.25 senza ottimizzazioni, 3.12 con ottimizzazione
peephole, 0.03 con ottimizzazione blanket ;-)
Leonardo P233MMX
--
And where the black and corkscrew towers climb
lost and athirst the ragged pack abides,
old as the aeons, trapped in tombs of time,
sailing the tortuous temporal tides...

 peephole, 0.03 con ottimizzazione blanket ;-)
Sul G4 con lcars ho attivato l'ottimizzazione -E ottenendo -1.23. Non 
male, vero?
ciao

 Ovviamente non ti vanno bene (che novità...) perché il Pentium "perde".
hahaha vabbe' va... 
Ciao ... DIno

 Banalmente
Con un p225MMX e 48mb di ram sotto linux ho 15.22. E' l'installazione
standard di rh 6.2 senza ricompilazione del kernel perche' non ho lo
spazio per i sorgenti :-)
Appena posso provo su un p3
Ciao ... Dino

 Con un p225MMX e 48mb di ram sotto linux ho 15.22. E' l'installazione
mi spiegate com'č che sul mio PII@350 fa 11.7 secondi?? gcc 2.95.2 -O6
-fomit-frame-pointer-mpentiumpro: piů di cosě...
Saluti,
Fabio Alemagna


E che ne so. Il mio gcc e' :
gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
e gira su un p200 oc a 225 con 48mb di ram su vecchi moduli simm con i
timings della memoria alzati al massimo (altrimenti esplode tutto :-) )
Cmq potrebbe essere ci sia qualche processo attivo che impegna cpu.
Ciao ... Dino

 Cmq potrebbe essere ci sia qualche processo attivo che impegna cpu.
nada, niente,  nulla.
ed i timings sono al minimo...
Bho...
Saluti,
Fabio Alemagna

 hahaha vabbe' va...
La prendi con filosofia...?
Ciao ciao

 Ciao ... Dino
PIII 450, gcc version 2.95.2 19990906 , debian 2.2, 9.2 sec... che il
gcc non sia il massimo?


Da altri posts ho visto che nei casi ottimali è stato utilizzato
l'egcs-1.1.2, noto per numerosissimi bugs, uno dei quali è quello di
emettere codice che riutilizza registri già impegnati per altri scopi.
Per questo motivo un programma che sto facendo, solo in certe
condizioni, *saltava* letterelmente parti di codice, sembrando più
veloce, in realtà non funzionava :) Passato al gcc 2.95.2 ho ottenuto
codice stabile e molto più performante (nell'ordine del 30%).
Sarebbe bene che Marco d'Itri ci dicesse lui che compilatore ha
utilizzato... 
Del resto i tuoi risultati sono in linea con i miei e quelli di
fabricius, considerando la differenza di frequenza dei processori.
Saluti,
Fabio Alemagna

 Ciao
Fatto dei test sotto OSX DP4 con un g3 400 non tanto bene, siamo sui 10
secondi. Se si trovassero in giro le famose libmoto (librerie math
ottimizzate per ppc) per linux potrei fare di meglio, secondo me circa
30/40% di meno, ma sul sito della motorola non le trovo piu'. Qualcuno
di voi ce le ha?
Saluti
Cristiano

 codice stabile e molto più performante (nell'ordine del 30%).
Quindi si dovrebbero ottenere valori inferiori? O superiori?
Bha in ogni caso sul mio p3-450@630 ho ottenuto 6.31 con rh6.2 e le
egcs-1.1.2 (che poi non ne ho trovate di piu' recenti)
Per scaricare la 2.95 occorrono pure le glibc2.2 che non ho.
Quindi non se ne fa nulla :-)
Come mai non ci sono opzioni per l'ottimizzazione p3? o sono io che non
le ho trovate?
Ciao ... Dino



 di voi ce le ha?
Io ho provato quelle per MacOS e sono rimasto deluso. Non ricordo di 
quanto, ma i risultati erano peggiori.
ciao

provate sotto linuxPPC, con le libmoto mi da 6.79 con X acceso.
Naturalmente essendo librerie linux non posso usarle sotto OSX che e' un
bsd. Pero' ci ho provato!
Ho usato -O3 -mcpu=750 , altro che consigli?
Per quanto riguarda le libmoto, faranno anche + schifo rispetto a le
librerie di CW, ma rispetto a quelle di gcc skizzano...
da irc mi consigliano= -O9 e --enable-haifa
mo vada a casa e provo
Cristiano


male, vero?
Malissimo invece: vuol dire che clock() non funziona. Il minimo che
si puo' ottenere e' zero, mai un numero negativo.
Leonardo
Microsoft Outlook: R: Re: R: Re: R: Re: R: cosa vuoi replicare oggi?

 si puo' ottenere e' zero, mai un numero negativo.
E secondo me è questo il problema anche per i precedenti risultati tanto
buoni... provate ad utilizzare la gettimeofday(2).
Ciao,
Fabio Alemagna


Cazzo ma qui piu' che le differenze tra le architetture stanno venendo
fuori differenze abissali tra compilatori, librerie e os.
Ciao ... Dino

Qualcosa non va: 0.03 =E8 un risultato *impossibile*.
Perche'? <sorriso innocente> E' un float validissimo.
Leonardo


 Perche'? <sorriso innocente> E' un float validissimo.
Oh, questo è sicuro :) Su un supercomputer...
Saluti,
Fabio Alemagna

 >un'attributo gestibile da un DB.
Ancora una volta ti sfugge completamente il concetto di base di dati
relazionale assieme ai concetti
che governano questo sistema di rappresentazione di fatti reali.
Hint: secondo te il numero di telefono cosa è? Ed un numero di telefono cosa
ha?
Come diceva il vecchio Chris nella sua vigna: "Descrivi le cose e troverai
la risposta! Sempre."
Saluti.


http://www.mapinfo.com/index.html
Mi rendo conto che avrei dovuto specificare "da se'", cioe' "nonostante
sia in mano ad un incapace".
Fate quindi conto che abbia scritto:
"Un sistema che, DA SE', deduca l'esistenza di entita' geografiche..."
(dove per "sistema" si sottintende "sistema database").


 (dove per "sistema" si sottintende "sistema database").
Ma per "dedurre da sè" deve basare le proprie deduzioni su altre
conoscenze, come del resto fa un essere umano. Ad esempio se io non ho
mai sentito parlare di Pippo e Topolino come faccio a sapere che si
trovano nella stessa città? In qualche modo queste informazioni devo
averle prima e incrociando i vecchi dati con quelli nuovi giungo a delle
conclusioni.
Saluti,
Fabio Alemagna

 Il problema e' un altro.
In tal caso, puo' essere utile l'impiego di tecniche afferenti all'AI:
________________________________________________________________________
BKD - Bayesan Knowledge Discoverer tool
Marco Ramoni, Paola Sebastiani (Department of Statistics)
BKD is a knowledge discovery tool which can extract reusable knowledge
from databases, using sound and accountable statistical methods, even
when data is missing or incomplete.
http://kmi.open.ac.uk/projects/current.html
________________________________________________________________________
MIT CBCL and AI LAB
Supervised Learning from Unlabeled Data
Tom Mitchell
WhizBang! and Carnegie Mellon University
Abstract  
Most models of supervised learning consider only labeled training
examples, and ignore the potential role of unlabeled data. This talk
considers the question "when is it possible to use unlabeled data to
increase accuracy in supervised learning?" This question was initially
motivated by our research on algorithms for learning to classify web
pages (e.g., as student home pages, faculty pages, etc.). The question
of how to use unlabeled data is especially interesting for web page
classification, given the hundreds of millions of easily accessible web
pages. 
We present an algorithm and experimental results demonstrating that
unlabeled data can significantly improve accuracy when learning to
automatically classify web pages. We then identify a precise problem
structure that is sufficient to assure unlabeled data will improve
learning accuracy. Interestingly, the essential problem structure is
found in many natural learning problems faced by humans, such as
learning a semantic lexicon over noun phrases in natural language, and
learning to recognize objects from multiple sensor inputs. These results
suggest that our understanding of human and animal learning might also
be improved by considering the potential role of unlabeled data in
learning.
http://www.ai.mit.edu/events/brainsMachines/abstracts/S2000/mitchell
________________________________________________________________________
PPG

questo che significa allora? Che il mio PII@350 è taroccato? :)
Non saprei, di sicuro ha qualche problema *con quel specifico programma*
o magari  e` l'ambiente  a non  essere troppo  ottimizzato (bisognerebbe
vedere quanta  influenza ha ottimizzare  altre cose, tipo kernel  e/o le
glibc e/o alte cose che al momento non mi vengono in mente...).
-- 
The Hitman - 
http://members.xoom.it/hitman
e-posta : sonicblast (at) 
tiscalinet.it
 
* Un utente normale di PC, quindi tutt'altro *
* che un esperto.                            *

 Sono state introdotte (mi pare) solo con gcc > 2.95.1
E che opzione? Magari quando ho piu' tempo faccio una prova.
Ciao ... Dino




Infatti. Naturalmente E' possibile gestire un sistema DB cosi'. Pero' in
questo caso, non e' il sistema migliore: e' solo il secondo meno banale,
appena meglio del brute force. E richiede informazioni geografiche, o al
minimo il _CONCETTO_ di distribuzione geografica.
Questo perche' ci ho pensato solo un quarto d'ora :-) e mi sono lasciato
abbagliare dal concetto di "prefisso". A ripensarci, che idiozia! Andava
bene se i database avessero avuto una correlazione geografica (che so, i
records del secondo erano tutti su Siena o Firenze). Ma in quel caso, e'
probabile che anche il tonto VisualBasiccaro ci sarebbe arrivato da se'.
Io avrei dovuto suddividere i numeri di telefono non in base al prefisso
ma in base alle ultime tre cifre del numero di telefono - ottenendo 2000
set disgiunti ed una elaborazione veloce (anche parallelizzabile su piu'
macchine, chi gli piace), a blocchi.
L'elaborazione procederebbe come (9.98)*(N/1000)*(M/1000)*1000, cioe' un
centinaio di volte piu' velocemente del brutale N*M; e questo se ammetto
che l'elaborazione bruta stesse in RAM. Ma il numero di DB page swaps su
un pool piccolo e' significativamente inferiore ad 1/P, se il pool resta
al di sotto di max(N,M)*RAM -- cosa pressoche' sicura, in questo caso, e
comunque si possono scegliere le ultime QUATTRO cifre -- sicche', in una
situazione reale, mi aspetto un incremento di velocita' di "piu'" che un
_miserabile_ centinaio di volte 8-D. Il tutto catafottendomene di quanto
siano correlati numeri telefonici e localita' geografiche.
Il che tra l'altro mi consentirebbe di fare la stessa cosa, usando altre
info (gli ultimi dieci bits dell'hash del nome, per dire).
+++
Mi ripeto, il punto "non era" stabilire quanto sia possibile fare con un
sistema database con le palle cubiche; il fatto e' che un algoritmo piu'
astvto e' in grado A VOLTE di compensare "e" il non avere le palle della
macchina, "e" il non avere le palle del sistema database.
O meglio: viceversa: il Pentium III a 866 MHz, se poi ci faccio girar su
un algoritmo fatto da un caprone me lo posso - come direbbe un VS - pure
battere al ****.
Oso proporre all'inclita assemblea che, con l'aumentare della potenza di
processori e memoria, si sente, sempre di piu', dire che gli algoritmi e
la loro ottimizzazione sono secondari rispetto alla riutilizzabilita' di
componenti standards (OK, ho copiato da un depliant - ma non vi diro' di
che cosa ;-) ). La riutilizzabilita' e' importante, non riscoprire tutte
le volte l'acqua calda e' importante, pero' credo che:
	a) Non trovarsi il programma di fatturazione che s'immagazzina i
	   dati usando una ipotetica SetRegistryKeyValue(chiave, valore)
	   sia altrettanto importante, e forse di piu' [1]
	b) Confrontare due sistemi che per natura loro o del compilatore
	   usano algoritmi diversi per fare un tot di cose, sia per tale
	   motivo fuorviante.
Leonardo
[1] al primo che dice "che te frega, finche' funziona!", vorrei chiedere
    sommessamente quale sistema operativo usa. Ho una mia teoria ;-)


In tal caso, puo' essere utile l'impiego di tecniche afferenti all'AI:
Si', ho lavorato con sistemi simili. Ma temo di essere rimasto ai primi
anni Novanta, in questo campo {incidentalmente mi domando se Obelix per
caso ha sentito parlare del WDA/VM: che ormai sara' Paleolitico :-( }
Grazie dei links, me li studiero' con calma :-)
Leonardo wget &


          motivo fuorviante.
Parlavamo di prestazioni del processore. L'ambito di valutazione era 
piuttosto ristretto. Comunque, effettivamente il dato che e' emerso a 
mio avviso piu' significativo e' la differenza nei risultati tra gcc 
sotto linux e VisualC sotto Windows. Per quel che riguarda il 
confronto tra PIII e G4, penso che la discussione sia ben lungi 
dall'essere considerata chiusa. A me sta a cuore piu' che la ricerca 
di un “vincitore” l'estrarre dati significativi che possano descrivere 
meglio le capacita' dei due processori.
Saro' stato chiaro?
Ciao

E che opzione? Magari quando ho piu' tempo faccio una prova.
Controlla la documentazione, io ho la 2.95.1 e non appaiono in effetti a
un primo controllo di info gcc e man gcc.


 un primo controllo di info gcc e man gcc.
Sulla versione di default sulla rh6.2 non c'e' nulla nel man gcc.
Ciao ... Dino

A me con rh6.2 dice qualcosa tipo GLIBC 2.2 needed o simile.
Ah, stai  usando l'RPM. Be`,  li e` chi  produce l'RPM che  decide quali
pacchetti sono necessari per farlo  andare (magari e` stato compilato in
maniera da ottimizzarlo propio con le glic2.2...).


 maniera da ottimizzarlo propio con le glic2.2...).
Si ma anche con i binari, non rpm. Mi da quel msg quando provo a
compilare.
Ciao ... Dino

compilare.
Io sono partito dai sorgenti in .tar.bz2, e non mi da quel messaggio. 
Mah...
