« 2007年06月 | メイン | 2007年08月 »

2007年07月21日

GAMESS 2007.03 (R3)のコンパイル

なかなか重い腰が上がらなかった、GAMESSのソースコードからのコンパイル。やっと実施してみることにしました。
細かい内容には触れませんが、cygwinは1.5.19(gcc-3.4.4.1)を使いました。ソースコードに同梱のマニュアル通りにコンパイルができます。但しcompallとcompddi,lkedは「./」を頭につけて実行する必要がありました。ddiのsysVはoffです(cygwinでのコンパイルでは必須?)。あと、tinkerモジュールを組み込みました。QM/MMは興味ありますし。

コンパイルにかかった時間はトータルで20分ほど。特につまずくこともなく、あっという間に終了しました(ちょっと拍子抜け?)。
生成した実行ファイルでベンチマークしてみました。例によって有機ラジカルのUMP2 Gradientです。但し、基底関数にaug-cc-pVDZを使って計算時間を延長してます。
NUMBER OF CARTESIAN GAUSSIAN BASIS FUNCTIONS = 154です。

1 CPU2 CPUparallel eff.
WinGAMESS 07.03(R1)CPU981.4486.42.018
Wall988.1602.31.641
GAMESS 07.03(R3)
(original)
CPU1016.9447.12.274
Wall1022.7546.81.870

1 CPUでの計算効率は、Webリリースのprecompiled binaryが有利(自分でコンパイルしたbinaryは0.966倍の効率)ですが、並列化効率は自分でコンパイルしたbinaryの方が有利(Wall clock timeで1.1倍)という結果でした。ちなみに並列計算の入力ではMWORDS=1, MEMDDI=22ですが、シングルスレッドの入力ではMWORDS=120(実際には96で足ります)ということで、メモリ効率も良いです。

今回の比較は、ソースのリビジョンが違う(R1とR3)ので単純に比較できないのですが(もしかしたらUMP2 Gradientに関わる最適化がされているかも?)、並列計算では自分のところでコンパイルしたものを使った方が効率が上がるかもしれません。

コンパイル&並列化については、pc-chem.infoで近くコンテンツ化予定です。乞うご期待。

【追記】
最新の(正確には2006.09~)GAMESSではCCSD(T)のエネルギー計算が並列でできることになっていますが、WinGAMESS 07.03では1 CPUと2 CPUで計算時間に変わりなし(むしろ2 CPUが遅いぐらい)。もちろん、タスクマネージャー上では2つのコアが両方動いていますが…何してるん?
(※各ステップごとのCPU時間を見る限り、SCFは短縮されていますがCCで時間がかかってる)
また、上で紹介した私がコンパイルしたバイナリでは、precompiledのものに比べ倍時間がかかります。どうもCCのルーチンだけ特殊?

2007年07月11日

WinGAMESS 06.02で並列計算

最近Forumで投稿があった、WinGAMESSでの並列計算について。
wingamに同梱のwingam.cshを使うことで、1年前のバージョンである2006.02なら並列化できることはわかりました。方法についてはForumに投稿していますが、ここでは計算速度についてわかったことを書き留めておきます。
ジメチルアミノキシルラジカルの6-31G(d)基底によるGradient計算を例に、並列化効率を計って見ました。なぜこんな分子を選んだかは自分でも謎ですが、PC GAMESSでは現状できないUMP2 Gradientをやりたかったからではないかと。

Programtheory1 CPU2 CPUParallel Eff.
WinGAMESS
2006.02
UHF11.96.81.75
UMP243.625.61.70
UB3LYP100.251.41.95
PC GAMESS
7.1 RC
UHF12.26.41.91
UB3LYP40.525.01.62

結果は上記の通り。並列化効率以外の数値の単位は秒です。短時間の計算なのであまり現実的ではないような気もしますが、まぁまぁの効率であることは分かると思います。UMP2もちゃんと並列化できてます(そりゃそうだろう)。
ちなみに、スチレンの構造最適化(MP2/3-21G)も並列化効率を見てみましたが、凡そ1.7倍。上記Gradient計算の結果を反映した結果になってます。こちらは1 CPUで2000秒弱かかりましたので、現実的な比較ではないでしょうか。もっと大きな系やConventional SCFだとどうかはこれから時間が有るときに見て見ます。

2007年07月08日

7/22、Intelの価格改定&新CPU登場で…

タイトルは↑ですが、カテゴリはChemistryでお送りします。

7/22(日)、IntelがCore 2 DuoのFSB 1333MHz版[E6x50]シリーズをリリースします。同時に大幅な価格改定も行われ、新シリーズも含めてかなり攻撃的な価格設定が為されるようです。E6850(3.0GHz)はX6800より性能upしながら40,000円強ぐらいで出始める雰囲気。かなりコストパフォーマンス高そうです。45nMは待つ必要が無さそう?

さて、7月といえばボーナス商戦ですね。かく言う私もそれなりにボーナスを貰い、それにプラスして隠れ財産(「隠し」ではない:出張旅費清算の口座を先日初めて覗いてみてびっくり!)ができていたので、1台ワークステーションを組めそうな感じです。Max30万ぐらいまで可。
そこで、PC GAMESSの計算能力を加味した形でコストパフォーマンスを調べてみました。価格は7/22時点での予測ですので、正確さはかなり??ですが。

