[RDMA]RDMA初歩使用操作
このセクションはInfiniBandデバイスにのみ適用されます.iWARPとRoCE/IBEデバイスは
1. InfiniBandデバイス情報
使用可能
libibverbs-utils ソフトウェアパッケージの簡単なテストプログラムは、RDMAの動作が正常かどうかを判断するのに役立ちます.ibv_devices プログラムはシステム内の現在のすべてのデバイスを表示し、
ibstatコマンドを使用して、InfiniBandの詳細を表示します.
2.ibpingプログラムはクライアント/サーバーモードを実現する
簡単なpingプログラム、例えば infiniband-diags パッケージ内の ibping RDMA接続性をテストします.ibping プログラムはクライアント/サーバモードを採用しています.まず1台のマシンで起動する必要があります. ibping サーバー、そしてもう1台のマシンで ibping クライアントとして実行し、 ibping サーバ接続.基本的なRDMA機能をテストするため、使用するのではなく、RDMA用のアドレス解析方法が必要です.
サーバマシンでは、ユーザーが使用できます.
クライアントマシンに切り替えて実行 ibping.記録 ibping プログラムがバインドするポートのポートGUIDまたは ibpingプログラムにバインドされたサーバポートの ローカル識別子(LID)また、クライアント機器において、サーバがバンドルされたNICとポートのネットワークに接続しているのと同じNICとポートを記録する必要があります.たとえば、サーバにおける第1のNICの第2のポートがバンドルされているネットワークがサブRDMA構造である場合、クライアントにも第2の構造に接続されているNICとポートを指定する必要があります.構成が完了したら、クライアントとして実行してください ibping プログラムは、サーバに見つかったポートLIDまたはGUIDをアドレスとしてサーバに接続します.たとえば、次のようになります.
この結果は、エンドツーエンドRDMA通信がユーザ空間アプリケーションで正常に動作しているかどうかを検証する.
IP
のデバイスは、ユーザーがIPoIBを構成し、デバイスが IP
アドレス後、RDMAテスト操作の一部を実行する内容に従ってテストを行う.1. InfiniBandデバイス情報
使用可能
rdma
サービスと opensm サービス(必要に応じて)は、特定のハードウェアに適切なユーザ空間ライブラリをインストールした後、ユーザ空間を行うことができます. rdma
を選択します.service opensmd start
libibverbs-utils ソフトウェアパッケージの簡単なテストプログラムは、RDMAの動作が正常かどうかを判断するのに役立ちます.ibv_devices プログラムはシステム内の現在のすべてのデバイスを表示し、
ibv_devinfo
コマンドは、各デバイスの詳細を示します.例:[root@node24 ~]# ibv_devices
device node GUID
------ ----------------
mlx4_0 46d2c92000004820
[root@node25 ~]# ibv_devices
device node GUID
------ ----------------
mlx4_0 46d2c92000003500
ibstatコマンドを使用して、InfiniBandの詳細を表示します.
[root@node24 ~]# ibstat
CA 'mlx4_0'
CA type: MT4099
Number of ports: 1
Firmware version: 2.30.3000
Hardware version: 0
Node GUID: 0x46d2c92000004820
System image GUID: 0x46d2c92000004823
Port 1:
State: Active
Physical state: LinkUp
Rate: 56
Base lid: 72
LMC: 0
SM lid: 49
Capability mask: 0x02514868
Port GUID: 0x46d2c92000004821
Link layer: InfiniBand
[root@node24 ~]#
[root@node25 ~]# ibstat
CA 'mlx4_0'
CA type: MT4099
Number of ports: 1
Firmware version: 2.30.3000
Hardware version: 0
Node GUID: 0x46d2c92000003500
System image GUID: 0x46d2c92000003503
Port 1:
State: Active
Physical state: LinkUp
Rate: 56
Base lid: 53
LMC: 0
SM lid: 49
Capability mask: 0x0251486a
Port GUID: 0x46d2c92000003501
Link layer: InfiniBand
ibv_devinfo
および ibstat
コマンド出力情報は少し異なります(例えばポートMTU情報は ibv_devinfo
ではなく ibstat
出力に表示され、ポートPUID情報は ibstat
ではなく ibv_devinfo
出力に表示されます.また、ibstat
などの情報の命名方法も異なります. 出力のベースローカル識別子(LID)と ibv_devinfo
出力中の port_lid
同じ情報です.2.ibpingプログラムはクライアント/サーバーモードを実現する
簡単なpingプログラム、例えば infiniband-diags パッケージ内の ibping RDMA接続性をテストします.ibping プログラムはクライアント/サーバモードを採用しています.まず1台のマシンで起動する必要があります. ibping サーバー、そしてもう1台のマシンで ibping クライアントとして実行し、 ibping サーバ接続.基本的なRDMA機能をテストするため、使用するのではなく、RDMA用のアドレス解析方法が必要です.
IP
アドレス指定サーバー.サーバマシンでは、ユーザーが使用できます.
ibv_devinfo
および ibstat
コマンド出力 port_lid
(またはベースlid)およびテストするポートのポートGUID(上記インタフェースのポート1と仮定すると、 port_lid
/ LID
49ですが、ポートGUIDは 0x46d2c92000004821
)を選択し、必要なオプションを使用して起動します. ibping テストするNICとポートにバンドルするとともに、 ibping サーバー・モードで実行します. -?
または --help
オプション ibpingのすべての使用可能なオプションですが、このインスタンスでは使用できます. -S
または --Server
オプションを選択し、特定のNICとポートにバインドするときに使用できます. -C
または --Ca
および -P
または --Port
オプション.注意:このインスタンスのポートでは、ポート番号は示されませんが、マルチポートNICを使用するときに物理ポート番号が示されます.使用するRDMA構造の接続性をテストするには、マルチポートNICの第2ポートなど、 ibping NICのポート49にバンドルされています.このオプションは、単一のポートNICを使用する場合には必要ありません.次に例を示します.[root@node25 ~]# ibping -S -C mlx4_0 -P 1
クライアントマシンに切り替えて実行 ibping.記録 ibping プログラムがバインドするポートのポートGUIDまたは ibpingプログラムにバインドされたサーバポートの ローカル識別子(LID)また、クライアント機器において、サーバがバンドルされたNICとポートのネットワークに接続しているのと同じNICとポートを記録する必要があります.たとえば、サーバにおける第1のNICの第2のポートがバンドルされているネットワークがサブRDMA構造である場合、クライアントにも第2の構造に接続されているNICとポートを指定する必要があります.構成が完了したら、クライアントとして実行してください ibping プログラムは、サーバに見つかったポートLIDまたはGUIDをアドレスとしてサーバに接続します.たとえば、次のようになります.
[root@node24 ~]# ibping -c 10000 -f -C mlx4_0 -P 1 -L 49
[root@node24 ~]# ibping -c 10000 -f -C mlx4_0 -P 1 -L 49
--- (Lid 49) ibping statistics ---
10000 packets transmitted, 0 received, 100% packet loss, time 398 ms
rtt min/avg/max = 0.000/0.000/0.000 ms
この結果は、エンドツーエンドRDMA通信がユーザ空間アプリケーションで正常に動作しているかどうかを検証する.