2

Isis2 (isis2.codeplex.com) を移植して、Infiniband 動詞をより有効に活用し、コードを実行しています。ただし、IB は、一連の受信バッファーを送信し、受信が完了すると、受信データを処理する非同期受信モデルを中心にしています。

ポーリングが遅い: たとえば 2 ミリ秒のブロッキング待機を使用すると、IB データが表示されるまでに 2 ミリ秒も遅延する可能性があります。それは解決策ですが、貧弱なものです。私が本当に望んでいるのは、IB 完了レコードが完了するまで待ってから、スレッドを即座に起動させる方法です (Windows ではこれは簡単ですが、Linux ではそれほど自然ではありません)。誰もこれを行う方法を知っていますか? Verbs を使用する場合、IB ファイル記述子がないため、明らかに select() を使用できません。

4

1 に答える 1

1

どうでも; このためのメソッド (ibv_reg_notify_cq) が提供されていることに気付きました。やってみます。世界で最もよく文書化された API ではありません...

于 2014-03-17T18:42:36.483 に答える