Debian GNU/Linux 8.3で複数GPU稼働する際のBOINCからの除外設定

  • 1
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Debian GNU/Linux 8.3で複数GPU稼働する際のBOINCからの除外設定

Debian GNU/Linux 8.3(jessie)でGeForceのカード挿してBOINCを稼働させています。

http://qiita.com/rltm/items/c3b9c0cf3eb6ad7ea6e6

この度、カードを増設して2枚のGPUに仕事を分担させることにしました。
PCIe x1に挿したカード(GT610)をBOINC専用にしてPCIe x16に挿したカード(GT430)を画面表示専用にします。
画面表示専用のカードをBOINCから除外します。

lspciでの認識確認

念のためそもそもちゃんと2枚認識しているか確認します。

$ lspci | grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 430] (rev a1)
02:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 610] (rev a1)

Linuxがちゃんと認識しているようです。

BOINCでの認識確認

BOINC ManagerのイベントログでBOINCが2枚認識しているか確認します。

CUDA: NVIDIA GPU 0: GeForce GT 430 (driver version unknown, CUDA version 6.5, compute capability 2.1, 1023MB, 810MB available, 269 GFLOPS peak)
CUDA: NVIDIA GPU 1: GeForce GT 610 (driver version unknown, CUDA version 6.5, compute capability 2.1, 1024MB, 1012MB available, 156 GFLOPS peak)
OpenCL: NVIDIA GPU 0: GeForce GT 430 (driver version 340.96, device version OpenCL 1.1 CUDA, 1023MB, 810MB available, 269 GFLOPS peak)
OpenCL: NVIDIA GPU 1: GeForce GT 610 (driver version 340.96, device version OpenCL 1.1 CUDA, 1024MB, 1012MB available, 156 GFLOPS peak)

2枚ちゃんとBOINCも認識しているようです。

GT430をBOINCから除外したいので上記に表示されている番号(GPU 0)を記憶しておきます。

BOINCの除外設定(GPUカード単位での除外)

除外するGPUを/etc/boinc-client/cc_config.xmlファイルに設定していきます。

https://boinc.berkeley.edu/wiki/Client_configuration#Options

ignore_nvidia_devを指定することでGPUカード単位で除外することが出来ます。

<options>から</options>までが追加した設定です。

 <!--
 This is a minimal configuration file cc_config.xml of the BOINC core client.
 For a complete list of all available options and logging flags and their
 meaning see: https://boinc.berkeley.edu/wiki/client_configuration
 -->
 <cc_config>
   <options>
     <use_all_gpus>1</use_all_gpus>
     <ignore_nvidia_dev>0</ignore_nvidia_dev>
   </options>

   <log_flags>
     <task>1</task>
     <file_xfer>1</file_xfer>
     <sched_ops>1</sched_ops>
   </log_flags>
 </cc_config>

BOINCの除外設定(プロジェクト単位での除外)

除外するGPUをプロジェクトごとに/etc/boinc-client/cc_config.xmlファイルに設定していきます。

https://boinc.berkeley.edu/wiki/Client_configuration#Options

exclude_gpuを指定することでプロジェクト単位で除外することが出来ます。

<options>から</options>までが追加した設定です。

 <!--
 This is a minimal configuration file cc_config.xml of the BOINC core client.
 For a complete list of all available options and logging flags and their
 meaning see: https://boinc.berkeley.edu/wiki/client_configuration
 -->
 <cc_config>
   <options>
     <use_all_gpus>0</use_all_gpus>

     <exclude_gpu>
       <url>http://asteroidsathome.net/boinc/</url>
       <device_num>0</device_num>
     </exclude_gpu>

     <exclude_gpu>
       <url>http://boinc.thesonntags.com/collatz/</url>
       <device_num>0</device_num>
     </exclude_gpu>

     <exclude_gpu>
       <url>http://einstein.phys.uwm.edu/</url>
       <device_num>0</device_num>
     </exclude_gpu>

     <exclude_gpu>
       <url>http://milkyway.cs.rpi.edu/milkyway/</url>
       <device_num>0</device_num>
     </exclude_gpu>

     <exclude_gpu>
       <url>http://moowrap.net/</url>
       <device_num>0</device_num>
     </exclude_gpu>

     <exclude_gpu>
       <url>http://boinc.fzk.de/poem/</url>
       <device_num>0</device_num>
     </exclude_gpu>

     <exclude_gpu>
       <url>http://www.primegrid.com/</url>
       <device_num>0</device_num>
     </exclude_gpu>

     <exclude_gpu>
       <url>http://www.worldcommunitygrid.org/</url>
       <device_num>0</device_num>
     </exclude_gpu>
   </options>

   <log_flags>
     <task>1</task>
     <file_xfer>1</file_xfer>
     <sched_ops>1</sched_ops>
   </log_flags>
 </cc_config>

BOINCの再起動

除外した設定を反映するためにBOINCを再起動します。

# /etc/init.d/boinc-client restart

除外設定の確認

BOINC Managerのイベントログで確認します。

GPU単位で除外設定した場合

除外したいGPUにignored by configと表示されていれば設定成功です。

CUDA: NVIDIA GPU 0 (ignored by config): GeForce GT 430 (driver version unknown, CUDA version 6.5, compute capability 2.1, 1023MB, 810MB available, 269 GFLOPS peak)
CUDA: NVIDIA GPU 1: GeForce GT 610 (driver version unknown, CUDA version 6.5, compute capability 2.1, 1024MB, 1012MB available, 156 GFLOPS peak)
OpenCL: NVIDIA GPU 0 (ignored by config): GeForce GT 430 (driver version 340.96, device version OpenCL 1.1 CUDA, 1023MB, 810MB available, 269 GFLOPS peak)
OpenCL: NVIDIA GPU 1: GeForce GT 610 (driver version 340.96, device version OpenCL 1.1 CUDA, 1024MB, 1012MB available, 156 GFLOPS peak)

0番のGPUが除外できているようです。

プロジェクト単位で除外設定した場合

除外設定したプロジェクトごとに以下のメッセージが表示されていれば設定成功です。

Config: excluded GPU.  Type: all.  App: all.  Device: 0

0番のGPUが除外できているようです。

GPUの稼働率の確認

必要であればnvidia-settingsもしくはnvidia-smiアプリでGPU Utilizationの負荷率を確認します。

BOINC用のGPUが100%近く稼働しており、画面表示用GPUが比較的落ち着いていれば成功です。