Ubuntu question: how many SMP clients to run?

Joined
Apr 3, 2008
Messages
43
I'm new to Ubuntu--just started folding on it yesterday. I have a Q6000, so I installed and ran one instance of the Linux SMP client to start off with. I was a little surprised when I checked the System Monitor to see that my cores were:

CPU1: 55%
CPU2: 90%
CPU3: 60%
CPU4: 55%

(+/- 5%)

So just recently I installed and ran a second instance of the SMP client, with the result that the cores were averaging about 75-80%. I found this curious. So I decided to see how many SMP clients it would take to max out all my cores.

I added a third instance of the SMP client, with the result that the cores were averaging about 85-90%.

Finally, I added a fourth instance of the SMP client, with the result that the cores were averaging 95-100%.

WIth 2 GBs of memory on the system, I'm pretty comfortable with the 585 MBs currently in use with 4 SMP clients running. Do you think the Ubuntu's system monitor is under-reporting CPU usage? And, should I continue to run 4 SMP instances? Has anybody else using Ubuntu as a dedicated folding OS, encountered these circumstances?
 
No, I don't think it is under-reporting.

You can pop over to the 'Processes' tab in System Monitor and see load averages. Which (simply) is the number of processes waiting on processor time in the last 1, 5, and 15 minutes. (Just an easy way to get some history, since the Resources tab is all about now now now).

I have some 2-core ubuntu boxes that I have folding 24/7 with only 1 SMP client running. It seems to keep the 2 cores at 80 - 85% all the time.

You could use fahmon (it does work on linux, if memory serves. My boxes are all commandline, so no use to me..) to see what you're getting as an aggregate PPD for that box with 2, 3, and 4 SMP clients running. Fahmon's PPD value is inaccurate, but its math is constant, so it'll give you a good indication of where your sweet spot is.

I'm going to off-the-cuff guess that it's going to be 2 or 3 SMP clients.

I've got a quad at work that I am going to be folding on (for 'burn in' :p ). I'll see what I have to do to keep it busy.
 
I think the best way to find out how many clients results in maximum production efficiency is to run a F@H monitoring program. Find out some actual PPD figures with FahMon or similar app.

 
I would see what your frame time is ...
First with one client .... then two .. and so on ....


 
Here are some updates in terms of PPD running 1 SMP vs. 4 SMP.

All day today my system has been working on a Project 3064 @ 1753 points. The frame time has been 7 min/%, which means it completes the WU in 700 min.

SMP #1 (3064) --> 1753 points/700 min = 2.5 points/min * 1440 min/day = 3606 PPD

now after adding 3 SMP instances to this first one:

SMP #1 (3064--1753 points--same WU as above) --> 24.1 min/frame = 1047 PPD
SMP #2 (3065--2144 points) --> 34.5 min/frame = 895 PPD
SMP #3 (3029--1440 points) --> 21.2 min/frame = 978 PPD
SMP #4 (3062--1732 points) --> 23.6 min/frame = 1057 PPD

TOTAL of SMP #1-4 = 3977 PPD

DIFFERENCE of 1 SMP instance vs. 4 SMP instances = +371 PPD


I think these numbers suggest that 4 instances is better than 1 instance, despite the fact that I caught some notoriously low PPD WUs (3065, 3029).

Suppose I caught 4 instances of Project 3064 WUs, I could potentially accrue 1047 PPD/SMP instance (4188 PPD, +588 PPD difference over the 1 SMP instance with which I started the day running).

One can also suppose a scenario in which I caught 4 instances of Project 3065 WU, I then would accrue only 895 PPD/SMP instance (3580 PPD, -26 PPD). However, with just 1 SMP instance I could also consecutively catch 4 Project 3065 WUs. So this line of argument doesn't hold.

Rather, even if I caught 4 consecutive Project 3064s with 1 SMP instance open, I could not "capitalize" on the good PPD nature of the WU, as efficiently as I could running 4 instances of the SMP. This idea leads me to believe that 4 instance is the best setup for a quad core under Linux.
 
