Only 1 GPU task

liderbug
liderbug
Joined: 13 Aug 10
Posts: 20
Credit: 37561962
RAC: 0
Topic 198703

AMD X6 1090T Processor
20gb mem
GTX 770 video 4Gb
Fedora 22
OpenCL: NVIDIA GPU 0: GeForce GTX 770 (driver version 340.96, device version OpenCL 1.1 CUDA, 4096MB, 3962MB available, 3653 GFLOPS peak)
Boinc 7.6.22 x86_64-pc-linux-gnu
Seti, Einstein, Rosetta, WorldCommGrid.

I've searched the web and found several posts on getting boinc to run multiple GPU tasks. app_config.xml seems the way to go, but no mater how I config it all I get is one task at: (0.2 CPUs + 1 NVIDIA GPU). Although one task last night was running at .05% per second - smok'n.

current - seti is the same (name diff)

 
  einstein_O1AS20-100I
  7
  
   0.8  // I've tried 0.1, 2,4.7... nut'n
   0.8
  
 

Also any way to do something like taskA|taskB|taskC ???

Thanks
bug

Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2699403
RAC: 0

Only 1 GPU task

Quote:

AMD X6 1090T Processor
20gb mem
GTX 770 video 4Gb
Fedora 22
OpenCL: NVIDIA GPU 0: GeForce GTX 770 (driver version 340.96, device version OpenCL 1.1 CUDA, 4096MB, 3962MB available, 3653 GFLOPS peak)
Boinc 7.6.22 x86_64-pc-linux-gnu
Seti, Einstein, Rosetta, WorldCommGrid.

I've searched the web and found several posts on getting boinc to run multiple GPU tasks. app_config.xml seems the way to go, but no mater how I config it all I get is one task at: (0.2 CPUs + 1 NVIDIA GPU). Although one task last night was running at .05% per second - smok'n.

current - seti is the same (name diff)

 
  einstein_O1AS20-100I
  7
  
   0.8  // I've tried 0.1, 2,4.7... nut'n
   0.8
  
 

Also any way to do something like taskA|taskB|taskC ???

Thanks
bug


The spec for writing an app_config.xml is here:

http://boinc.berkeley.edu/wiki/Client_configuration#Application_configuration

   [
      Application_Name
      1
      []
      
          .5
          .4
      
    ]
   ...
   [
       Application_Name
       [mt]
       [x]
       [x]
       [--nthreads 7]
   ]
   ...
   [N]

Don't put extra entries in like 7 It's not coded in, so won't do anything.

or entries are for the application name of the application you want to control, not the task name, for Seti they would be setiathome_v8 and astropulse_v7

Claggy

Holmis
Joined: 4 Jan 05
Posts: 1118
Credit: 1055935564
RAC: 0

And here at Einstein you

And here at Einstein you could just go to your account and click the link to edit your "Einstein@Home preferences", then set the "GPU utilization factor of BRP apps" to 0.5 to run x2, 0.33 to run x3 and so on.
The change will happen the next time you download new tasks for your GPU and will then apply to all tasks currently in your cache.

Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2699403
RAC: 0

You're also got to choose an

You're also got to choose an application name that has GPU apps, for Einstein they are at present:

einsteinbinary_BRP4G and einsteinbinary_BRP6 or Nvidia and AMD GPUs, and einsteinbinary_BRP4 for Intel GPUs.

Einstein applications

Claggy

liderbug
liderbug
Joined: 13 Aug 10
Posts: 20
Credit: 37561962
RAC: 0

Ah, OK. I think I've got it

Ah, OK. I think I've got it now. I've got 4 Seti's
Running (0.8 CPUs + 0.25 NVIDIA GPUs)
with percentages running at about .02/sec or about 1.2% per minute
Thanks Oh and I figured out ie. enstein 6 sections A, B ...

liderbug
liderbug
Joined: 13 Aug 10
Posts: 20
Credit: 37561962
RAC: 0

One more question: Hmmm...

One more question: Hmmm... does/would it make any difference - (say) 1 Seti given the whole GPU or 10 Seti's given 10% of a GPU? Or is it 6of1, 1/2 dozen the other? Is there a bell curve on the number? .10 or 1.0 or .4728243???
tks

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 5872
Credit: 117766785363
RAC: 34810766

