VB2005 を超える VB2008 のパフォーマンス (Lisa Feigenbaum)
VB2008 にアップグレードすべきかどうかお悩みの方は、パフォーマンスの違いを検討してみてください。VB チームでは、新しいリリースごとに操作性の向上を実現するだけでなく、処理速度を速くすることで、時間の節約と生産性の向上にも役立てたいと考えています。これが私たちの目標であり、Orcas のリリースにおいても、チーム全体がこの目標の実現に専念してきました。以下の表の数字から、注目に値するいくつかの変更点についてぜひご覧ください。
[** 免責事項 : ここに掲載するデータは、社内のラボで 2 つの製品を実行し、その比較結果から得られたものです。1 台の特定のコンピュータで 2 つの大規模なカスタマ ソリューションを使用した結果であり、コンピュータ システムによっては、処理速度がこれより速い場合も、遅い場合もあります。また、ソリューションによって、各操作に必要な作業も異なります。そのため、実際のパフォーマンスがこれより良い場合も悪い場合もあります。このデータで重要なのは、同じハードウェア上でもバージョンによってパフォーマンスが異なる点です。新しいバージョンでパフォーマンスがどのように向上したかをお伝えするためにこのデータをお見せするもので、この数値を業界標準として使用する意図はまったくありません。
次の表に示すのは、私が使用したソリューションとコンピュータでのパフォーマンスに関するデータです。1 つのソリューションには 29 のプロジェクトと 2,772 のファイルが含まれ、すべてのメソッドと型に xml コメントが付けられています。使用したもう 1 つのソリューションには、783 のファイルが含まれています。コンピュータの仕様は、Dual Core Pentium-D (3.0 GHz)、1 GB の RAM、10K の RPM HD です。また、オペレーティング システムは XP です。これは、私たちがパフォーマンスの内部テストで使用した、多数のコンピュータ仕様の 1 つです。 ]
シナリオ |
VB2005 での時間 (ms) |
VB2008 での時間 (ms) |
VB2008 は VB2005 より x 倍高速 (2005 での時間 /2008 での時間 ) |
VB2008 は VB2005 の x% 程度の時間がかかる (100% * 2008 での時間 /2005 での時間 ) |
大規模プロジェクトのビルド (バックグラウンド コンパイルを使用) |
222206.25 |
1352.88 |
164.25 |
0.61% |
大規模な複数プロジェクト ソリューションのビルド (明示的なビルド操作) |
1618604.75 |
57542.75 |
28.13 |
3.56% |
大規模な複数プロジェクト ソリューションのビルド (バックグラウンド コンパイルを使用) |
222925.50 |
19861.88 |
11.22 |
8.91% |
クラスにメンバを追加した後の応答性 |
327.00 |
36.50 |
8.96 |
11.16% |
プロジェクトを開いた後の応答性 |
255551.25 |
38769.38 |
6.59 |
15.17% |
型の一覧を表示するために Intellisense を起動 (初回) |
1192.50 |
530.5 |
2.25 |
44.49% |
ソリューションで XML コメントでエディット コンティニュを実行 (初回) |
441.25 |
210.5 |
2.10 |
47.71% |
メソッド ステートメントを変更した後の応答性 |
390.25 |
236.38 |
1.65 |
60.57% |
デバッガでの 10 ステップ (2 回目以降) |
1850.75 |
1167.13 |
1.59 |
63.06% |
型の一覧を表示するために Intellisense を起動 (2 回目以降) |
79.25 |
51.5 |
1.54 |
64.98% |
ソリューションが既にビルドされているときに F5 (2 回目以降) |
385.20 |
278.7 |
1.38 |
72.35% |
エラー後、エラー一覧への項目の追加 |
531.25 |
394.5 |
1.35 |
74.26% |
デバッガでの 10 ステップ (初回) |
1336.50 |
1150 |
1.16 |
86.05% |
開いているソリューションでのバックグラウンド コンパイル中の応答性 |
4803.00 |
4284.75 |
1.12 |
89.21% |
大規模なソリューションの読み込み (2 回目以降) |
13667.5 |
12407.25 |
1.10 |
90.78% |
大規模なソリューションの読み込み (初回)(注 : これは XP で強化された機能です。Vista では、ソリューションの読み込みが XP の約 2 倍強化されています。) |
19946.25 |
18222 |
1.09 |
91.36% |
** すべての時間データは、カスタマ ソリューションの操作を実行して得られたものです。ご自分のソリューションでの最適化をお望みの場合は、どうぞ私たちにお送りください ( vbperf@microsoft.com ) 。私たちはいつでも、テストに使用できるカスタマ プロジェクトを入手したいと思っています。
皆さんが VB で経験しているパフォーマンス上の問題について、ここで取り上げた以外のシナリオがありましたら、その再現手順をぜひお寄せください ( vbperf@microsoft.com ) 。
VB2008 のパフォーマンスについて、これ以外にも役に立つ情報があります。ぜひご参照ください。
- Channel9 ビデオでは、VB 開発者の Cameron McColl が、Orcas で実現された VB のいくつかのパフォーマンス強化について説明し、デモンストレーションしています (https://channel9.msdn.com/ShowPost.aspx?PostID=328382#328382 (英語))。VB2008 でパフォーマンス強化に力を入れた領域の例として、ステップ実行、初めての intelliSense、タスク一覧のエラー、エディタの応答性、大規模ソリューション、および Web アプリケーションがあります。
- Cameron の Web キャストでは、これらのパフォーマンス強化の多くについてもデモンストレーションしています (https://blogs.msdn.com/vbteam/archive/2007/07/24/today-s-performance-webcast-slide-deck-and-channel9-interview-beth-massi.aspx (英語))。
VB チーム
投稿 : 2008 年 1 月 4 日 8:08 AM
分類 : Lisa Feigenbaum、パフォーマンス、VB2008、Sarika Calla、Cameron McColl
The Visual Basic Team - https://blogs.msdn.com/vbteam/archive/2008/01/04/vb2008-outperforms-vb2005-lisa-feigenbaum.aspx (英語) より