とりあえず、CPU以外の構成はほぼ統一。面倒なので一部だけ書くと

M/BGIGABYTE GA-G33-DS3R rev.1.0
RAMCFD W2U667CF-2GMZJ (2GBx2)
CaseAntec P182

HDDはSeageteのSATAII/500GBを使いますが、デュアルコアなら3台、クアッドコアなら5台接続します。

現状(Athlon 64 X2 4400+ (2.2GHz), DDR400 3GB, SATA150 160GBx2)の環境とC2D E6700(おそらくDDRII, SATAIIの環境)のベンチマーク結果比較より、同一クロックでの性能比は凡そ1.4倍(C2Dが1.4倍高速)。並列化効率(2→4)は凡そ1.8倍として計算効率を算出してます。上記性能比1.4倍という数値は、CPUのクロックだけでなくメモリ周りとHDD周りの高速化込みでの値と考えられます。

結果は以下の通り。コスト値は構成価格を計算効率で割った値で、E6850の2並列を1とした相対値です。

CPU構成金額(予価)2並列効率2並列コスト4並列効率4並列コスト
Athlon64X2 4400+ (2.2GHz)--1.00------
E6850 (3.00GHz/予価40,000円)212,5001.911.00----
Q6600 (2.40GHz/予価40,000円)242,5001.531.382.750.79
Q6700 (2.66GHz/予価70,000円)272,5001.691.453.050.80
QX6850 (3.00GHz/予価130,000円)332,5001.911.573.440.87

ということで、一番効率が良いのはQ6600のようですが、僅差でQ6700が追っています。絶対性能を考えるとQX6850もかなりいい線いってます。
E6850は、2並列なら断然安上がりですが、4並列を考慮した比較では見劣りします。シングルスレッド性能なら3.0GHzのCPUに軍配があがりますので、WinGAMESSでシングルスレッド計算を多用するケースでは1コアあたりの絶対性能(上の表では2並列効率/コスト)重視のセレクトになるでしょう。
意外と最上位のQX6850の性能/コスト比は良好です。ただクアッドコアの発熱は気になりますが…

※この記事で出した数値は、s2kが自身の参考の為に計算したもので信頼性は???です。PCを組むときは必ず自分で構成を検証しましょう。

2007年07月07日

久しぶりに雑記。

気がついたら寝てて、起きたら午前1時。
何かお腹も空いてきて、カップラーメン啜りながら書いております。。。

さっきmixi見てたら、大学生の時に働いていた塾の教え子(実際には僕はさしたることを教えていないわけですが…)が無事就職の内定をもらったらしく、こっちも嬉しくなってコメント書きました。おめでとー!
あの塾の教え子は皆、何となく応援したくなる憎めない子ばっかりで、ほとんどは最近の動向を知らないのですが、元気でやっていることを心より願ってます。

さて、人の応援も大事ですが、自分が社会人として成長するためにどうしたらよいか?もしくは自分にこれ以上の伸びしろがあるのか?というところを疑問に思う昨今。自身の悩み解決も今や重要課題です。

会社の中で生活していると、つくづく自分が社会生活に向いていない人間だと実感しますねぇ。まず、人付き合いがめんどくさい(え?致命的だって?)。そして、仕事が楽しいとあまり思えない。あ、これは去年あたりから少しずつですが。
自分に本当に向いている職業は何なのか、自分の中で計りかねているような…でもぽんぽん転職するわけにもいかない(というかできない)。この職場で良かったんかなぁーみたいな漠然とした思いがあるわけです。職場自体はいい人が多くて楽しくはあるんですが。今度、そういうのを見つめなおす、みたいな研修があるんで、そこで何かが発見できればよし。

----

話は180度違うどころかねじれの関係ですが、自分の部屋が暑くてたまりません。とにかく、関東の内陸は暑すぎです。前に住んでいたところからそんなに遠くはない(電車で1.5 h)所なのに、海があるのとないのじゃ大違い!せっかくのクーラーも焼け石に水で、22度設定でも27度までしか下がらない!おまけに部屋は熱源豊富(特にワークステーション)で、熱源フル回転時は扇風機もフル回転!かく言う今も計算が流れてます(PC3台ついてる…)。

気温29度。

寝れるわけがない!

----

あ、今思いついた。
こういう雑記はmixiの日記に書くことにするか?あっちはまだ使ってないし。

2007年07月02日

Winmostarのアイコンを勝手に作ってみた。

Winmostarのアイコンを作ってみました。
winmos_s2kicon.jpg
これ、未踏事業の特設サイトの画像のリファインです。菱形のデザインだったので、アイコンにするとこじんまりとしてしまってちょっと失敗かも。でも、個人的にはこのデザインが気に入っているので、デスクトップのショートカットとかこのアイコンに置き換えてます。

このアイコンを使ってもいいと思う奇特な方はこちらから。

これから旧掲示板の(仮の)ロックかけます。。。実は忘れてました。