performance comparison between v6 and v7 clients?

Moderators: Site Moderators, PandeGroup

performance comparison between v6 and v7 clients?

Postby alpha754293 » Wed Jan 09, 2013 4:29 am

Has anybody compared the performance between the v6 and the v7 clients?
alpha754293
 
Posts: 638
Joined: Sun Jan 18, 2009 1:13 am

Re: performance comparison between v6 and v7 clients?

Postby Joe_H » Wed Jan 09, 2013 4:46 am

The performance is going to be basically the same. The clients do not do the actual folding, that is done by the FAHCores. Except for the ones that are available only to V7, the same cores are used by V6 and V7. The clients handle downloading and uploading the WU's, the cares as needed, and starting and stopping processing by the core software.

One advantage that the V7 client has is that it will download a new WU once processing of the current WU is done. It does not wait like the V6 client until the completed WU is packed up and uploaded before getting a new WU. This can keep a system processing several more minutes each day.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
Joe_H
Site Admin
 
Posts: 4466
Joined: Tue Apr 21, 2009 4:41 pm
Location: W. MA

Re: performance comparison between v6 and v7 clients?

Postby alpha754293 » Wed Jan 09, 2013 5:12 am

So I remember with the v6 clients that if you wanted to run a SMP run and also a GPU run as well, you needed to download the GPU client separately.

If I wanted to be able to start/stop/"pause" the GPU client independent of the CPU client, can I still do that with the command-line version or do I still need to run the separately?
alpha754293
 
Posts: 638
Joined: Sun Jan 18, 2009 1:13 am

Re: performance comparison between v6 and v7 clients?

Postby codysluder » Wed Jan 09, 2013 4:24 pm

You cannot manage any console client when it's running except if you count killing it with your OS. You can manage a V7 client when it's running if you send messages to it, either from FAHControl or via an external telnet client. How do you plan to start/stop/pause the individual slots?

From the tone of your question, it sounds like you prefer to run two clients so that you can kill them one-at-a-time. You can do that with either V6 or V7 although setting up two V7 clients is more complicated than setting up two V6 clients. It's designed to run multiple FahCore's using multiple slots but there's no requirement that you do so. It only gets complicated because by default, you'll h ave two clients listening for messages on the same port so if you ever want do use the message interface, you'll need to reconfigure one of them to listen on a different port.
codysluder
 
Posts: 2128
Joined: Sun Dec 02, 2007 12:43 pm

Re: performance comparison between v6 and v7 clients?

Postby alpha754293 » Wed Jan 09, 2013 6:28 pm

codysluder wrote:You cannot manage any console client when it's running except if you count killing it with your OS. You can manage a V7 client when it's running if you send messages to it, either from FAHControl or via an external telnet client. How do you plan to start/stop/pause the individual slots?

From the tone of your question, it sounds like you prefer to run two clients so that you can kill them one-at-a-time. You can do that with either V6 or V7 although setting up two V7 clients is more complicated than setting up two V6 clients. It's designed to run multiple FahCore's using multiple slots but there's no requirement that you do so. It only gets complicated because by default, you'll h ave two clients listening for messages on the same port so if you ever want do use the message interface, you'll need to reconfigure one of them to listen on a different port.


Has the idea/concept of a "slot" changed between v6 and v7?

As I recall, a v6 "slot" was referring to an abstract location where WUs are stored. And so, all data pertaining to the WU is indexed based on the slot number.