Work units are and have always been the priority, the points are a bonus. I’d much rather know whatever I’m folding is running under 24 hours per WU and nobody is having to refold my work.

Stanford has made that clear time and time again and since folding is ultimately about the cure I try to knock the WU’s out as fast as possible;)


 
You might see what running two instances does for you, overclocked you should be completing everything well within the time frame stanford would like. You can even use taskset to assign cores for each running client; depending on which cores are paired you can run like this:

Code:
taskset -c 0,1 ./fah6 -forceasm -smp -local -verbosity 9
Code:
taskset -c 2,3 ./fah6 -forceasm -smp -local -verbosity 9

These would be run in different directories, of course; I use folding1 and folding2 (yeah, original). First client would run on cores 1 and 2, second on 3 and 4. If you use lm_sensors to monitor your temperatures, the cores closest in temp are usually the pairs IIRC. Adjust the numbers accordingly.


 
Enough with the moralizing already. I bought a dedicated system just to fold. Also points are a measure of value to Stanford too. The more points a user contributes, the more "work" a user does for Stanford. I was finding that I was completing WUs with like 85% time remaining and without utilizing all my processor's potential, so I found a way to contribute more "work" with my existing hardware (95-100% CPU usage across 4 cores) by adding 3 additional SMP clients, all of which will meet Stanford's deadlines. Besides, if Stanford wanted the work units back faster than their deadlines stipulate, they would provide some sort of incentive for returning them as fast as possible. You can talk about efficiency in the language of "do-it-for-the-cause" or of points. Often numerical arguments are more persuasive, and using them does not necessarily reflect the values of the speaker.
 
Be warned that p2619 is out there.
It is a memory hog and needs 200 Mb of memory per core, 800 Mb per client.

I also think you are overloading your memory bus as it is by running 4 clients.
The PpD increase by going from 4 cpu cores down to 2 is around 15-20%.
The PpD increase by going from 2 cpu cores down to 1 is also about 15-20%.
So 4 clients on a Quad should run around 32% faster.
But your only running around the 16% faster.

You need to work out your Points per Day per Ghz numbers with all the various combos of clients running.
That way you can see if the 3rd and 4th client make that big a difference.

Also Stanford does want the WU back as fast as possible.
The normal trade off is to only run 2 clients on a Quad.

Luck ................. :D
 
Enough with the moralizing already.

You still haven't told us if you're hitting the preferred deadlines with all of the instances.

If not, you're hurting the project. As BillR said, if you don't hit the preferred deadlines, your work unit is automatically redistributed to someone else. It's not moralizing, it's common sense.


 
IMHO, the sweet spot is 2 clients, not more. This will ensure all WU is returned under 24 hours and the production is still nearly maximized. You can also toss a console client to pick off stray cycles but don't expect a lot of points.

My Q6600 run 2 clients with 2619 WU each and console client for a total of 3300 PPD (those 2619 WU kill off the PPD, I was averaging about 4800 ppd with other units).

 
Did he find that ever ending quad core? No matter how many clients you run you can load more?!

 
Welp, now I'm totally confused :confused:

I was under the impression the best way to fold with a Intel quad (Q6600, Q9450, etc) was by running (2) two instances of the LinuxSMP client.

Would someone please chime in, I have pretty much always made the prefered deadline and ATM I'm in limbo between a Q6600 or a Q9450 (they seem hard to get lately?)



THANX
 
jws2346, if it is for a pure folding box, a Q6600 is the best choice. The Q9450 is only good for your main PC or as something to play with.
 
After some experimentation, good advice (using taskset), and information (what a "preferred deadline" means), I am now running two SMP clients in Xubuntu (returning my WUs in under 24 hours) using only 300 MB RAM, and getting more efficiency than running 4 SMP instances. Thanks to everyone for the help figuring this out.
 
After some experimentation, good advice (using taskset), and information (what a "preferred deadline" means), I am now running two SMP clients in Xubuntu (returning my WUs in under 24 hours) using only 300 MB RAM, and getting more efficiency than running 4 SMP instances. Thanks to everyone for the help figuring this out.
I tried X, went to K.
Are there anythings you prefer about Xubuntu?
 
