Eh si Egregi … ci son diversi individui che pensano che un OS Linux , windows , bsd based … sian così intelligenti da capire che processore usa l’hardware quindi “crede” che il sistema sarà ottimizzato per proprio hardware (in primis CPU)
Nulla di più falso.
Esistono si programmi che evolvendosi “abbracciano le istruzioni più avanzate” dalle SSE* alle AVX*. però questo è un processo secondario in quanto dipendente dal software in questione che può o meno sfruttare determinate caratteristiche; ma qui siamo sempre nell’ambito del “generico” '.
Quel che intendo io è ottimizzare intero sistema sfruttando tutte le istruzioni per propria cpu. certo … non è “semplice” … ma non per noi; Noi possiamo dichiarare di usare appunto il “native” … poi dipende da compilatore che sia GCC o LLVM di “sfruttare” le varie “estensioni” / “innovative istruzioni”.
Ricompoilare kernel senza usufruire per esempio del “-march=native” (in HOSTCFLAGS e HOSTCXXFLAGS) … kernel verrà si ricompilato ma per “generic”.
Spero venga compreso questo … inoltre dico … chi condivide questa affermazione ha compreso…
Chi crede “nelle favole” ovvero che kernel sarà ottimizzato senza precisare il tipo di cpu … beh sarà “lavoro inutile ed insensato”.
-march=native
La migliore soluzione per ottimizzare kernel o anche altri softwares su propria cpu
Se sbaglio correggete.
Ma … mi spiace su questo non sbaglio per nulla !!!
E’ così; ho ragione io ’
Buon tutto.
Mandatemi pure al diavolo … bannatemi se sbaglio.
Parlo a livello “assembly” … hehehehehehe
senza istruzioni specifiche … nessun software sarà realizzzato sfruttando le istruzioni di propria cpu.
Non è la I volta che lo dico.
per vedere le flags abilitate, aprite 2 terminali
Uno con
echo 'int main(){return 0;}' > test.c && gcc -v -Q -march=native -O2 test.c -o test && rm test.c test
Versus
echo 'int main(){return 0;}' > test.c && gcc -v -Q -O2 test.c -o test && rm test.c test
Quindi valutate le differenze …
Questa comunque è una cosa da bambini dell’asilo … ma vanno chiarificate le idee fra un software per “generic” (ovvero compatibile con la maggior parte dei sistemi sul pianeta) ed una versione otimizzata per proprio hardware (cpu in primis).
Se ho sbagliato … eliminatemi dal forum.
Se ho parlato correttamente … beh spero qualcuno appogggi il mio discorso.
Non capisco perché debba far tanta fatica per questi “concetti basilari” …
Ci gioco tutto …
se ho sbagliato rispondetemi e bannatemi.
…ma io credo di non aver esternato “sciocchezze informatiche” !!!
Quindi … o arrivederci oppure … “Addio” ’ non mi offenderò …
Ci gioco tutto
Se sbaglio eliminatemi pure. ’
Buon tutto.