From the sounds of it (and please correct me if I'm wrong), a v7 slot could be either a CPU or GPU client, and ALSO within the client itself, the WU "boxes".

I wouldn't be opposed to using fahcontrol if I can exit out of the GUI while the cores are running the background (and that if I need to start/stop a fahcore, I can fire it back up (which takes a really long time if a GPU client is running)) or I can just end task/kill the running process. *shrug*
alpha754293
 
Posts: 638
Joined: Sun Jan 18, 2009 1:13 am

Re: performance comparison between v6 and v7 clients?

Postby Joe_H » Wed Jan 09, 2013 6:37 pm

If FAHClient is started before FAHControl, then FAHControl can be exited at any time. This is automatically done when F@H is installed as a service, though if you are going to be running a GPU slot that is not an option for any newer version of Windows than XP. So if you set things up to start FAHClient first, then you can leave it running in the background and only open FAHControl when you need to. If you don't want to open FAHControl, there are scripts to talk to FAHClient and start or pause individual slots or the whole client.

As for the slots, you have it right. There are folding slots for control of different cores - GPU, SMP or uniprocessor, and work slots to manage the different WU's being processed.
Joe_H
Site Admin
 
Posts: 4466
Joined: Tue Apr 21, 2009 4:41 pm
Location: W. MA

Re: performance comparison between v6 and v7 clients?

Postby alpha754293 » Wed Jan 09, 2013 6:43 pm

Joe_H wrote:If FAHClient is started before FAHControl, then FAHControl can be exited at any time. This is automatically done when F@H is installed as a service, though if you are going to be running a GPU slot that is not an option for any newer version of Windows than XP. So if you set things up to start FAHClient first, then you can leave it running in the background and only open FAHControl when you need to. If you don't want to open FAHControl, there are scripts to talk to FAHClient and start or pause individual slots or the whole client.

As for the slots, you have it right. There are folding slots for control of different cores - GPU, SMP or uniprocessor, and work slots to manage the different WU's being processed.


So...dumb question then - why would you call the GUI the client, when it's really the fahcores/"slots" that are the clients (a la v6 terminology)? Wouldn't the v7 "client" really just be the manager, but it doesn't actually run anything (since the actual "clients" that runs the cores (again, a la v6 terminology))?
alpha754293
 
Posts: 638
Joined: Sun Jan 18, 2009 1:13 am

Re: performance comparison between v6 and v7 clients?

Postby Joe_H » Wed Jan 09, 2013 7:27 pm

I don't call the GUI - FAHControl - the client, if I have anywhere that is by mistake. It is just the visible portion of the software. There is a page that describes the functional layout of the full V7 application, can't quickly locate it at the moment, but here is a synopsis:

FAHClient - manages the upload and download of WU's, starts or stops the FAHCores processing. It can be run standalone, and is the "client". Also launches a FAHcore watcher process to detect whether the core is operating.

FAHControl - used to configure the client, send control messages to FAHClient, provides a monitoring function, and provides a GUI interface to the folding client. It does not start the cores. If it is started first, in the absence of FAHClient running, it will launch FAHClient in a separate process.

FAHCores - the actual processing portion of the F@H software. These are not actually considered part of the client, downloaded and updated as required to handle different WU's. Launched by FAHClient.

FAHViewer - Optional informational viewer that displays the current protein being processed and information about the project. Does not need to be run. Communicates with the FAHClient process to get the data to display

Edit: The Windows installation guide includes a section on What's New in V7 that includes a short summary of the terminology.
Joe_H
Site Admin
 
Posts: 4466
Joined: Tue Apr 21, 2009 4:41 pm
Location: W. MA

Re: performance comparison between v6 and v7 clients?

Postby alpha754293 » Thu Jan 10, 2013 1:13 am

So here's another dumb question - has anybody ever ran tests to figure out how much resources the FAHControl uses? (especially when a FAH-GPU is running)? Cuz it's VERY slow to try to do anything in the GUI with it running, which means if I want to get anything done in a decent amount of time, I have to pause the GPU client, do what I need to do, then resume.

EDIT by Mod:
This discussion went off topic due to this question. That discussion has been moved into a new topic. "alpha75423" question involves a misunderstanding of the structure of the V7 client which will be discussed in the other topic.

The screen lag is not caused by the FAHClient GUI, but rather by the FahCore which enqueues packets of work for the GPU to do. That's true for both V6 and V7 so it doesn't belong in a comparison.
alpha754293
 
Posts: 638
Joined: Sun Jan 18, 2009 1:13 am

Re: performance comparison between v6 and v7 clients?

Postby bruce » Fri Jan 11, 2013 7:25 am

Your comment got moved to the other topic but it does have some validity.
alpha754293 wrote:That's why I like the command-line clients because they're super lightweight. And if there's a way to suppress output to the console completely (and have it all dump it to a file instead), which then I would be able to cat remotely; that's even better.

There IS logic to the madness.


There's no doubt that the CLI client (whether it's V6 or V7) is lighter weight than the V6 GUI client or the V7 FAHClient with FAHControl also running. In both cases, you're welcome to choose to run the GUI components or avoid that extra overhead. It's not a basis for comparing V6 with V7, nor does it impact the screen lag measurably. As you've already discovered, you can pause the GPU client or use one of the other suggestions to address that issue ... but that's another topic.
bruce
 
