Pagina 1 di 1

i386 i486 i586 i686

Inviato: gio 30 dic 2004, 2:30
da Harp
Ciao ragazzi, apro un thread cercando informazioni che avrei potuto reperire altrove, per cui chiedo scusa anticipatamente.
<BR>Sono un perenne newbie alla ricerca di imparare il più possibile questa distro e in generale il mondo GNU-Linux.
<BR>Per questo motivo vago alla ricerca di installare, configurare e apprendere il più possibile, leggendo a destra e a manca, cercando di tenere le mani in uno svariato numero di piccoli problemi che mi affliggono, e come me, altre tantissime persone che si affacciano a questo mondo complicato e allo stesso tempo interessantissimo.
<BR>Purtroppo, questo reperire informazioni, ha un grande difetto. Si riesce a risolvere superficialmente un gran numero di problemi, ma dall´altro non si riesce a fare proprie le conoscenze che hanno causato questi problemi.
<BR>OK! Scusate ancora! Mi sono dilungato anche troppo.
<BR>Ho scaricato i pacchetti KDE che il buon Samiel (Mauro) ha fornito e ho notato che sono i686. Ma cosa vuol dire?
<BR>Ogni tanto mi imbatto in un i386. Per esempio quando compilo il kernel e trovo bzImage in /usr/src/linux/arch/i386/boot, quindi i386. Ogni tanto trovo pacchetti del tipo nomefile-blabla-i486.tgz, quindi i486.
<BR>Cosa significano questi numeri?
<BR>Spero di non essere troppo inopportuno e soprattutto scusate questa domanda che forse è semplice per chi, a differenza mia, ha delle conoscenze informatiche di base che purtroppo io non ho.
<BR>Grazie per il tempo perso a leggere questo post.
<BR>Saluti, Harp00.
<BR><br>

i386 i486 i586 i686

Inviato: gio 30 dic 2004, 8:06
da Loris
Ho fatto un copia e incolla di un pezzo dell´howto "Slackware & SlackBuild"
<BR>Quasi tutti i pacchetti precompilati usano le CFLAGS standard, decise da PJV, nelle versioni precedenti alla 9.1 Volkerding usava -O2 -march-i386 -mcpu-i686, ora usa -O2 -march-i486 -mcpu-i686.
<BR>Se vui ottimizzare il package devi modificare questi parametri in base al tuo processore.
<BR>Ricordati che i binari generati da una compilazione con l´opzione "-mcpu" producono binari non compatibili con processori x86 inferiori, ovvero processori che non implementano tutte le istruzioni utilizzate dalla CPU dichiarata in "-mcpu" (ad es. MMX, 3dNow, ecc...).
<BR>Esempio... non è consigliato usare pacchetti creati con -mcpu-i686 su un i386 :)
<BR>Questi sono alcuni esempi di CFLAGS per tipo di processore:
<BR>Celeron (Coppermine) -O2 -march=pentium3 -mcpu=pentium3
<BR>Celeron (Willamette) -O2 -march=pentium4 -mcpu=pentium4
<BR>Pentium III -O2 -march=pentium3 -mcpu=pentium3
<BR>Pentium 4 -O2 -march=pentium4 -mcpu=pentium4
<BR>Athlon (AMD) -02 -march=athlon -mcpu=athlon
<BR>Athlon XP (AMD) -02 -march=athlon-xp -mcpu=athlon-xp
<BR>Ovviamente la lista è lunga questi sono solo alcuni dei processori x86 più usati, se vuoi una lista completa:
<BR><!-- BBCode Start --><A HREF="http://gcc.gnu.org/onlinedocs/gcc-3.2.2 ... %20Options" TARGET="_blank">http://gcc.gnu.org/onlinedocs/gcc-3.2.2 ... Options</A><!-- BBCode End -->
<BR><!-- BBCode Start --><A HREF="http://gcc.gnu.org/onlinedocs/gcc-3.2.2 ... %20Options" TARGET="_blank">http://gcc.gnu.org/onlinedocs/gcc-3.2.2 ... Options</A><!-- BBCode End --><br>

i386 i486 i586 i686