I tried X, went to K.
Are there anythings you prefer about Xubuntu?

Sorry if this is off topic, but I just couldn't help myself :rolleyes:

This post is in no way meant to be critical of anybodys post, it's just my own personal opinions.

IMO the topic about whether you like KDE, GNOME, XFCE4, or whatever desktop GUI you prefer in Linux is a topic that's been beat to death like the "Which is best Windows or Linux" topics. (or dead horse or whatever :eek:)

Personally I pick whichever desktop GUI that comes with the flavor of Linux I'm using at the time.

IMO, without a doubt, KDE is the most configurable GUI and the GNOME GUI is the most user friendly. I think XFCE4 is a great GUI because it's "lighter" on system resources than either KDE or GNOME and it still has some reasonable tweaks for the desktop. (some people with dedicated folding machines could give a rats poop about a desktop GUI using LinuxSMP)

The below artical has some interesting things to say about some of the Linux desktop GUI's The KDE, GNOME, XFCE and WindowMaker GUI's. (I dislike WMaker GUI because I don't like Konqueror (I likeNautilus) for a file manager and use Firefox or Opera for a Internet browser (I've always used FireFox or Opera in Linux, personal opinions again :p)
http://ktown.kde.org/~seli/memory/desktop_benchmark.html

Edit: Yeah, I know you can just customize the WMaker GUI, but there goes your save on system resources. To tell you how "anal" I can be sometimes in XFCE I always replace "mousepad" with "gedit" (to me it's easier to use) anytime I'm using any of the XFCE versions.

 
Yes, for a dedicated folding box, Xubuntu might be a better option for the low resources use. Don't look from the daily use view but as a pure folding box view ;)

 
I tried Ubuntu, Xubuntu, Kubuntu, Fedora, OpenSuse and a few other distros and the PPD was about the same for all. Xubuntu does use a little less RAM but doesn't fold any faster. I would only recommend X for PCs that don't have much RAM. I prefer Kubuntu.

I used 2 SMP clients.
http://foldingforum.org/viewtopic.php?f=12&t=124
 
If the command line doesn't scare you, give Ubuntu Server edition a try (Or CentOS if you prefer Redhat Enterprise Server). By default it doesn't have any desktop applications or graphical interface. Just install the bare minimum to run the FAH client. I suppose you could install GPM if you really needed to use the mouse... ;)

 
I haven't messed a lot with different Window Managers, just mainly Gnome and KDE. However, I've never seen a difference for folding between them. To a certain extent, I doubt I would see much if any difference running CLI only other than a GUI. This is mainly because in many cases the difference is only in RAM usage. Even then, it's almost a moot point because anything that isn't needed in RAM at the time will be booted to the swap file when something else needs the RAM. If it's a folding only box this is not usually something to worry about. Most of the things for the GUI are going to be pushed into swap if something else like folding needs the RAM.

Also, a bare install that doesn't have a lot of unnecessary programs starting up is not likely to chew up much in the way of cycles especially when the system is not actively being used for anything other than folding.

I used openSUSE for my VMs and much of the base install is stripped away because a lot of it I don't need for just folding. I could strip it down a lot more than I currently do but I'm lazy. Basically, I rip out all multimedia stuff, office stuff, games and a few other things from the base install and make sure Samba and NFS are installed for network sharing. I don't remember what the base install uses for disk space, but after the ripping out is done, I'm down to around a 1 gig install footprint. That's not too bad as far as I'm concerned even though I could probably still drop that considerably if I did some more investigation and wanted to take the time to trim it a bit more. Even after setting up a swap partition and the install, I still have more free space left on the 6 gig VM than used space. The next time I do one I'll probably knock it down to 3 or 4 gig for the total VM size.

 
I want a distro for headless folding combined with being a file server.
I need things like a minimal editor, VNC, samba, NFS, networking, rsync but don't give a darn about multimedia apps, dvd burning, etc.
Any recommendations?

 
Back
Top