Posts: 22434
Joined: Thu Nov 29, 2007 10:13 pm
Location: So. Cal.

Re: performance comparison between v6 and v7 clients?

Postby alpha754293 » Fri Jan 11, 2013 2:25 pm

alpha754293 wrote:So here's another dumb question - has anybody ever ran tests to figure out how much resources the FAHControl uses? (especially when a FAH-GPU is running)? Cuz it's VERY slow to try to do anything in the GUI with it running, which means if I want to get anything done in a decent amount of time, I have to pause the GPU client, do what I need to do, then resume.

EDIT by Mod:
This discussion went off topic due to this question. That discussion has been moved into a new topic. "alpha75423" question involves a misunderstanding of the structure of the V7 client which will be discussed in the other topic.

The screen lag is not caused by the FAHClient GUI, but rather by the FahCore which enqueues packets of work for the GPU to do. That's true for both V6 and V7 so it doesn't belong in a comparison.


@Mod:
But if you're (or some other mods are) calling the V7 client (FAHControl) a client and the FAH-gpu.exe also the client - that's a problem with your nomenclature, and not the question.

(cf. "One advantage that the V7 client has is" - Joe_H (Source: viewtopic.php?p=233280#p233280))

Also cf. "Please see the FAHControl (client), FAHClient (slot)..." (Source: http://folding.stanford.edu/English/WinGuide). Even the guide calls FAHControl the client, and the client the client.

And one of the HUGE differences between the v6 and v7 GPU is you can add extra flags at runtime (from the command-line) which I don't think that you can do that with the v7 client (not without having at least one other window open, which has multiple tabs). So yeah, it affects performance. But hey...organize it however you want. I don't really care.
alpha754293
 
Posts: 638
Joined: Sun Jan 18, 2009 1:13 am

Re: performance comparison between v6 and v7 clients?

Postby Joe_H » Fri Jan 11, 2013 2:46 pm

alpha754293 wrote:(cf. "One advantage that the V7 client has is" - Joe_H (Source: viewtopic.php?p=233280#p233280))

Please read that again. I did not mention FAHControl in that statement at all. I was referring to the client as a whole, that function of downloading a WU is done by the FAHClient component, not FAHControl.

As for your comment on the WinGuide, yes that is true. But it is later in the document and the first mention at the Express Install states:
The installer includes the new FAHControl (client manager) interface software, the new FAHClient (slot manager) software, and the new FAHViewer (viewer) software.

The other spots can be fixed up to be consistent.
Joe_H
Site Admin
 
Posts: 4466
Joined: Tue Apr 21, 2009 4:41 pm
Location: W. MA

Re: performance comparison between v6 and v7 clients?

Postby art_l_j_PlanetAMD64 » Fri Jan 11, 2013 3:47 pm

If your goal is to truly get the maximum performance out of a system by eliminating unnecessary GUI display activity, here is a way to do it:
1) Install a true Linux OS on the computer (ditch Windows and Cygwin)
2) Install and run FAH using the Linux guide http://folding.stanford.edu/English/LinGuide

Now, the following instructions will vary a bit according to which Linux you have installed, this is for Debian v6.0.6 that I am running here:
1) After you have logged in and everything is running, open a root terminal (Applications -> Accessories -> Root Terminal) (you will have to enter the root password)
2) Enter the command /etc/init.d/gdm3 stop (this will stop the GNOME Display Manager gdm3 and the X server) (the display will go blank)
3) Press Alt-F1 to get to a CLI, you will then have to login with your username and password
4) The FAHClient is still running, you can prove this by running the command ps ax | grep FAH (the output from this is shown below):
Code: Select all
 2843 ?        Sl     2:06 /usr/bin/FAHClient /etc/fahclient/config.xml --run-as fahclient --pid-file=/var/run/fahclient.pid --daemon
 2849 ?        Sl    12:07 /usr/bin/FAHClient --child --lifeline 2843 /etc/fahclient/config.xml --run-as fahclient --pid-file=/var/run/fahclient.pid --daemon
