Questions on adding 2nd GPU

salvorhardin

Senior member
Jan 30, 2003
390
38
91
I'm thinking about adding a second videocard to my computer. I'm currently running a 4830 and thinking about adding this 5850. I don't want to crossfire, I just want to be able to run different projects on each card. Would this be possible? My computers specs are in my signature and I also run two hard drives (2tb & 1tb).
 

bryanW1995

Lifer
May 22, 2007
11,144
32
91
I don't know about running different projects on each card, but you can allocate your % in BOINC to approximate it. Just have project X run 70% of the time and project Y run 30% of the time.
 

Sunny129

Diamond Member
Nov 14, 2000
4,823
6
81
to my knowledge there is currently no way to force one project to run on one GPU and another project to run on another GPU simultaneously. if you go ahead and install the 5850 in the same machine that has the 4830, BOINC will simply allocate a mix of work from your two (or more) projects to both GPUs, the amounts of which will depend on your resource sharing settings that bryanW1995 referred to. unfortunately the BOINC software has not yet been optimized for multi-GPU systems. this is not to say that you can't run 2, 3, or even 4 GPUs in the same box simultaneously (assuming you have a motherboard that'll handle up to 4 GPUs and sufficient cooling)...its just that BOINC won't allow you to allocate work from various projects to specific GPUs.

the BOINC developers are working on such issues, but i have no idea when we'll see a revised version of BOINC that'll allow us to do what you're asking...
 

Sunny129

Diamond Member
Nov 14, 2000
4,823
6
81
With Folding you can specify which GPU(s) to use.
thanks for the info...i was unaware of that. that being said, i should have specified that it is not possible to assign a particular GPU to 2 or more different BOINC projects simultaneously...

...but since you can tell your Folding client to use a specific GPU, and since you can tell BOINC to ignore a specific GPU, then in theory it should be possible to run F@H on one GPU and a single BOINC project on another GPU simultaneously.

this "how to" explanation may be a waste of time as the OP has not yet told us what projects he plans on running...nevertheless, i'll give it a go. as i've mentioned in the past, i don't Fold, and so i don't know my way around the F@H client or its GUI. so someone else would have to explain how to set up F@H to use a specific GPU. BOINC on the other hand i'm more familiar with. in order to instruct BOINC to ignore a specific GPU, you first need to know what GPUs BOINC recognizes. you can determine this by going to BOINC message tab (or the separate message box with later versions) and scroll to the top to see the startup section of the message log. here's the startup section of the message log on my work PC for example:

5/6/2011 9:08:40 AM Starting BOINC client version 6.10.58 for windows_intelx86
5/6/2011 9:08:40 AM log flags: file_xfer, sched_ops, task
5/6/2011 9:08:40 AM Libraries: libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
5/6/2011 9:08:40 AM Data directory: C:\Documents and Settings\All Users\Application Data\BOINC
5/6/2011 9:08:40 AM Running under account design2
5/6/2011 9:08:40 AM Processor: 1 AuthenticAMD AMD Athlon(tm) XP 2800+ [Family 6 Model 10 Stepping 0]
5/6/2011 9:08:40 AM Processor: 512.00 KB cache
5/6/2011 9:08:40 AM Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall 3dnowext 3dnow
5/6/2011 9:08:40 AM OS: Microsoft Windows XP: Professional x86 Edition, Service Pack 3, (05.01.2600.00)
5/6/2011 9:08:40 AM Memory: 1023.48 MB physical, 2.40 GB virtual
5/6/2011 9:08:40 AM Disk: 68.36 GB total, 30.15 GB free
5/6/2011 9:08:40 AM Local time is UTC -4 hours
5/6/2011 9:08:40 AM No usable GPUs found
note the bolded line at the end - my work PC is ancient and i don't have a GPU capable of supporting any modern BOINC project...hence the "no usable GPUs found" message. on my home PC, which uses an HD 3300 IGP for display purposes and an HD 5870 GPU solely for crunching, that same line in the startup section of the message log would actually be two lines of text (one for each GPU), and would read as follows:

5/6/2011 9:08:40 AM ATI GPU 0: ATI Radeon HD 2300/2400/3200 (RV610) (CAL version 1.4.900, 341MB, 56 GFLOPS peak)
5/6/2011 9:08:40 AM ATI GPU 1: ATI Radeon HD5800 series (Cypress) (CAL version 1.4.900, 2048MB, 2720 GFLOPS peak)
now in order to instruct BOINC to ignore one GPU or the other, you must place a cc_config.xml file in your BOINC data directory. a cc_config file is just a text file with a special file extension that BOINC recognizes. here's how to create one:

