[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
 
[an error occurred while processing this directive] [an error occurred while processing this directive]
Skåne Sjælland Linux User Group - http://www.sslug.dk Home   Subscribe   Mail Archive   Forum   Calendar   Search
MhonArc Date: [Date Prev] [Date Index] [Date Next]   Thread: [Date Prev] [Thread Index] [Date Next]   MhonArc
 

Re: [CPROG] Compilerings tid



--- "Egon Andersen, Talura" <sslug@sslug> wrote:
> Hej,
> 
> Nu er jeg blevet meget overrasket over 'gcc'!
> 
> Normalt tager det ca. 7-8 sekunder at kompilere en bestemt klump kode.
> Idag indførte jeg så een ekstra variabel af typen 'int' i en struktur.
> Det ændrede kompileringstiden til 173 sekunder! Ja, mere end 20 gange så
> lang tid.
> Nu var der en anden variabel i samme struktur af typen 'int' - begge
> kunne godt nøjes med at være 'short int', så det prøvede jeg. Nu var
> tiden igen 7-8 sekunder.
> Jeg lavede det tilbage til 2 x int => 173s.
> Nu tilføjede jeg nogle dummy variable i strukturen.
> Da jeg havde tilføjet 3 ekstra variable af typen 'int' blev
> kompileringstiden igen 7-8 sekunder.
> 
> Er der indbygget noget i 'gcc', der forsøger at optimere på sådan en
> finurlig måde? (Jeg kompilerede med default optimerings option.)
> 
> Jeg anvender indtil videre
> gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
> 
> Med finurlig hilsen
> Egon Andersen

Hej Egon

Jeg tror den er finurlig, jeg har prøvet at fjerne kode fra et program (det var et skak program).
Den fjernede koden indeholdt en masse if-checks som jeg troede brugte en masse tid, men det fik
programmet til at køre langsommere når det klart nok skulle køre hurtigere!
Jeg har også i en fjern fortid set den køre hurtigere hvis man bare erklærede en masse dummy
variable, igen ret besynderligt.


Det er selvfølgelig ikke helt det samme som dit eksempel, men alligevel kan jeg stadig undre mig
over det. Jeg tror måske det har noget med optimeringer og cache effektivitet at gøre.
Compileren har nogle valgmuligheder og fjerner man lidt kode eller adderer lidt, kan det måske
tænkes compileren finder en anden måde at oversætte "optimalt" på. Dette må vel også betyde at
selve kompileringen kan tage forskellig tid.

-Sune

=====
Ik´ så meget pjat - bare derud af!
http://www.slaaam.com

__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/


 
Home   Subscribe   Mail Archive   Index   Calendar   Search

 
 
Questions about the web-pages to <www_admin>. Last modified 2005-08-10, 20:08 CEST [an error occurred while processing this directive]
This page is maintained by [an error occurred while processing this directive]MHonArc [an error occurred while processing this directive] # [an error occurred while processing this directive] *