5/28(金) 掛川・晴

 昨日で,cs-pccluster2のケーブル整理作業が終了した。

switches.jpg

 パケットが伝送される状態を観察できるようにするという目的は果たしたものの,さすがに二十数本分のTwisted-pairケーブルを束ねるとかなりの太さとなり,それらがまとめてSwitchに突き刺さっている様は,さながら人体解剖図のようで生々しい。Bladeサーバを使っているブルジョアさん達が普段は触れられない,隠蔽されている光景がここにはある。まあ,無線LANが高速化されれば,少なくともこの半分のケーブルは消滅するのであるが。
 お手伝いをお願いしていた学生さんが到着する頃にはあらかた作業は終わってしまっていたので,お掃除のみお願いし,これで全ての作業が完了した。これで先日インタビューを受けた方に,このclusterの写真を撮ってお送りすることが出来る。と言う訳で一番見栄えのする(といっても単なるPC室にしか見えない)部分を切り取って先方へお送りする。

 余勢を駆って,懸案だったWin32環境で使えるgmpとmpfrを,Visual Studio .NETでコンパイルする。C onlyのgenericコードを使ったものはワシも作ったし,他にもあるが,CPU毎にtuneされたassemblerコード,しかもWin32で使用できるものはGladmanさんのものしか知らない。しかし,こいつは.NET環境専用になっちゃっているので,「いつか見ておれワシだって」とばかりに,機会をうかがっていたのである。MSDNを手に入れた今日,ワシに障害はないのである。ちらっとVineにて,generic onlyのgmpとtuned asmsを使ったものでベンチマークをやってみたが,10倍の差が出てしまった。やっぱり速さは命,gmpにはasmコードが必須であるのだなあ,と改めて感じる。
 オリジナルはP4向けのasmをリンクしていたので,それをそのまま使ったものと,P3向けのasmを使ったものの2種類のDLL/Export lib, Static libを作る。作業としては大したものではなかったが,統合環境の中で「あっちのasmを無効にしてこっちのgeneric Cを有効にして・・・」などと,マウスでちくちく変更する作業は不毛なものであった。こっ,こんなものー,Makefileをしっかり書いておけば一発じゃんっ。VC++.NETにはちゃんとnmakeが入っているのだから,その気になれば可能なのであるが,.NET使いは統合環境しか眼中にないのか? まあ,無事にlibが出来たので,ついでにBNCpackもコンパイルして多倍長計算が動くことは確認できたところで疲れて帰宅。これでMPIBNCpackが使えるようになれば完璧。夏休み前には何とかなるかしらん?

 ふーん,Note PCのバッテリリフレッシュサービスなんてのがあるんだ。覚えておこう。