Inviato: gio 30 dic 2004, 9:53
da samiel
Alla spoiegazione generale di Lorys vorrei aggiungere che
<BR>i pacchetti ufficiali di KDE sono stati creati per il numero
<BR>più vasto di utenti. Poiché c´erano già, io ne ho creati di ottimizzati
<BR>per i686 (CFLAGS="-O3 -march=i686 -mcpu=i686).
<BR>Essi non possono essere usato che su macchine 686
<BR>e (in teoria) dovrebbero essere più veloci. Inoltre,
<BR>ho abilitato qualche funzione supplementare (supporto
<BR>ad alcuni formati audio e a kamera) e ho applicato
<BR>le varie patch di sicurezza finora rilasciate dal team di KDE.
<BR>Ma questo non c´entra con l´architettura...
<BR>
<BR>M.<br>

i386 i486 i586 i686

Inviato: mar 4 gen 2005, 15:39
da Harp
Ho letto gli how-to relativi alla creazione dei pacchetti per Slackware.
<BR>Davvero interessante e complimenti per la buona volontà per la redazione di questi documenti utilissimi.
<BR>Credo che proverò anch´io prima o poi a creare i miei pacchetti.
<BR>Una cosa non mi è chiara.
<BR>Io ho un Athlon XP e se non ho capito male dovrei usare un CFLAG="02 -march=athlon-xp -mcpu=athlon-xp", però questo non chiarisce il mio dubbio sulla differenza tra i486 e i686.
<BR>Che archittettura ho? Se dovessi compilare un pacchetto sulla mia macchina come dovrei chiamare il pacchetto?
<BR><br>

i386 i486 i586 i686

Inviato: mar 4 gen 2005, 16:17
da rob
fai attenzione che la flag è -O3 e non 03.
<BR>
<BR>i486 si riferisce a una cpu di tipo intel 80486, i686 si riferisce a un´architettura (non vorrei sbagliarmi) pentium2. poichè le cpu sono retrocompatibili (fino a un certo punto) se compili un pacchetto per i486 sei sicuro che tutti quelli che hanno una cpu >= a un 486 (e quindi 486, pentium, pentium mmx, p2, p3, p4, celeron, duron, athlon, athlon xp...) potranno far girare quel pacchetto, ma chi possiede un processore 386 potrebbe avere problemi a eseguirlo.
<BR>se compili un pacchetto per athlon-xp i possessori di 486, pentium, p2, p3, duron... potrebbero avere problemi nell´esecuzione del programma, ma chi possiede un athlon-xp o un p4 potrebbe notare prestazioni migliori perchè il binario prodotto dalla compilazione usa dei set di istruzioni posseduti proprio da quei processori.
<BR>ha senso compilare programmi multimediali ad hoc per i processori moderni per sfruttare, ad esempio, l´mmx (multimedia extensions), ma quando le prestazioni non sono così cruciali (non si ha bisogno del real-time) si può benissimo, imho, compilare un programma per i486 in maniera che tutti possano sfruttare i tuoi binari.
<BR>
<BR>detto questo i tuoi pacchetti dovrebbero chiamarsi $nomePacchetto-$versione-athlon-xp-$build.tgz
<BR>
<BR>spero di essere stato chiaro
<BR>
<BR>ciao
<BR>
<BR>rob
<BR>
<BR>
<BR>[ Questo Messaggio è stato Modificato da: rob il 04-01-2005 16:19 ]
<BR><BR><BR>[ Questo Messaggio è stato Modificato da: rob il 04-01-2005 16:36 ]<br>

i386 i486 i586 i686

Inviato: mar 4 gen 2005, 18:30
da Harp
Si grazie rob, adesso mi è più chiaro.
<BR>Posso avere dei miglioramenti se compilo KDE per il mio processore?
<BR>In tal caso posso usare le opzioni di Mauro?
<BR>CFLAGS="-O2 -march=athlon-xp -mcpu=athlon-xp" ./configure --prefix=/opt/kde --disable-debug etc.?
<BR><BR><BR>[ Questo Messaggio è stato Modificato da: Harp00 il 04-01-2005 18:31 ]<br>

i386 i486 i586 i686

Inviato: mar 4 gen 2005, 19:12
da samiel
Le opzioni rilevanti sono solo le prime, relative al compilatore.
<BR>Le altre, che seguono il ./configure, sono relative al pacchetto.
<BR>Io comunque ho usato -O3
<BR>
<BR>M.
<BR><br>

Inviato: ven 4 ago 2006, 0:13
da dapuzz
Riporto su questa discussione con questa domanda:
se leggo "-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead." come mai anche negli attuali slackbuild sono presenti sia -march che -mcpu? Non ne basta uno solo?

Inviato: ven 4 ago 2006, 8:19
da gohanz
Da quello che ho capito, con le nuove versioni di Gcc. Si usa solo -mtune, mentre con le vecchie versioni, 10.2, andavano bene -march -mcpu

Inviato: lun 7 ago 2006, 1:22
da useless
no, -march va ancora bene. -mtune rimpiazza solo -mcpu (anche se la cosa non mi è del tutto chiara).