1) open Notepad (stay away from Wordpad or MS Word or any other text editor to avoid the inclusion of invisible characters that could cause syntax errors).
2) paste the following text:
<cc_config>
<options>
<ignore_ati_dev>n</ignore_ati_dev>
</options>
</cc_config>
...where "n" is the device #. so if i want BOINC to ignore my integrated video (the HD 3300), i substitute n with 0. likewise, i use n = 1 when i want to ignore the HD 5870.
3) save the file with the ".xml" extension (as opposed to the typical .txt extension of a text file).
4) place it in the BOINC data directory.
5) restart BOINC, as it will not recognize the existence of the new cc_config.xml file or its contents until BOINC is restarted.


...so to make a long story short, and assuming F@H is one of the projects you're considering running, you just need to figure out how to get F@H to use a specific GPU, and then tell BOINC to ignore that same GPU via a cc_config.xml file. BOINC will then default to running any GPU tasks on your other GPU while F@H runs strictly on the GPU you told BOINC to ignore.

*EDIT* - i forgot to note an important consequence of using a cc_config.xml file (specifically, one that contains instructions to ignore a particular GPU) in conjunction with BOINC - BOINC does not ignore GPU(s) on a project by project basis - rather it ignores the specified GPU(s) for all BOINC projects. in other words, your GPU(s) are either available to any and all BOINC projects that permit GPU crunching if no cc_config.xml file is being used, or not available to any BOINC projects at all if being ignored. hopefully the BOINC developers will introduce a revision sooner than later that allows specific GPUs to either be ignored or used exclusively by specific projects...but only time will tell...
 
Last edited:

salvorhardin

Senior member
Jan 30, 2003
390
38
91
Thanks for the replies. I'm was actually planning on switching the 4830 to f@h and keeping it there and the 5850 will be switching between collatz, milkyway, primegrid and f@h. Will use the config file when I install the card. Wasn't sure if having 2 different cards not being crossfired would have caused problems. Not running 2 independent projects isn't that big of a deal. Ordered the card, should be here by the end of the month. Will my psu be enough to power both cards? it has 2 6pin conneectors which I plan on using on the 5850 and using a molex-6pin adapter for the 4830.
 

salvorhardin

Senior member
Jan 30, 2003
390
38
91
While browsing the collatz forum I found a link to a guide that shows how to run two boinc projects for two different nvidia architectures. I followed the steps but adjusted the cc_config.xml so that each client has a gpu disabled. I am now currently running primegrid on my 4830 and collatz on my 5850. Some differences that I saw:
1) I was having problems when first setting it up because I would close the command prompt, not realizing that it was running the second client as a cli. After that everything went smoothly.
2)My cc_config.xml files:
Code:
<cc_config> [B](primary data directory)[/B]
  <options>
     <allow_multiple_clients>0</allow_multiple_clients>
     <use_all_gpus>1</use_all_gpus>
     <ignore_ati_dev>0</ignore_ati_dev>
  </options>
</cc_config>

Code:
<cc_config> [B](2nd data directory)[/B]
  <options>
     <allow_multiple_clients>1</allow_multiple_clients>
     <use_all_gpus>1</use_all_gpus>
     <ignore_ati_dev>1</ignore_ati_dev>
  </options>
