Newsgroups: comp.os.msdos.djgpp Subject: Re: large variation in run-time Message-ID: From: "Johan Van Ooijen" Date: Thu, 7 May 1998 09:53:13 +0100 References: <354DAFD3 DOT 8D277F06 AT CPRO DOT DLO DOT NL> <6iktlt$4j1 AT argo DOT telecom DOT cz> NNTP-Posting-Host: 10.194.2.147 Lines: 46 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Eli Zaretski wrote: >On Mon, 4 May 1998, Johan van Ooijen wrote: > >> So the question is, whether there is an explanation for these large >> variations in run-time when using go32 ? > >Does the program use disk I/O significant proportion of its run time? No, once every millions of iterations a 100 lines are written to a file and one line to the screen. >Does it swap to disk? If so, your disk cache can skew the run time a >great deal. I don't see swapping activity. Memory allocated before the iterations is less than 100 Kb, in the iterations about 1 Kb is malloc()'ed and free()'ed each time. Total memory allocated doesn't grow. There's sufficient megabytes of free memory. >Another possibility might be the size of your innermost loop: if it >sometimes overflows the CPU caches, you will see a factor of 2-4 in >performance without any apparent explanation. How does this happen? >> and go32 says: > > go32 version 1.12.maint3 > >Huh? Is this program compiled with DJGPP v1.12? If it's v2.01, run >go32-v2, not go32 (it's a completely different program, and reports >completely different results). Yes, I still use go32 version 1.12 and gcc version 2.6.0. It works great for me (except for this strange phenomenon...). I'll go over to go32-v2 some time... By the way, I also ran these simulations on an Alpha under OpenVMS using dec-cc and there everything runs as expected. Johan van Ooijen j DOT w DOT vanooijen AT cpro DOT dlo DOT nl