要約: タイトル
背景
無駄に光クロスにしたのもあり、10Gbpsな環境にしようと色々買っている。機器はこんな感じ。
- ルータ: RTX1300
- スイッチ: CRS305-1G-4S+IN
- ケーブル: 10Gtek SFP+ DACケーブル(Amazonで売っている)
- NIC: Mellanox ConnectX-4 MCX4121A-ACAT (Windows機とNAS用)
Mellanox ConnectX-3が安価でいいんだけど、Windows 11のドライバがないとかで将来がちょっと不安だったので、少し奮発してMellanox ConnectX-4にした。eBayで$72(約1万円)が2個。
さっそくWindows機にMellanox ConnectX-4を取り付けたらWindowsの標準のドライバ(?)でとりあえず動いた。(PCI Express x8で動くけど、手元の環境ではx4だった。)
最新のドライバを入れたほうがよいかなと思い公式サイトに行ってドライバを入れてみた。
https://network.nvidia.com/products/adapter-software/ethernet/windows/winof-2/
ConnectX-4ならWinOF-2 を使えという感じらしい。2つあるうちのLTS版?っぽい3.10.52010-LTSを使ってみることにした。(OS種類が複数出るけど、どれも同じファイルなのでこの辺は適当に)
しかしインストールしてみるとNICが認識しなくなってしまった。デバイスマネージャでみるとダメな感じだった(コード 10?とか出てた)もう1個のドライバも試しても少し違うけど同様に認識されなかった。
とりあえずドライバを削除してネットワークを使えるようにする。
そのあと悩みながらドライバのUser Manualを眺めていたところ、マニュアルにfirmware upgrateなる記述を見て「もしかしてファームウェアを最新にする必要があるのか?」と思い試した。うーん、それなら先に書いてほしいなぁ。
作業
ファームウェア更新用にmlxupというコマンドラインツールが提供されている。
https://network.nvidia.com/support/firmware/mlxup-mft/
コマンドプロンプトを開いて叩くだけ。簡単。
>mlxup.exe Querying Mellanox devices firmware ... Device #1: ---------- Device Type: ConnectX4LX Part Number: MCX4121A-ACA_Ax Description: ConnectX-4 Lx EN network interface card; 25GbE dual-port SFP28; PCIe3.0 x8; ROHS R6 PSID: MT_2420110034 PCI Device Name: mt4117_pciconf0 Base MAC: ec0d9a84c71e Versions: Current Available FW 14.18.1204 14.32.1010 PXE 3.5.0109 3.6.0502 UEFI N/A 14.25.0017 Status: Update required --------- Found 1 device(s) requiring firmware update... Perform FW update? [y/N]:
という感じに動く。上記の通りファームウェアが若干古いようだった。
更新するか聞かれているので、yを押して更新する。この更新は10分ぐらいかかるので我慢して待ちましょう。
Perform FW update? [y/N]: y Device #1: Updating FW ... Done Restart needed for updates to take effect. Log File: C:\Users\xxxx\AppData\Local\Temp\mlxup-20230720_022715_4936.log
ファームウェア更新後、再度ドライバを入れなおして再起動したら動いた。よかったよかった。
計測環境が整ってないのでどれぐらい改善されたかはわからないけどね・・・