Author: Bob Durrett
Date: 15:08:02 11/12/02
Go up one level in this thread
On November 12, 2002 at 18:03:58, Robert Hyatt wrote: >On November 12, 2002 at 17:41:47, Coxwell Strange wrote: > >>On November 11, 2002 at 22:44:48, Robert Hyatt wrote: >> >>>On November 11, 2002 at 21:33:24, Bob Durrett wrote: >>> >>>>On November 11, 2002 at 21:17:01, Robert Hyatt wrote: >>>> >>>>>On November 11, 2002 at 15:41:48, Bob Durrett wrote: >>>>>> >>>>>>I am a non-programmer but assume that all professional programmers know all >>>>>>about optimizers. Sounds like a good thing to have, anyway. : ) >>>>>> >>>>>>So far, we have been talking about the case where there is only one big program >>>>>>running on the computer and that is the chess engine [& GUI maybe]. But many >>>>>>people [I presume] also run Office or Word and maybe other software. I almost >>>>>>always have CB8 running when using Fritz, for example. Perhaps running several >>>>>>big programs at once would cause the operating system to be more busy? >> >> >> >>as a nonputer pro, all i have to contribute to this subject is the consistent >>observation that a 2 % reduction of puter resources equals a 1 % reduction in >>speed in a prorams time of search to depth... OS or other programs can therefor >>iimpact program speed, but how great of a variation in chess strength is >>doubtful at the current speed of todays puters. > >What exactly is a "computer resource"? Memory? stealing 2% of available memory >should not slow a program by 1%. It shouldn't slow it one iota, in fact... So >I am not sure >what this means unless you are running more than one thing at a time, which will >slow a >chess engine anyway... > > I use a "computer resources meter" on my computers because I often run many programs at once. It would be possible to load up the computer with running programs so that the meter showed a pre-chosen reduction in resources. Then the chess engine performance could be measured under those circumstances. Maybe that's what was being suggested. Bob D. > >> >>>>>> >>>>> >>>>>Yes, but the overhead for such is expected and all systems will lose a tiny >>>>>bit of time doing context switches. Some worse than others. But the usage >>>>>Vincent was describing makes no sense, as he said "one console program". >>>>> >>>> >>>>Not clear. Like multiple PCs but only one monitor and keyboard? Or, multiple >>>>processors with shared memory and shared monitor and keyboard? >>> >>>Multiple PCs is a whole different matter. Operating systems are not >>>distributed in such a cluster. Each node in the cluster runs its own unique >>>operating system copy. Not so in a SMP box where there is one OS scheduling >>>all the processors... >>> >>> >>> >>>> >>>>Not clear what Vincent was discussing in that case. Relevance to main question >>>>unclear. Could it be that operating systems might have more work to do in that >>>>case? If SMP, then communication between processors considered to be an >>>>operating system function? If so, how much % of total processor time for that? >>>> >>> >>>Zero basically. I have no idea what he was talking about either, and I won't >>>try to speculate. Other than to say that for a chess program, the O/S is _not_ >>>an issue. The efficiency of the compiler optimizer and the speed of the >>>processor are the two overwhelming points of significance... Windows, unix or >>>even DOS would make no difference whatever... >>> >>> >>>>Please forgive me if my ignorance regarding operating systems is showing. : ( >>>> >>>>> >>>>>>We have also been assuming that the computer would have ample RAM. However, >>>>>>maybe not everybody has an expensive computer with tons of RAM. There may be >>>>>>competition for the available RAM, and the OS would be one of the competitors. >>>>>> >>>>>>So, can the conclusions reached so far be extended to these cases too? >>>>>> >>>>> >>>>>No system pages efficiently, but that is a totally different issue to >>>>>operating system overhead in normal usage. >>>>> >>>>> >>>>>>Incidentally, why would the Fritz people write their program in assembly >>>>>>language, essentially bypassing an "optimizer"? Does it make enough difference >>>>>>to go to that much trouble? [Maybe the Fritz people think only in assembly >>>>>>language? : ) ] >>>>>> >>>>> >>>>> >>>>>Because you can do better than the optimizer. You design the program, so >>>>>you know more about the internals of the program. IE if you want to do some- >>>>>thing like wtm=!wtm; the optimizer has to handle cases where wtm can be >>>>>_any_ legal integer value. If I know that it is only zero or one, I can >>>>>change that to a much faster XOR instruction. Because I know something the >>>>>compiler doesn't. Ditto for lots of other common things. A switch. I don't >>>>>have to check for the "out-of-range" values, as I _know_ there will be none. >>>>> >>>>>etc... >>>>> >>>>> >>>> >>>>I may be asking a question no one can answer, but: "How much difference would >>>>that make?" "100 rating points?" >>> >>>Unknown. In the case of Cray Blitz, which I _did_ convert to mostly >>>assembly language, the CAL version (Cray Assembly Language) version was >>>about 5x faster than the best the optimizer could do with a pure FORTRAN >>>code. 5x is more than two doublings, so 100+ rating points is in the right >>>range... But the issue would be the actual speedup obtained. I know the >>>number for the Cray as Harry Nelson and I wrote the code and did the timing >>>comparisons. I haven't done it for the PC so anything I say would be pure >>>speculation. I've written a good bit of PC assembly code in the last few >>>months, but the raw architecture of the PC instruction set is simply not as >>>powerful as other architectures, the paucity of registers might make speedup >>>numbers like 5x much more difficult to obtain... that's why I am afraid to >>>speculate without anything to back it up... >>> >>> >>> >>> >>> >>> >>>> >>>>I'm still looking for a "bottom line" here, such as a conclusion or executive >>>>summary of findings, or whatever. >>>> >>>>Something profound, preferably. : ) >>>> >>>>Bob D. >>>> >>>> >>>>> >>>>> >>>>> >>>>> >>>>>>P.S. Note that I am trying to use plenty of smileys whenever I intend humor. >>>>>> >>>>>>Bob D. >>>>>> >>>>>> >>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>>>On November 11, 2002 at 13:02:44, Bob Durrett wrote: >>>>>>>>> >>>>>>>>>>Would the engine perform significantly better using that dedicated operating >>>>>>>>>>system? [As compared to using a commercially available OS] >>>>>>>>> >>>>>>>>>You can get an idea of how much time is used by the OS. On my computer I look >>>>>>>>>under Task Manager and it says: >>>>>>>>> >>>>>>>>>Image Name CPU Time >>>>>>>>>System Idle Process 6:19:14 >>>>>>>>>IEXPLORE.EXE 0:02:16 >>>>>>>>>msdev.exe 0:01:22 >>>>>>>>>Explorer.exe 0:00:53 >>>>>>>>>System 0:00:22 >>>>>>>>> >>>>>>>>>And so on. So I have over 6 hours of idle time, and the next biggest chunk of >>>>>>>>>CPU usage time was by Internet Explorer, of a whole 2 minutes. That means there >>>>>>>>>is 99.5% of the CPU time that could have been used by a chess program. So the >>>>>>>>>question is whether or not a 0.5% increase in speed is going to mean >>>>>>>>>"significantly better" results. I think not.
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.