10831 ?        SNl    0:31 /usr/bin/FAHCoreWrapper /var/lib/fahclient/cores/www.stanford.edu/~pande/Linux/AMD64/Core_a4.fah/FahCore_a4 -dir 01 -suffix 01 -version 702 -lifeline 2849 -checkpoint 15 -np 2
12362 tty1     R+     0:00 grep FAH

5) To get back to the GUI, enter the command startx (you will be back in your desktop environment)
6) To exit the GUI (and X) and get back to the CLI, just logout (System -> Log Out user...)
7) You can repeat steps 5) and 6) as many times as you want.
art_l_j_PlanetAMD64
Over 1.04 Billion Total Points
Over 185,000 Work Units
Over 3,800,000 PPD
Overall rank (if points are combined) 20 of 1721690
In memory of my Mother May 12th 1923 - February 10th 2012
art_l_j_PlanetAMD64
 
Posts: 568
Joined: Sun May 30, 2010 2:28 pm

Re: performance comparison between v6 and v7 clients?

Postby art_l_j_PlanetAMD64 » Fri Jan 11, 2013 6:28 pm

Well, the test results are in, on shutting down the GUI/X Server to try to speed up the FAHClient processes.

System #1: AMD Athlon II X2 240
- average TPF with GUI/X Server running = 33:08 (1988 seconds)
- average TPF with GUI/X Server stopped = 32:39 (1959 seconds)
Improvement = ( ( 1988 - 1959 ) * 100 ) / 1988 = 1.46%

System #2: AMD Athlon 7550
- average TPF with GUI/X Server running = 38:22 (2302 seconds)
- average TPF with GUI/X Server stopped = 37:37 (2257 seconds)
Improvement = ( ( 2302 - 2257 ) * 100 ) / 2302 = 1.95%

As expected, the slower system (#2) showed the greatest improvement. The actual increase in PPD would be slightly higher than the percentages shown, due to the exponential nature of the QRB. But the improvement is so slight, that it's not worth it (in my opinion). I will leave these systems operating with the GUI/X Server running.
art_l_j_PlanetAMD64
 
Posts: 568
Joined: Sun May 30, 2010 2:28 pm

Re: performance comparison between v6 and v7 clients?

Postby alpha754293 » Sat Jan 12, 2013 2:41 am

art_l_j_PlanetAMD64 wrote:If your goal is to truly get the maximum performance out of a system by eliminating unnecessary GUI display activity, here is a way to do it:
1) Install a true Linux OS on the computer (ditch Windows and Cygwin)


Can't. I've already mentioned that t's a production system here.

*edit*
That and the fact that there isn't a v7 GPU client for Linux.
alpha754293
 
Posts: 638
Joined: Sun Jan 18, 2009 1:13 am

Next

Return to V7.2.x -- Windows/Linux Release & OSX Beta

Who is online

Users browsing this forum: No registered users and 1 guest

cron