![]() |
|
|
#12 |
|
1976 Toyota Corona years forever!
"Wayne"
Nov 2006
Saskatchewan, Canada
2×5×7×67 Posts |
|
|
|
|
|
|
#13 | |
|
"J. Gareth Moreton"
Feb 2015
Nomadic
2·32·5 Posts |
Quote:
I have noticed that Prime95 doesn't always know which logical CPUs apply to which core - sometimes it can work it out, but other times it can't, and just assumes 1 and 2 for core 1, 3 and 4 for core 2 etc (which is also what it determines upon working it out). My current settings are to use 4 worker threads, but with no multithreading (CPUs to use = 1). What would you recommend I set the affinity scramble to in order to ensure the worker threads stay out of the hyperthreaded virtual cores? Currently I've hacked it a bit by using Task Manager to uncheck what I assumed to be the hyperthreaded virtual cores in the process affinity for Prime95. I figure I need to get a program that better identifies the CPU and its stats in order to make a more informed decision - any recommendations? |
|
|
|
|
|
|
#14 | |
|
If I May
"Chris Halsall"
Sep 2002
Barbados
230478 Posts |
Quote:
Test. Rerun tests. Then run again (changing only one variable). Always amuse you are wrong. |
|
|
|
|
|
|
#15 |
|
1976 Toyota Corona years forever!
"Wayne"
Nov 2006
Saskatchewan, Canada
10010010100102 Posts |
|
|
|
|
|
|
#16 |
|
"Kieren"
Jul 2011
In My Own Galaxy!
2×3×1,693 Posts |
I see what you did there.
|
|
|
|
|
|
#17 |
|
If I May
"Chris Halsall"
Sep 2002
Barbados
9,767 Posts |
|
|
|
|
|
|
#18 |
|
"/X\(‘-‘)/X\"
Jan 2013
2·5·293 Posts |
Assumptions often lead to amusement.
|
|
|
|
|
|
#19 |
|
"J. Gareth Moreton"
Feb 2015
Nomadic
2×32×5 Posts |
I'm guessing that since Prime95 cannot reliably identify Windows CPU identifiers to individual cores, there isn't a single means of doing so. Experimentation seems like a good idea - I just wanted to avoid doing it unnecessarily if the answers are already published somewhere. I'll see what I find though.
Worst comes to the worst, I'll play around with the Windows API and the CPUID opcode myself! |
|
|
|
|
|
#20 | |
|
If I May
"Chris Halsall"
Sep 2002
Barbados
9,767 Posts |
Quote:
No disrespect intended towards George. But hand optimizing the affinity goes a really long way. |
|
|
|
|
|
|
#21 | |
|
Serpentine Vermin Jar
Jul 2014
3,313 Posts |
Quote:
The method used to get the details hasn't always existed in Windows which is why, I assume, George didn't use that in the code. Seems to me that since it is there now, that should be the first option to figure it out and only if it's an older OS (Windows 2000 or something?) should it revert to the much cruder "timing method". Ideally Prime95 would also simply exclude hyperthreads from consideration at all, pretending they don't exist when it comes time to setting how many workers a machine can have. Anyway, the AffinityScramble2 I would use on a 4 physical core system is =02461357 ... your physical cores in Windows are going to be the 0246 and your HT cores are the 1357. You "map" those last so when you set the affinity for each of your four workers, you can just start with 0 then 1, 2 and 3 so they point to those first 4 cores you've mapped out. Otherwise if you leave the affinity at 01234567 you have to remember to set each worker to have an Affinity that matches a physical core, like 0, 2, 4 and 6. I guess either way you'd want to set an Affinity= entry on each worker, but what affinity you use depends on how you've mapped your cores. Confusing? Yeah, probably... it could be made clearer or just handled in the code for the optimal settings, but leaving the option to override "just in case". |
|
|
|
|
|
|
#22 |
|
"J. Gareth Moreton"
Feb 2015
Nomadic
10110102 Posts |
No worries. It's something I need to pick up anyway, since my own programming is getting more advanced. Heck, maybe if I can get something consistent to work in regards to working out which logical CPUs map onto the same core, I can e-mail George with a proposed bit of code or something, or just post it on here somewhere. I don't know, whatever helps. In the meantime, I'll use the affinity override as suggested (yes, it is good to have a manual override no matter what, in cases where the automated method doesn't work for some reason, or if you want to deliberately override it to test something).
|
|
|
|
![]() |
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| reduce to 108119486 relation sets and 0 unique ideals | Alfred | Msieve | 2 | 2017-04-02 07:01 |
| Worker #5 and Worker#7 not running (Error ILLEGAL SUMOUT | skrupian08 | Information & Answers | 9 | 2016-08-23 16:35 |
| How to reduce number of worker windows? | Chuck | PrimeNet | 7 | 2011-07-03 19:17 |
| Reduce your debt!! ... I'm curious. | petrw1 | Lounge | 59 | 2009-01-21 12:48 |
| Any way to reduce CPU usage? | Jarl | Hardware | 5 | 2007-03-30 19:13 |