</cc_config>
3) The shortcut created at the end of the walkthrough starts the cli, not the boinc manager. To start a second manager choose it under advanced and then use 127.0.0.1:9999 with the password created earlier in the guide (localhost:9999 didn't work for me).

With this setup I can pause my 4830 to watch movies and meanwhile my 5850 continues crunching.
 
Last edited:

Sunny129

Diamond Member
Nov 14, 2000
4,823
6
81
excellent find! while i'm not trying to do the exact same thing, i would love to be able to run S@H AP and MW@H simultaneously on a single card. perhaps i can use this "multiple client" method to achieve this very different result. you see, i have to ignore different GPUs in order to allow either S@H or MW@H to run without errors. i can't ignore both GPUs or else both S@H and MW@H sit there and do nothing. i had both testers and developers alike trying to help me find a solution on the S@H and MW@H message boards, but to no avail. it sounds like running multiple clients is the key to ignoring one GPU per client, thus forcing both BOINC clients to share the same GPU and allowing both S@H AP and MW@H tasks to run on it...

ok, i'm having problems getting it to work. i created a 2nd BOINC data directory d:\BOINC_2, and ran the command &#8220;d:\Program Files\BOINC\boinc.exe&#8221; &#8211;allow_multiple_clients &#8211;dir d:\BOINC_2. the edited the gui_rpc_auth.cfg to a password that i would remember. i then ran the command &#8220;d:\Program Files\BOINC\boinc.exe&#8221; &#8211;allow_multiple_clients &#8211;dir d:\BOINC_2 &#8211;gui_rpc_port 9999, which didn't seem to add any files to the d:\BOINC_2 directory, unlike the previous command. nevertheless, i continued following the instructions and ran the BOINC manager. i suspended all my projects and tried connecting to localhost:9999 with my new password, but the BOINC manager just sits there with blank tabs, all the while claiming to be "connecting to local host." i figure if it ain't connected within a minute, something's not right. i even tried 127.0.0.1:9999 in place of localhost:9999 like you, but that didn't so anything for me either. any suggestions?
 
Last edited:

petrusbroder

Elite Member
Nov 28, 2004
13,348
1,155
126
OT: You can avoid the problem with the :\ by checking the "Disable smileys in text" under the heading "Additional Options"when in "Advanced mode" of the post editor. You get to the "Advanced mode" by clicking on the "Go Advanced" button.
 

salvorhardin

Senior member
Jan 30, 2003
390
38
91
ok, i'm having problems getting it to work. i created a 2nd BOINC data directory d:\BOINC_2, and ran the command &#8220;d:\Program Files\BOINC\boinc.exe&#8221; &#8211;allow_multiple_clients &#8211;dir d:\BOINC_2. the edited the gui_rpc_auth.cfg to a password that i would remember. i then ran the command &#8220;d:\Program Files\BOINC\boinc.exe&#8221; &#8211;allow_multiple_clients &#8211;dir d:\BOINC_2 &#8211;gui_rpc_port 9999, which didn't seem to add any files to the d:\BOINC_2 directory, unlike the previous command. nevertheless, i continued following the instructions and ran the BOINC manager. i suspended all my projects and tried connecting to localhost:9999 with my new password, but the BOINC manager just sits there with blank tabs, all the while claiming to be "connecting to local host." i figure if it ain't connected within a minute, something's not right. i even tried 127.0.0.1:9999 in place of localhost:9999 like you, but that didn't so anything for me either. any suggestions?

Hi Sunny, once you open the command prompt you never close it and you only break it after the first command (If you want to change the password). The first command (&#8220;d:\Program Files\BOINC\boinc.exe&#8221; &#8211;allow_multiple_clients &#8211;dir d:\BOINC_2) creates the 2nd data directory, you then ctrl+c so you can edit the gui_rpc_auth.cfg file. When you enter &#8220;d:\Program Files\BOINC\boinc.exe&#8221; &#8211;allow_multiple_clients &#8211;dir d:\BOINC_2 &#8211;gui_rpc_port 9999 you are starting the second client through the command line. Don't ctrl+c or close it, just minimize the window and then start boinc and continue the steps. Even though there are two boinc managers running I still have a command window running.
 

Sunny129

Diamond Member
Nov 14, 2000
4,823
6
81
OT: You can avoid the problem with the :\ by checking the "Disable smileys in text" under the heading "Additional Options"when in "Advanced mode" of the post editor. You get to the "Advanced mode" by clicking on the "Go Advanced" button.
thanks...i fixed my post above.


Hi Sunny, once you open the command prompt you never close it and you only break it after the first command (If you want to change the password). The first command (“d:\Program Files\BOINC\boinc.exe” –allow_multiple_clients –dir d:\BOINC_2) creates the 2nd data directory, you then ctrl+c so you can edit the gui_rpc_auth.cfg file. When you enter “d:\Program Files\BOINC\boinc.exe” –allow_multiple_clients –dir d:\BOINC_2 –gui_rpc_port 9999 you are starting the second client through the command line. Don't ctrl+c or close it, just minimize the window and then start boinc and continue the steps. Even though there are two boinc managers running I still have a command window running.
gotcha...i didn't realize that we're only supposed to break out of the first command (accidentally closed the CLI using ctrl-c). i'll run the procedure again this evening and see how it goes...