Author: Robert Hyatt
Date: 16:57:50 11/12/02
Go up one level in this thread
On November 12, 2002 at 18:08:02, Bob Durrett wrote: >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. I'm not sure. IE if something just "sits" in memory, it won't hurt a chess engine at all, if it is not running. But if you are running a program that actually does something, such as disk reads/writes and real computation, that is definitely going to affect the engine, and the O/S won't be able to do anything about this no matter whether it is unix, windows or anything else... >> >>> >>>>>>> >>>>>> >>>>>>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.