![]() |
In addition to the above, I believe this new option will give all of us the flexibility needed to address our specific needs:
On Hyperthreaded machines: 1) To allow Prime95 to run as fast as possible while sharing the CPU with other programs, leave this new option turned off and set the affinity to "Let program run on any CPU". 2) To get [U]some[/U] of the clock cycles back that Prime95 is stealing, leave this new option turned off and set the affinity to force Prime95 to run on CPU 0 or 1 only. 3) To keep Prime95 from stealing clock cycles from other programs as much as possible, turn this new option on. 4) To keep Prime95 from stealing ANY clock cycles, exit Prime95. These options, along with the PausedWhileRunning option, will allow an amazing amount of flexibility. Good work, George! Note: In my previous post, I inadvertently used CPU 0 as the "Let program run on any CPU" affinity option, and CPU 1 and 2 as the virtual CPUs. I realize now the virtual CPUs should be 0 and 1. Sorry for the confusion. |
[QUOTE=Peter Nelson]ALSO the software should and can interrogate to discover how many physical and/or virtual processors exist on the hardware. There are standard and documented ways to get this easily.
I would PREFER to see effort going into a client which can invoke and manage multiple threads.[/QUOTE] No promises, but I actually have begun looking into this. It would make prime95 easier to use and is a better fit with the v5 server model. The task is non-trivial as prime95's roots began in Windows 3.1 where global variables were the perferred method of communicating with the assembly language code and the fastest way of accessing data. I've already begun coding a separate thread for communication with the server. This too is more work than you would imagine. |
I think this new model will become especially useful as dual-core CPUs are starting to take off and eventually most people will have them in new machines so the easy ability to manage multiple CPUs in Prime95 will be very helpful.
|
[QUOTE=PhilF]...2) To get [U]some[/U] of the clock cycles back that Prime95 is stealing...[/QUOTE]
You guys use your PC's for something other than Prime95? :rolleyes: |
[QUOTE=potonono]You guys use your PC's for something other than Prime95? :rolleyes:[/QUOTE]
Yes, for surfing at www.mersenneforum.org!!!! :rolleyes: |
RESULTS
Ok I will report my experience.
The machine was verified to be in HT mode using Intel hyperthreading test utility. My P1/P2 testing completed and the 24.15 test client started LL testing. The new feature is there because it comes up with "pausing for 30 seconds" to indicate it kicking in. I found launching task manager was enough to make it kick in. If nothing was happening processing restarted after the 30 seconds. I tried running calculator and calculating, which was not enough cpu usage to invoke the pause. I tried running IE browser and reloading [url]www.mersenneforum.org[/url] was enough to make it pause. I often run p95 in parallel with a ftp download since it is network limited rather than cpu intensive. So I also tried to download the FIFTH CD in the RC1 of SUSE 10. :bounce: The downloading didnt cause the priming to sleep (GOOD). I tried running Counterstrike:source game which paused Prime95 and the game was not impaired by the backgrounded client. (I used ATI tools to display my CS:S FPS in the top of the screen and on a CS:Source server with no other players standing still this was not blipping every 30 secs as the p95 tried (good). If ALT tabbing CS:S into background mode Prime95 gets the cpu and restarts work. If I go back to CS:S and leave it sitting doing nothing in the main menu the client does NOT restart (bad). SO, it works BUT possibly a bit hypersensitive in deciding to go to sleep. Maybe the drop in iteration time to invoke this could be changed or have to appear longer? NOW the big problem. I tried running P95 24.15 LL as normal. Then I ran P95 24.14 FACTORING (to run as another instance on the other vitrual processor). Factoring went fine BUT it made the LL testing instance go to sleep VERY BAD :-) SO this has to either be default disabled or easily turned off. As you stated the sleeping only works in LL test at the moment I would suggest that if it is to be any use it ought to work in all parts of the program ie FACTOR, P1,P2,LL should all have this behavior. Otherwise I will have to look what the client is doing to ascertain whether it will interfere with what I am about to launch. (Granted LL is majority of the time but that wont help if my other job needed cpu while factoring.) Its worth remembering that unlike REAL dualcores (like your 8xx without hyperthreading) there is only one REAL cpu in my Northwood. Two instances are not truly separate they just interleave the scheduling of parts of the FPU, cpu etc. Also there may be problems in the next generation processors where the CACHE will be SHARED between both cores. The cache optimisation you have done is great for current processors, but I can imagine nightmares if two instances get run on a machine that tries to share cache between them (this will be interesting to test). In my own usage, for most tasks I WANT p95 to continue grabbing cycles not pausing anyway. When I want to run a task CS:Source game that p95 would interfere with I shut it down first. So this sleeping feature probably causes too much sleeping for my liking eg while I'm browsing. For some people it MIGHT be useful if fully implemented. For people who want to run two P95 instances there MUST be a way to disable this feature. These are my findings :-) |
Thanks for the feedback. I'll see what I can dream up to improve it.
You should be able to disable the feature with "HyperthreadingBackoff=0" in prime.ini |
[QUOTE=Prime95]No promises, but I actually have begun looking into this. It would make prime95 easier to use and is a better fit with the [B][U]v5 server model[/U][/B]. [/QUOTE]
:whistle: Luigi |
Lol Luigi, don't be so sceptical!
I'm sure V5 will be up and running by Christmas holidays. :ermm: In which year I am unsure. :no: |
Last week my work PC was upgraded from a 2.2 GHz non-hyperthreading, Windows 2000, Pentium IV to a 3.2 GHz hyperthreading, Windows XP, Pentium IV. Not wanting to risk winning a prize, I have almost always used my work PC for factoring and have never noticed a lack of responsiveness. However, when my new work PC began exhibiting the lack of responsiveness that George mentioned above and Task Manager told me that my PC was 50% Prime95 (version 24.13) and 50% idle, I decided to experiment with running a second instance of Prime 95 (version 24.13) from a different directory with affinity set to 0 and 1 respectively. Now Task Manager tells me that Prime95 is getting 50% of both CPUs and my lack of responsiveness problem has completely vanished. My question is which is better: double checking and trial factoring or trial factoring and trial factoring?
|
Try both. I think DC and trial factoring would work well but so would two instances of TF.
|
| All times are UTC. The time now is 23:29. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.