With single core local rybkas, I can't get more than 50% of the total CPU involved, each process takes only 13% CPU (which totals 4x13~50%).
If I use multicore local instances of Rybka, the task manager displays 16 rybka processes (as opposed to only 4 with the single core version), some of them idle, and the CPU usage for each process varies from 0 to 13%, totalling 100% CPU usage.
Both cases involve the same number of tasks being analyzed (4).
I suspect it's better to use single core instances but it also feels like a waste not to utilize 50% of the available CPU.
Which one is best?
Is hyperthreading on? In single core, did you set the number of CPU cores to 1? Is RAM sufficient? How much RAM did you allocate for each core?
Last week, I also purchased an AMD Athlon 2 X4 and I get 100% in both cases.
If HT is on, then you should use 8 engine's intances, thus you would process 8 tasks at a time.
Nevertheless, most of time is better to run just 4 cores. I have to check the opposite when you are running more than 3 projects at a time.
I'll try to do this once I get some free time this weekend. We'll see if I get the memory issues you experienced.
1) With one multi-cpu rybka engine installed my performance monitor shows 100% utilization for all 8 processors.
2) With one 1-cpu rybka engine installed configured for 1 instance I'm seeing 12-13% cpu utilization. This makes sense since the resourse monitor is showing 8 cpu's, 1/8 = 12.5%. Similarly 4 instances of the 1-cpu engines results in 50% utilization.
3) If I run 8 instances of the 1-cpu engine I become memory constrained (I have 6GB ram installed), so any cpu utilization score is meaningless (it was bad).
I'll defer to the experts on this, but with IDEA doing short time/depth evaluations I suspect that HT is less of an issue compared to optimizing processor utilization.
There's some other factors going on in IDEA worth looking at as well. I ran a couple of projects with one Rybka multi-cpu and again with four Rybka 1-cpu engines. When I aproximate clock time with a stopwatch I get nearly identical move evaluations and move order, but the 4 instances of 1-cpu crank out a lot more positions to look at. (I really don't understand how to use cpu time to compare true processing time).
Anyway, that's my lesson's learned. I thought that the 1-cpu configuration was someting of a free lunch with all of the extra tree positions.
> When I aproximate clock time with a stopwatch I get nearly identical move evaluations and move order, but the 4 instances of 1-cpu crank out a lot more positions to look at.
There is not evaluation , because IDEA did not find anything to radically change the evaluation (very common)
> I really don't understand how to use cpu time to compare true processing time
Cpu time = time the engine works X number of cpu's
So if it says 4 hours and you have a quad-pc , then you have been working for 1 hour
I understand what you are saying about the evaluations, so I had created new projects and trees and cleared hash for each case to make sure I was doing an apples to apples comparison.
From a practical perspective an hour is an hour, so if I have an hour to evaluate a position I'm interested in configuring IDEA to best utilize that time. My hour includes engine cpu time + idle time (actually my little test was for 20 minutes).
My IDeA method is 300 sec OR d=23 and so far it looks like HT gives me twice as many cores. I'm running 2 IDeA projects simultaneously. I'll keep watching over the weekend but I am very impressed :)
I did get 1-cpu 8 engines going at 100% with 5.1GB memory utilization, but I'm reluctant to run continuously at that level since I never know when windows will spin up some other tasks. You must have more memory or courage than I do.....
Each project produced about 360 tasks/5 hours with time 300 sec OR d=23.
This looks like a cheap option of getting 8 cores. The question would be if the Aquarium team would be able to network 2 or more of these computers with virtual cores. I don't think the current remoteIDeA server would support virtual cores...
Someone posted that cloud computing can provide 24 cores (2.4 GHz) 24hr/day for 1000 USD a month. I could buy 3 computers like mine for under 4000 USD and get the same number of cores forever :)
- analyzing till d=23 with IDeA is a total waste of IDeA power. You can easily see that in most of positions you will get similar moves and in the same evaluation order than analyzing with d=15. Of course, some positions mayu require deeper settings.
- analyzing with 8 virtual cores may be little bit better (less than 1.3x) when you are running 2-3 projects at a time. However the gain is no so big since CPU speed with HT on, cannot be as fast as with HT off (i assume we are overclocking)
> - analyzing till d=23 with IDeA is a total waste of IDeA power.
That is an interesting point! Since IDEA is going to minimax the tree what do we get by going to the extreme depth vs quickly moving down the tree with more moves and shorter move evaluations?
I wonder if you would get to a d=23 in 300sec in many positions anyway. When I ran a recent project with 225sec AND d=20 too many tasks ran to my max time setting of 600sec.
For a time of 300 sec this should be a bit higher than 12. If it's lower than 12 then in no case the depth of 23 was reached. I am looking for something between 12 and 13 (for time=300 sec) which is equivalent to a range of 1/12 % of short tasks (0-8%).
The depth for me is dependent on the "% of short tasks" for the time I arbitrarily want to allow for each task.
In other words, for the positions I am analyzing right now, I am seeing 0-8% of "short tasks" with a time of 300 secs.
Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill