Three Folding Clients for One CPU
Leonardo
Wake up and smell the glaciersEagle River, Alaska Icrontian
The impetus for running three Folding clients simultaneously with one CPU was our discussions concerning Intel Northwood CPUs under hyperthreading and the less than full CPU utilization incurred by the "P935_LG2 In Water" protein models. Reference threads are here, CPU Usage with P935 P935s Not Sending .
My setup so far:
Three clients installed on System 1 (signature), which is in hyperthreading mode.
Client one - Console v4, starts with Startup folder.
Client two - console v4, starts with FireDaeman Service Manager
Client two - Graphical v4, starts with Startup folder.
This setup has only been running for a few minutes at the time of this post, so I don't yet have performance data to share. That also means I don't have problems to relate yet either!
My setup so far:
Three clients installed on System 1 (signature), which is in hyperthreading mode.
Client one - Console v4, starts with Startup folder.
Client two - console v4, starts with FireDaeman Service Manager
Client two - Graphical v4, starts with Startup folder.
This setup has only been running for a few minutes at the time of this post, so I don't yet have performance data to share. That also means I don't have problems to relate yet either!
0
Comments
UM, err, Folding will get confused maybe that way, but you can try it. If it does not work, try setting one console to machine ID 3, one to Machine ID 2, adn let the graphics console sit at Machine ID 1. Any chance you are having client vs client turnin conflicts, with same WU starting almost at same time, trying to get turned in at once across more thna one client??? Running 2 drops chance of that, with three using one web pipe that is more likely.
Same folding ID, same team, different machine numbers in console setup (run each console with -config switch in Command console to set up, once, then let them go to town folding under control of your other software). THIS CAN be hacked also, will tell you how if need be, but I have had two graphics clients happily use different machine IDs on different XPs when both were set to same, I had dup WU recceipts and creditting got kinda curiously malfed. In your case, probbaly each pipe for HT is regarded as a CPU to folding, so just as a ZEON would end up with two clients, each with a machine number unique to client, so should these clients each have unique machine numbers.
John D.
Second problem. This problem has been since the first time I started up a third client. When all three clients are engaged, the operating system shuts down the Startup folder console client:
[00:18:49] Completed 190000 out of 500000 steps (38)
[00:25:06] Writing local files
[00:25:08] Completed 195000 out of 500000 steps (39)
[00:31:25] Writing local files
[00:31:27] Completed 200000 out of 500000 steps (40)
[00:32:10] ***** Got a SIGTERM signal (2) from OS
Folding@home Client Shutdown.
Also, does it matter what number I put in client.cfg for "Machine ID"? For instance, could I just designate the three clients in the config file as 1, 2, and 3?
For the offending client, run it from a command console, let it run in a console on screen or minimized to taskbar. See if it still aborts. If yes, your limit is one client per pipe of HT CPU, or one client per logical CPU to a basic XP install-- unless, MAYBE, if you try what is below. IF no, XP does not like two startup clients with same name.
THEN, for the console client not run with the service creating software, try running it as a service after renaming client to another name so Widnows sees two distinct clients runnign from differnet folders, as differently named executables. EXCEPT for svchost, XP does not let many same-named services run in duplicate, but if one is called FAH4Client and one is called FaH4Console it might happily allocate resources to both and not try to allocate one set of resources for BOTH console clients, which is possible with XP when both services have the same name.
This identical naming may be part of the problem with two console clients on a single CPU or in your case a logical-to-XP CPU. AND, I know that CLIENTS do not care what they themselves are named. Core names are important, however-- Core names should not be changed unless you want to rewrite the CLIENT code and CORE code and each WU you get as you get it.
Let's just say core names are failsafed in multiple places in code (WU header actually has the core required coded into it), and leave it at that. So, you might run into same core getting same name resulting in resource issues, but with different process tree names (based on your client being top of process tree for each client, calling a core which is a subpart of that process tree if things were done right for XP for client) and IDs based on the CLIENT name, this is less likely to be an issue if ALL are forced to -local and have their own work folder home and client folder homes.
John D.
John D.
I have one gui and two consoles I renamed the 2nd console "FAH4Console2.exe and gave it a machine I.D. of 3 ( GUI is 1 and the other console is 2 ) added the local flag and advmethods and it seems to be running fine. The frame time on the GUI before the 3rd client was 6:21 and is now 8:22 the 1st console was 6:01 before and now 8:13
So I have added 4:13 to my frame times on those two clients and hey look at the frame time on my third client 4:18 looks like I lost 5sec. So it may not be worth the trouble. But a peek at the CPU usage shows I still have some headroom ?
What do you think??
Scott
different *.exe file names
all console Folding versions?
machine IDs
each client resides in its own folder on my d drive
each client has a different "machine ID" The GUI defaults as "1" so the two consoles are I.D. 2 & 3 These are set by adding the -config flag to the startup line on the console version
I renamed the 3rd client from "FAH4Console.exe" to "FAH4Console2.exe"
It seems to be running fine I will keep you posted of any glitches
Scott
Top 50 here I come !!
OK, I did you what did as far as configuration, naming, and flags are concerned. Now my second client, the one that is started through FireDaeman, won't start correctly. Here's the log:
rguments: -service -verbosity 9 -advmethods -config
[03:52:40] - Ask before connecting: No
[03:52:40] - Use IE connection settings: Yes
[03:52:40] - User name: Leonardo (Team 93)
[03:52:40] - User ID = 7FCF37645D32A9EF
[03:52:40] - Machine ID: 2
[03:52:40]
[03:52:40] Configuring Folding@home...
That last entry was already several minutes old when I copied the text.
Let us know how you make out.
Scott
No progress at all yet, not even one percent indicated on Electron Microscope. Maybe because it's working(?) on a p933_fkcomps, "Double Gromacs Core"?
It's way too early to give an estimate if three slower clients are/will be producing more than two faster clients. I'll report when I have a good estimate.
Thanks for your help, everyone!
All three of mine are still running fine. I did get a couple of single gromac cores running. still a little better point production than two. But with three of the double gromacs it runs much more efficently.
Hey look at my sig. I hit 1000 WU's today
Scott
Oh, FireDaemon does NOT like other service running same-named or similar-named things that are not started before IT and are not system services started by XP's CORE. ESPECIALLY if they try to use any of same resources.
So, for this application of more than two clients, try takign FireDaemon out of picture, as a good easy rule of thumb. For two, one as service and one graphical, FireDaemon is fine. BUT, it itself registers as a priority service. And it is a Daemon in the sense of a reactive and active service that can host one app as a service.
Daemons are used in Unix\Linux world, they are functionally reactive service HANDLERs and optimizers (aka co-ordinators) that want autonomy within their scope. The Linux and BSD and Unix kernles co-ordinate Daemons, which co-ordinate app sets for system functions. Think of kernel in Linux as a DAEMON co-ordinator and limiter, above all else-- yes it also translates between drivers and DAEMONS with an internal messaging function subset of things, but one of its major functions is sytem integrity in the way it does not allow DAEMONS to overstep themselves. We might see more of them when Longhorn comes out-- many more of them in terms of function. They are like a set of functionally interacting ActiveX or a Java Jar for graphics manipulations plus system service sets that support certain functions. In Linux, LPD is the printing co-ordinator (It can work with a DAEMON called cupsd also), FireDaemon is a one-app-as-service co-ordinator and optimizer in the Windows world.
FireDaemon brings limited function of this sort to the Windows world of ideas.
John D.
Already running 4...
Yup - discovered that through trial and error. I'm running all three of my clients now via straight console, putting the icons in the system tray with TrayIt.
Folding Client had ring one priority, almost the same as Window's kernel things, and kernel and GUI parts of Windows XP could not spawn NotePad window in less than 25 minutes. I fought for hours with that beast of a stupid idea I had-- wanted to see if it COULD do this-- needless to say, that possibility was carefully removed by Stanford once I doumented howto and results. Result is clients that will not take more resources up to too high a limit in new clients, and the correlative ideas being proven here are that under certain circumstances you CAN run more instances at once than you could before as each is more co-operative than before.
So, try three on one CPU, two on other. PLEASE stop there unless you have lots of backups, please, or want to see Windows XP pretend it is on a 133 MHz processor for a LONG while while you VERY slowly fix undocumented things. Pioneering was fun, but THAT result was on my business box.... I HAD to fix or lose three weeks work in one project.
John D.
The rest was WHY, figured some folks here might want to know why.... the idea FireDaemon uses came from the Unix world, Windows does not have proper infrastructure for it to not fight XP under some circumstances.
Happy to see it confirmed again, though.
John D.
If you keep running 3 clients of normal gromacs I dont think you can keep that .95 performace fraction. And if it goes below .80 you will no longer get any gromacs at all.
Just watch what WUs you get. I would only run the third client at a lower priority when you have a double Gromac and the third client would be single gromacs.