Video Card Folding

This is a discussion on Video Card Folding within the Forgotten Hope on Folding@Home forums, part of the Battlefield Mod: Forgotten Hope category; Well I havn't been keeping up with F@H happenings so I totally missed that they now support Nvidia as well ...

Forgotten Hope on Folding@Home The forum for the FH2 Distributed computing team #84762. Join up and fold protiens for a good cause!

Reply
 
LinkBack Thread Tools Rate Thread Display Modes
  #1  
Old July 9th, 2008
Pro-Filer thinks I'm cool!!
 
Join Date: November 11th, 2003
Location: California
Posts: 418
Rep Power: 13
Rad-FH is considered a cool person by Pro-FilerRad-FH is considered a cool person by Pro-FilerRad-FH is considered a cool person by Pro-Filer
Default Video Card Folding

Well I havn't been keeping up with F@H happenings so I totally missed that they now support Nvidia as well as the new generation ATi cards. Don't ask me for any pointers on how this works since I havn't tried it yet. I think I'll give it a go come cooler weather.

I just browsed across it on the F@H web page Folding@home

Anyone want to try this and give a report that would be really cool!
Reply With Quote
  #2  
Old August 2nd, 2008
The Internet ends at GF
 
Join Date: October 25th, 2004
Posts: 103
Rep Power: 0
imlittlev should make some friends
Default Re: Video Card Folding

apparently they dropped support for older cards (x1950xt here)?

I have 8.7 drivers... tells me its not supported.
Reply With Quote
  #3  
Old August 7th, 2008
I post to get attention
 
Join Date: November 19th, 2006
Posts: 62
Rep Power: 0
HarapAlb is a n00b
Default Re: Video Card Folding

I did not pay much attention to the new developments with F@H either. Until yesterday when I read on another forum that an 8800 can produce from 3k to 5k PPD with the new GPU client.
I installed the console GPU client last night and while it uses 100% of one CPU core in addition to the GPU, it is good for about 4800 PPD on my system (they give big bonus points for this client).

The configuration for the console GPU client is very straightforward and similar to the one for the console SMP client.

A dedicated Intel quad core machine + Nvidia G92 GPU can produce around 7k PPD between an SMP client and a GPU client, using three of the CPU cores and the GPU.

Put those GPUs to work. We need to make it into the top 400. We have spent several months within striking distance of top 400.
Reply With Quote
  #4  
Old August 14th, 2008
Pro-Filer thinks I'm cool!!
 
Join Date: November 11th, 2003
Location: California
Posts: 418
Rep Power: 13
Rad-FH is considered a cool person by Pro-FilerRad-FH is considered a cool person by Pro-FilerRad-FH is considered a cool person by Pro-Filer
Default Re: Video Card Folding

Quote:
Originally Posted by HarapAlb View Post
Put those GPUs to work. We need to make it into the top 400. We have spent several months within striking distance of top 400.
Damn I need to get back into the game here. I just noticed all my clients have been sitting dead in the water the last few days. I guess they changed the SMP client again and expired the old one.

So you are saying you can run one G92 and 3 cores of a quad? Do you know if you can run 2 G92 clients and a 2 cores of a quad? I have SLI 8800GTS G92's in one machine.
Reply With Quote
  #5  
Old August 14th, 2008
I post to get attention
 
Join Date: November 19th, 2006
Posts: 62
Rep Power: 0
HarapAlb is a n00b
Default Re: Video Card Folding

In my case, I run an SMP on 2 of the cores, and the GPU2 client on a 3rd core + the GPU. One CPU core is idle.
One could run an SMP on 3 cores and I guess they would do somewhat better. However, my SMP is in a Linux VM and I can assign at most 2 cores to a VMWare machine.

Yes, you can run more than one GPU client on one machine. As with the SMP clients, each one must have its own directory and machine id.
Additionally, you need to specify which GPU to use for each client using the -gpu N argument. Follow this link: Folding@home - FAQ-ATI2

So in theory, on a quad core machine you could run an SMP client on 2 of the CPU cores, and 2 GPU clients on the other 2 cores + 2 GPUs.
Or you could just run the the two GPU clients. They produce a lot more points right now.

Finally, I have a custom affinity changing program that I wrote when I got my quad to deal with my setup (Linux VM machine + a Windows SMP client at that time, and now VM machine + Windows GPU client).
Its advantage over the one that you found (which I never used since it was detecting only Windows SMP clients) is that it also detects which 2 cores of an Intel quad are on the same die. It places one client onto the two cores of one die, and the second client on the second die. Processes can communicate faster through the shared L2 cache if they are on the same die.

I was planning to make it a bit more general where you can modify a configuration file to create profiles for different programs (not just for folding) and release it if anyone is interested. Right now it is hardwired for my setup.
Reply With Quote
  #6  
Old August 17th, 2008
Pro-Filer thinks I'm cool!!
 
Join Date: November 11th, 2003
Location: California
Posts: 418
Rep Power: 13
Rad-FH is considered a cool person by Pro-FilerRad-FH is considered a cool person by Pro-FilerRad-FH is considered a cool person by Pro-Filer
Default Re: Video Card Folding

