BT

Ready for InfoQ 3.0? Try the new design and let us know what you think!

Visual Studio 2012はレスポンスを改善した

| 作者: Jeff Martin フォローする 19 人のフォロワー , 翻訳者 尾崎 義尚 フォローする 0 人のフォロワー 投稿日 2012年6月18日. 推定読書時間: 2 分 |

原文(投稿日:2012/06/15)へのリンク

先日のMicrosoft開発マネージャーEric Knox氏による記事で、VS2012の編集パフォーマンスの内部的な改良を深く掘り下げている。Knox氏のチームは、PerfWatsonをさらに使用するアプローチを進化させ、Immediate Delay Tracker (IDT)と呼ばれる新しいツールを組み込んだ。

PerfWatsonは、"[Microsoft]が特定のポイントで実行されるVisual Studioのコードを[特定する]ためのミニヒープダンプ"を収集する。エンジニアはキーストロークごとにVSのパフォーマンスをモニタしたかったため、Event Tracing for Windows (ETW)を利用して"より細かくシステムを計測できる"IDTを開発した。

ETWはOSが提供する汎用的で高速にトレース機能である。カーネルに実装されたバッファリングとロギングのメカニズムを使って、ETWはユーザーモードアプリケーションとカーネルモードデバイスドライバの両方で発生したイベントをトレースできるメカニズムを提供する。さらにETWは、動的にログイングを有効にしたり、無効にしたりする機能を提供しており、リブートやアプリケーションの再起動することなく、簡単に製品環境で詳細トレースを取得することができる。

ETWベースのアプローチの優位性は、Knox氏によると"PerfWatsonのようなシングルスタックの代わりに、[チーム]は毎ミリ秒コールスタックを取得して、収集したスタックのコレクションを分析することができた。"VSで作業しているエンジニアは、影響を最小限で便利なパフォーマンス情報を取得することができる。Knox氏のチームは、Microsoft社内のVSユーザーをモニターして、修正版を実装した後、以下のパフォーマンス向上をドキュメント化した:

 

Visual Studio 2010

Current

C#

 

 

50ms以上のキー

15.05%

7.87%

100ms以上のキー

10.26%

0.62%

200ms以上のキー

1.50%

0.06%

C++

 

50ms以上のキー

11.85%

0.48%

100ms以上のキー

7.88%

0.20%

200ms以上のキー

6.85%

0.07%

VB

 

 

50ms以上のキー

0.83%

0.60%

100ms以上のキー

0.13%

0.06%

200ms以上のキー

0.06%

0.06%

現在、VS 2012 RCが 提供されているため、読者のみなさんは、製品を使ってこれ自身と、それらの見た目がどのように変更されたのかを確認することができる。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

特集コンテンツ一覧

C# 8の非同期ストリーム

Bassam Alugili 2018年10月11日 午前3時13分

BT