View previous topic :: View next topic |
Author |
Message |
dirac3000 n00b
Joined: 03 Sep 2003 Posts: 33 Location: Italy
|
Posted: Sat Nov 22, 2003 10:47 am Post subject: [OT] Lentezza del gcc |
|
|
In uno degli ultimi esami che ho dato all'università mi è capitato di dover sviluppare un programma stupidissimo in c++, che doveva essere capace di leggere lunghi file di testo ordinare le righe secondo specifiche regole, cancellare le righe vuote e generare l'output, e per fare il tutto ho usato solo librerie standard c++ (incluse le STL).
Naturalmente non ho resistito alla tentazione di non farlo con kdevelop e g++ !!!
Il punto però è che facendo questo ho notato una cosa: il g++ è dannatamente lento. Una volta finito il programma, l'ho compilato con il g++ passandogli queste opzioni:
CXXFLAGS = -g0 -march=athlon -funroll-loops -pipe
Con un file da 50 mega ci metteva 59 secondi (io ho un Athlon TBird 1000...)
Poi ho provato con il compilatore dell'intel icc senza dargli nessuna opzione: 28 secondi!!!
Ma non è finita qui: ho riavviato e compilato il tutto con il VisualStudio.NET: 32 secondi!!
Lo so che il gcc è bellissimo perchè è libero e Richard Stallman ne va fiero, però rispetto agli altri compilatori è dannatemente lento! Possibile?
Immaginatevi se Windows XP fosse compilato con il gcc: sarebbe un chiodo confronto a kde!
Sbaglio o tutto questo è allucinante? |
|
Back to top |
|
|
Gandalf98 Guru
Joined: 28 Feb 2003 Posts: 472 Location: Loano
|
Posted: Sat Nov 22, 2003 10:52 am Post subject: |
|
|
Hanno fatto parecchi conffronti icc vs gcc e nella maggior parte dei casi il vincitore è icc! Non ricordo dove, ma in uno di quei test dicevano che il problema più grosso è nei calcoli vettoriali, che sono stati migliorati con gcc3.4, speriamo!!
Cià |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31348 Location: here
|
Posted: Sat Nov 22, 2003 11:53 am Post subject: |
|
|
icc dicono che dia il 30%-40% di velocita' in piu'. Che mi fa strano e' il risultato
che ti da compilandolo con visual net. _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
cerri Bodhisattva
Joined: 05 Mar 2003 Posts: 2957 Location: # init S
|
Posted: Sat Nov 22, 2003 12:30 pm Post subject: |
|
|
Non sono esperto di compilazione, ma icc non e' confrontabile in quanto utilizzabile solo con alcune architetture. _________________ Enjoy your freedom.
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
<----------------------->
Andrea Cerrito |
|
Back to top |
|
|
dirac3000 n00b
Joined: 03 Sep 2003 Posts: 33 Location: Italy
|
Posted: Sun Nov 23, 2003 9:40 am Post subject: |
|
|
In effetti il gcc ha la peculiarità di poter girare su tante famiglie di processori, mentre l'ICC va solo per le macchine pentium-compatibili, quindi anche i processori AMD. Inoltre, come ho già detto, è un compilatore libero, a differenza del modello closed-source seguito dall'Intel (che non si smentisce mai). Spero che, come suggerisce Gandalf98, le prestazioni aumentino con il gcc3.4 e la sitesi del calcolo vettoriale!
Per quanto riguarda quello che diceva fedeliallalinea: sì è sorprendente il Visual Studio .NET: io ne ho avuto una copia in licenza attraverso l'università, ed effettivamente, oltre ad essere un ottimo IDE (secondo me solo in parte rimpiazzato da KDevelop), ha sotto un compilatore C/C++ dalle prestazioni sorprendenti... |
|
Back to top |
|
|
|