RE: ... does/would it make

Quote:
... does/would it make any difference - (say) 1 Seti given the whole GPU or 10 Seti's given 10% of a GPU? Or is it 6of1, 1/2 dozen the other?


If your interest is Seti performance, you really need to ask over there. For Einstein GPU tasks, the best concurrency depends on a range of factors so there is no easy blanket rule. Almost invariably, people find that running two tasks concurrently gives a substantial improvement in output compared to running tasks singly. There may be further improvement by running 3x or even higher but the gains are usually a lot more modest.

The only way to find out is to conduct the proper experiments, with enough tasks completed at each setting to get a meaningful average crunch time. At some point you will probably find that a higher concurrency may actually give you system instability or lower output (or both). Very few people operate higher than 3x or 4x. It's not usually worth the effort (or risks to your hardware). If you support multiple projects which have GPU apps, you may find it difficult to get good stable operating conditions which allow you to find the optimal settings. You really need to conduct the experiments with just a single project running in order to avoid any inter-project interference.

One other point. For BRP6 tasks, you are likely to get a significant further improvement if you allow test applications in your E@H preferences. There is a test app built with more recent CUDA libs that performs significantly better on recent GPUs compared to the standard app.

Cheers,
Gary.

liderbug
liderbug
Joined: 13 Aug 10
Posts: 20
Credit: 37561962
RAC: 0

OK and thanks. Doing stats

OK and thanks. Doing stats is kind of watching grass grow. But then I used to calibrate long period seismometers - 1 cycle every 25 seconds...

So, I've been playing with [app]/app_config.xml and I've seen:
Seti | running (0.1 CPUs + 0.05 NVIDIA GPU)
Seti | running (0.1 CPUs + 0.05 NVIDIA GPU)
Seti | running (0.1 CPUs + 0.05 NVIDIA GPU)
Seti | running (0.1 CPUs + 0.05 NVIDIA GPU)
Seti | running (0.1 CPUs + 0.05 NVIDIA GPU)
E@H | running (0.2 CPUs + 1 NVIDIA GPU)
and a rosetta

CPU Temperature: +55.0°C
GTX 770 72C
my HDs at 39C

Being reported I've done 38,300 credits in the past 22 hrs. Now some times the above doesn't show any GPU work - I assume because the data is non-gpu. And I've seen some Zika data go through. So,.... I think things are looking pretty good.

Tks again.

Richard Haselgrove
Richard Haselgrove
Joined: 10 Dec 05
Posts: 2143
Credit: 2960746007
RAC: 706899

RE: Seti | running (0.1

Quote:
Seti | running (0.1 CPUs + 0.05 NVIDIA GPU)


With those settings, BOINC will try to run 20 tasks at a time on your GPU - and will fail, because you'll run out of GPU memory. The sweet spot is usually 2 or 3 tasks concurrently - so usage limits of 0.5 or 0.33 NVIDIA GPU are advised.

Quote:
I assume because the data is non-gpu.


Data is data is data. Most of it can be run on any device.

liderbug
liderbug
Joined: 13 Aug 10
Posts: 20
Credit: 37561962
RAC: 0

Took your advice and raised

Took your advice and raised the nvidia-smi now says 895MiB/4030MiB

Wish I could copy/paste but bmgr won't let me do that - so:
rosetta 23.598% waiting to run 2:12:48 06:18:23
rosetta 73.949 waiting 06:42:39 02:09:01
s@h 75.937% run(0.8 cpu 0.25 nvid gpu) 00:31:41 00:14:13(12,11,10...)
s@h dito 48min total (all 3 seti percents are completing at about .05%/second
s@h dito 48 min
rosetetta 87% running 8:48 total
rosetta 90% running 8:45 total

I don't remember posting:
AMD Phenom(tm) II X6 1090T
mem 20GiB
Nvid gtx 770 4gb

The reason I asked about "data" is sometime (ie seti) will be running a gpu package and a non-gpu package at the same time.

Thanks again.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.