Open yukarinoki opened 1 year ago
GPU Direct RDMA という機能がある PCIe接続デバイスがGPUメモリの直接な読み書きができる
mapped_page_locked memory
でGPUからホストに通信するらしい
GPUとCPUで直接通信はむずいので、通信リクエストをCPUに送って、カーネルを抜け出さずに通信する
GPU上で通信用のカーネルを常駐させる 計算用のカーネル関数は通信用のカーネル関数とは独立に走らせる。
計算用カーネルが、通信用カーネルに通信の開始を依頼する 通信用カーネルはmappedメモリを介して、Attributeを転送し、ホスト上の通信管理用のスレッド(CPU)に通信を依頼する 依頼を受けた通信管理用(CPU)のスレッドは実際の通信を開始する
https://www.hpcs.cs.tsukuba.ac.jp/wp-publications/ipsj-hpc148kuwahara/
ホスト側がノード間通信を行うため、カーネル関数からホスト側にプログラムの制御を戻す必要がある。そのため、通信が必要になるたびにカーネル関数を分割する必要が生じ、カーネル関数の軌道に伴うオーバーヘッドが生じる