Thread: CPU load
View Single Post
  #4  
Old March 31st, 2015, 05:18 PM

Anton Anton is offline
Corporal
 
Join Date: Jul 2008
Posts: 81
Thanks: 7
Thanked 12 Times in 6 Posts
Anton is on a distinguished road
Default Re: CPU load

Quote:
Originally Posted by Mobhack View Post
The original DOS game took 100% of the CPU, all the time, as did the original Windows conversion.
MS-DOS is a single-process OS, so any program may be said to possess the CPU, although it may exert only a tiny portion of its calculating power spending most time awaiting user input. Is it in this sense that the DOS version took 100% of the CPU, or did it load the CPU with real calculations to its full capacity?

Quote:
Originally Posted by Mobhack View Post
As its a game, it assumes that you are playing it as the primary purpose of running the computer at that time if it is on the screen.
That I understand. I am a purist in this regard, for I will not have any distractions while playing. Switching away to check e-mail or social networks spoils one's experience and is actually an offense to the game's author. I enjoy winSPWW2 and will never do that.

Quote:
Originally Posted by Mobhack View Post
When its doing something, it grabs the CPU, and when its "idle" it will still grab it for screen updates several times a second.
WinSPWW2 does not strain the CPU much in this "idle" state.

Quote:
Originally Posted by Mobhack View Post
Games are designed differently from office apps. They hog the CPU, unlike word processors etc - But I designed this one to let the office apps get a look in by giving it an OnIdle event!
If a game is a first-person shooter with an unlimited FPS it will surely put the hardware to its limits, but I shouldn't expect it of winSPWW2 with its scanty low-FPS (and fixed-FPS) animation. I would know what calculations are taking nearly 100% of CPU time during the processing of so innocent an event as the rally command? Would it not be some dummy load arising from the lack of a delay in the main loop? I will always add a tiny delay to such loops lest they clog the CPU in the absence of actual work:

Code:
while true do begin
  ProcessEventsIfAny();
  Delay(timeUntilNextUpdate);
end;
and perhaps you might do the same in case nobody has subscribed to the OnIdle event...

Quote:
Originally Posted by Mobhack View Post
If you really need that CPU time to do something else than play the game - then either shut the game down or minimise it to the task bar.
I'm worried about the increased wearing of my computer under so high a load in a situation where this load is totally unnecessary and is only a side-effect of the game's architecture. It is not the bare digits in the Task Manager but the actual high power consumption manifested in the whining of the fan.
Reply With Quote