Archives

22 November 2007 の記事

先日のエントリで書いた Visual Studio 2008 の MP オプションを
かるく(いいかげんに)試してみました。
Visual Studio 2008
取りあえずコマンドラインから。

使用した環境
・Visual Studio 2008 Professional (VC9.0)
・Vista x64、x64(amd64) 版コンパイラ cl
・Pentium4 3.6GHz ×2CPU × HT = 4thread RAM2G
・41本の cpp ソースコンパイル

コマンドラインオプション
 -W3 -WX -O2 -Oi -Ot -Oy -Ob2 -GA -GF -Gy -DWIN32
 -D_WINDOWS -D_MBCS -EHsc -fp:except-
 -fp:fast -Zi -TP -c

-c なので obj 生成のみ。
何度も試したのでファイルはほぼキャッシュされている状態。

結果 (コンパイル時間の比較)

VC9 /MP1   47sec    (28%)  (/MP無指定と同じ)
VC9 /MP2   30sec    (55%)
VC9 /MP4   21sec    (100%)

後ろの括弧の中はパフォーマンスモニタの CPU 使用率(目安) です。
かなり効果ありました。

でももっと驚いたのは

VC8 /MP1   42sec
VC8 /MP4   19sec

あれ、VC8 (VS2005) でも /MP が使えている。
テストしててエラーが出ないからおかしいなとは思ったのですが。
マニュアルに無いけど隠し機能でしょうか。知らなかっただけかも。

同条件で Core2 Duo の場合
・Visual Studio 2008 Professional (VC9.0)
・Vista x64、x64(amd64) 版コンパイラ cl
・Core2 Duo E6600 2.4GHz RAM4G

VC9 /MP1   29sec
VC9 /MP2   17sec



以前下記エントリで書いた ctrlswapmini についてです。
WindowsMobile touchkeysip / ctrlswapmini

Advanced W-ZERO3[es] WS011SH での ctrlswapmini 動作に関して、
拡張かな時に [→] キーの判定が効かなくなるのは他のソフトとの
相性が原因だったと報告をいただきました。
ただ同条件にしても W-ZERO3[es] WS007SH では問題が発生しないため、
本当の原因は特定できていません。

また別件で、Advanced W-ZERO3[es] WS011SH では ctrlswapmini の
回転時キーマップが有効にならないとの報告をいただきました。
こちらも W-ZERO3[es] WS007SH では動作しているので、
機種依存の問題の可能性があります。
やはり実機がないとわからないですが、何か追加情報等ありましたら
ご連絡ください。

ctrlswapmini