掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
実行速度の差 (ID:76242)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
何をされたいのでしょうか? VBでの命令単位でのクロック削減は高速化にほとんど寄与しません。 一般のVBアプリにおいて、消費時間の90%以上が コンポーネント関連の処理によるものです。 科学技術計算でもない限り算術演算関数の消費時間なんて、 残り10%のさらに何%かでしょう。 (もし時間にシビアな科学技術計算をしようと思っているのなら、 VBを使うこと自体、間違ってます。) そのせいぜい数%の部分を高速化したところでたかがしれています。 たとえば、P-CODEはネイティブに比べ、数倍から数十倍遅いはずですが、 VBの場合、前述の理由でコンパイルコード部分の全体に占める割合が小さいため、 結果的にどちらでコンパイルしても目立つほど速度差は発生しません。 このへんはヘルプに書いてありますから、一読されることをお勧めします。 >MOV AL,0がXOR AL,AL,のようにせずサイクルを短くできていないと思うのですが、 VBの最適化を信じてはいけません。 せいぜい「全然やってないわけじゃないよ」程度です。 たとえば、 a = 3 a = a + 1 は MOV EAX,00000004h とコンパイルしますが、 a = a + 1 は INC EAX ではなく ADD EAX,00000001h とコンパイルします。 (条件にもよりますから、常にこうなるとは限りませんが・・・。) 速度にシビアな案件ならVBを使うべきでありません。 というよりコンポーネントシステムに乗っかった言語を 使うべきではありません。 さらにいうなら低速なOSを使うべきではありません。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.