Author: Peter Fendrich
Date: 10:58:38 01/26/00
Go up one level in this thread
On January 26, 2000 at 05:11:50, Amir Ban wrote: >On January 25, 2000 at 18:56:37, Peter Fendrich wrote: > >>I tried to use the clock() function (in NT4) and it didn't behave as I expected >>it to. >>It is said to "Return elapsed CPU time for current process". >>I hoped to be able to run performance tests with my chess program in the >>background while doing other things in the foreground and yet get the same >>results. >>The clock() is definitely affected by other processes so I get very varied >>results depending on what I'm doing in the foreground. >> >>How come? >> >>//Peter > >That's quite a lot of discussion on your question here, but AFAIK the answer is >simple. > >In VisualC++ clock() returns the elapsed time. The documentation is misleading. > >To get CPU time, use GetProcessTimes, and take userTime from the returned >structure. It's in 100 nsec units. If you are interested in measuring your >context switch times and other o/s overhead (I know you are not), look at >kernelTime. > >This works reliably AFAIK. On SMP it will even sum the times of the different >processors, so on a 4-way machine you can get up to 4 CPU seconds for each >elapsed second > >Amir Yes, I think you trapped the real problem here and it is supported by my results. The clock() time increased depending of how much I let other programs work. It was easy to double the time meassured on the same task. Thanks! //Peter
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.