Message boards :
Number crunching :
Optimizing the ratio of igpu and nvidia gpu task ratios.
Message board moderation
Author | Message |
---|---|
disturber Send message Joined: 22 May 99 Posts: 8 Credit: 3,391,660 RAC: 0 |
I thought this maybe interesting to folks that have Ivy Bridge or Haswell cpus. After searching through the posts in here, and maybe I was not that thorough, I could not find any information on how to adjust the ratio of Nvidia gpu vs igpu concurrent tasks. My goal was to get as close to 100% cpu, NVIDIA GPU and Intel GPU loading. So I studied the wiki information on client configuration http://boinc.berkeley.edu/wiki/Client_configuration On one of my computers I have a NVIDIA GTX 970 and a i7-3770k, and after some experimentation I found that the GTX 970 could run 3 tasks to achieve over 94% utilization. The only issue I had if used with the simple app_config.xml like this: <app_config> <app> <name>setiathome_v7</name> <gpu_versions> <gpu_usage>0.33</gpu_usage> <cpu_usage>0.1</cpu_usage> </gpu_versions> </app> <app> <name>astropulse_v7</name> <gpu_versions> <gpu_usage>0.5</gpu_usage> <cpu_usage>0.1</cpu_usage> </gpu_versions> </app> </app_config> was that there were also 3 copies of the gpu task running on my Intel gpu. To me that meant I would have to give up more threads on the 3770k to feed the both the NVIDIA and Intel gpu than necessary. So to be able to run 3 task on the 970 and 2 tasks on the Intel gpu, the app_config.xml looks like this now. Any less wu on the Intel gpu resulted in less igpu utilization. <app_config> <app> <name>setiathome_v7</name> <gpu_versions> <gpu_usage>0.33</gpu_usage> <cpu_usage>0.1</cpu_usage> </gpu_versions> </app> <app_version> <app_name>setiathome_v7</app_name> <plan_class>opencl_intel_gpu_sah</plan_class> <avg_ncpus>0.1</avg_ncpus> <ngpus>0.5</ngpus> </app_version> <app> <name>astropulse_v7</name> <gpu_versions> <gpu_usage>0.5</gpu_usage> <cpu_usage>0.1</cpu_usage> </gpu_versions> </app> <app_version> <app_name>astropulse_v7</app_name> <plan_class>opencl_intel_gpu_102</plan_class> <avg_ncpus>0.1</avg_ncpus> <ngpus>1.0</ngpus> </app_version> </app_config> This also has the advantage that once an astropulse wu comes along, only two task will be running on the NVIDIA gpu. The astropulse wu seems more demanding and drives up the memory controller load to almost 100% (85% normally), so I doubt that I can run more than 1 efficiently. What can I say, I am a geek,lol. On my specific computer I have the i7-3770k running at 4.4GHz and feeding 3 tasks to the 970 and 2 tasks to the Intel 4000 igpu, I only need to allocate one core with one thread to provide enough data to the gpus. ( CPU use set to 80% in computing preferences). The Gigabyte GTX gpu clock is running at 1330 MHz. This gives me 92% cpu, 98% GTX 970 and 99% igpu utilization. The average cuda32, 42 or 52 wu is finishing between 20 and 22 minutes for 3 concurrent wu. I am happy with that. When an astropulse unit comes along, only 2 wu are running on the gpu, just as I expected. I hope this helps someone that wants to run less wu on the built-in intel gpu and more on the dedicate graphics processor. The whole system is running rock solid and has had no errors in 414 valid wu after 3 weeks. |
©2024 University of California
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.