Quote:
Originally Posted by HarapAlb View Post
Yes, you can run more than one GPU client on one machine. As with the SMP clients, each one must have its own directory and machine id.
Additionally, you need to specify which GPU to use for each client using the -gpu N argument. Follow this link: Folding@home - FAQ-ATI2
Ah man, I gave up on the SLI. I followed your link's tut, plus a few others but it kept running 2 instances on the same video card.. or at least the PPD indicated that.. it got cut in half and it never used a 2nd CPU core. I just yanked the card out and put it in my pimp rig dedicated folder. SLI was really overkill for that one machine anyway since I don't get to game anymore.

I also fired up a 3rd quad for this. Stangly it's only getting half of the PPD as the other 2 rigs. The other 2 rigs have a factory overclocked 8800GTS G92 and are running at 4997 PPD while my quad with the 8800GT is only getting 2693PPD. It's also factory overclocked. I thought the GTS's were only a hair off of the GT's performance wise... guess not.

I'm not bothing firing up my 4th quad yet. I looked at the ATi points and they are only half of the Nvidias points so not worth the extra heat right now. Maybe this winter. I have an ATi HD 3870 in that machine.

I'm not running any affinity on these. I just installed the GPU clients to use CPU2 and the single SMP client to use CPU1 on each machine. Would setting the affinity benefit any?
Reply With Quote
  #7  
Old August 17th, 2008
I post to get attention
 
Join Date: November 19th, 2006
Posts: 62
Rep Power: 0
HarapAlb is a n00b
Default Re: Video Card Folding

Quote:
Originally Posted by Rad-FH View Post
Ah man, I gave up on the SLI. I followed your link's tut, plus a few others but it kept running 2 instances on the same video card.. or at least the PPD indicated that.. it got cut in half and it never used a 2nd CPU core. I just yanked the card out and put it in my pimp rig dedicated folder. SLI was really overkill for that one machine anyway since I don't get to game anymore.
I do not have SLI to try it myself, so all I can do is speculate on a few reasons about why it does not work well.

First, did you try disabling SLI and running your cards in multi-display mode? I think if SLI is enabled the driver might see both cards as device 0. Not really sure about this since I never used SLI. From what I read here: Guide to running the client on multiple NV GPUs - Xtreme CPU
you also need a monitor connected to each card to get it recognized under Vista. That seems quite a lot of trouble.

Second, did you check the affinity of processes FahCore_11.exe in Windows Task Manager? I know when I first ran the GPU client, before I modified my affinity changing program, the FahCore_11.exe process had affinity set to CPU 3 by default. So I wonder if you run two GPU clients from two different directories, if maybe they both get assigned to core 3 or some other different core.

You can check the affinity of any process in the task manager (press Ctrl+Shift+Esc to open it up, go to the "Processes" tab, right click on any process and select "SetAffinity..." to check or change its affinity). You should have one FahCore_11.exe process for each GPU client. The SMP client processes are named diferently (FahCore_a*.exe).

If both GPU clients use the same CPU core, that can easily cut your PPD in half. The performance of the GPU client is very dependent on the performance of the CPU.

Quote:
I also fired up a 3rd quad for this. Stangly it's only getting half of the PPD as the other 2 rigs. The other 2 rigs have a factory overclocked 8800GTS G92 and are running at 4997 PPD while my quad with the 8800GT is only getting 2693PPD. It's also factory overclocked. I thought the GTS's were only a hair off of the GT's performance wise... guess not.
Yeah, the 8800GT should be slightly slower. Checking the results in Folding Forum • View topic - NVIDIA GPU2 PPD Thread [Preliminary Results] I see the PPD for 8800GT is all over the place, from 2.7k to 5+k. It depends on the CPU as well. So if your 3rd quad is clocked slower than the first two, it is going to produce less.

Quote:
I'm not bothing firing up my 4th quad yet. I looked at the ATi points and they are only half of the Nvidias points so not worth the extra heat right now. Maybe this winter. I have an ATi HD 3870 in that machine.
You are producing more than at any other time right now anyway.

Quote:
I'm not running any affinity on these. I just installed the GPU clients to use CPU2 and the single SMP client to use CPU1 on each machine. Would setting the affinity benefit any?
By CPU1 and CPU2 you mean the machine id? I thought all your clients should run under different machine ids, even if spread out across different physical machines. This is not something strict, but helps Stanford to keep a separate profile for each client (hardware characteristics, past performance, etc.).

Setting the affinity helps with cache locality. The impact on an application's performance vary from application to application. You've noticed it for yourself with the SMP client.

The problem of assigning N processes to M CPUs in an automatic way to maximize performance, is very complex for the general case. There are many trade-offs, especially if the processes or the CPUs are heterogeneous. This is an active area of research.

Sometimes there are also usability considerations. My machine is not dedicated for folding. My Linux VM client is running 24/7, even while I play games. So I assign the VM to half of the chip, while the other programs use the other half. The two halves have separate cache hierarchies and share only the bus to memory. This way I keep disturbances to a minimum.
When I do not use my desktop for heavy stuff (most of the time), I let the GPU client run as well.

You could test the impact of different affinity settings by changing the affinity manually in the Task Manager (following the instructions above). But it takes some time to do this experiment well. After each change you need to let it run for a few percentage poinst to see how it affects the PPD production.

As I said, I want to do my program a bit more general which would make it easier for such experiments, but this will take a bit more time.
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -7.