ID 別のパフォーマンス規則Performance Rules by ID

警告Warning 説明Description
DA0001: StringBuilder を使用して連結してくださいDA0001: Use StringBuilder for concatenations System.String.Concat の呼び出しがプロファイル データの大きな割合を占めています。Calls to System.String.Concat are a significant proportion of the profiling data. StringBuilder クラスを使用して、複数のセグメントからの文字列を連結することを検討してください。Consider using the StringBuilder class to construct strings from multiple segments.
DA0002: VSPerfCorProf.dll がありませんDA0002: VSPerfCorProf.dll is missing プロファイラーは、プロファイリング実行中、VSPerfCorProf.dll を見つけることができませんでした。The profiler could not find VSPerfCorProf.dll during the profiling run. プロファイラー データを集めるためのコマンドライン ツールが VSPerfCLREnv.cmd ツールで必要な環境変数を初期化することなく使用されたとき、この警告が発生します。This warning occurs when command-line tools for the collection of profiler data are used without using the VSPerfCLREnv.cmd tool to initialize the necessary environment variables.
DA0003: カーネル サンプルが多数存在しますDA0003: Many kernel samples アプリケーションに対して集められた呼び出し履歴の大部分がカーネル モードで実行されています。A significant proportion of the call stack samples collected for the application were executing in kernel mode. 別のプロファイリング方法でアプリケーションをプロファイリングすることを検討してください。Consider profiling your application by using a different profiling method.
DA0004: プロセッサ使用率が高くなっていますDA0004: High processor usage プロセッサ (CPU) 使用率の大きな割合を、インストルメンテーション メソッドを使用して収集されたプロファイル データが占めていました。Processor (CPU) utilization was significantly high in profiling data that was collected using the instrumentation method. CPU 主体のアプリケーションをプロファイリングするときは、サンプリング プロファイリング方式の使用を検討してください。Consider using the sampling profiling method when profiling a CPU bound application.
DA0005: 頻繁な GC2 のコレクションですDA0005: Frequent GC2 collections 多数の .NET メモリ オブジェクトが、ジェネレーション 2 のガベージ コレクションで回収されています。A high number of .NET memory objects are being reclaimed in generation 2 garbage collection.
DA0006: 値の型で Equals() をオーバーライドしてくださいDA0006: Override Equals() for value types パブリック値型の Equals メソッドまたは等値演算子の呼び出しが、プロファイリング データの大きな割合を占めています。Calls to the Equals method or the equality operators of a public value type are a significant proportion of the profiling data. さらに効率的な方法を実装することを検討してください。Consider implementing a more efficient method.
DA0007: 制御フローでの例外の使用を避けてくださいDA0007: Avoid using exceptions for control flow .NET Framework 例外ハンドラーの多くの部分が、プロファイリング データで呼び出されました。A high rate of .NET Framework exception handlers were called in the profiling data. 他の制御フロー ロジックを使用して、スローされる例外の数を減らすことを検討してください。Consider using other control flow logic to reduce the number of exceptions that are thrown.
DA0008: 少数のサンプルしか収集されていませんDA0008: Few samples collected プロファイリング実行で少数のサンプルしか収集されませんでした。Only a few samples were collected in the profiling run. 収集されるサンプル数を増やすには、実行時間を長くするか、サンプリング速度を上げてください。Consider a longer run or faster sampling rate for more significant results.
DA0009: JIT に費やされる時間の割合が高くなっていますDA0009: High % time in JIT アプリケーションの実行時間のかなりの割合が、Just-In-Time (JIT) コンパイラで使用されました。A significant percentage of application execution time was spent in the Just In Time (JIT) compiler.
DA0010: GetHashCode の負荷が高くなっていますDA0010: Expensive GetHashCode 型の GetHashCode メソッドの呼び出しがプロファイリング データの大きな割合を占めているか、またはそのメソッドがメモリを割り当てています。Calls to the GetHashCode method of the type are a significant proportion of the profiling data or the method allocates memory.
DA0011: CompareTo の負荷が高くなっていますDA0011: Expensive CompareTo 型の CompareTo メソッドが高コストであるか、またはメモリを割り当てています。The CompareTo method of the type is expensive or allocates memory.
DA0012: リフレクションが頻繁に実行されていますDA0012: Significant amount of Reflection InvokeMember および GetMember などの System.Reflection メソッドまたは MemberInvoke などの Type メソッドへの呼び出しが、プロファイリング データの大きな割合を占めています。Calls to the System.Reflection methods such as InvokeMember and GetMember or to Type methods such as MemberInvoke are a significant proportion of the profiling data. 可能な場合は、事前バインディングを使用するこれらのメソッドを、依存アセンブリのメソッドに置き換えることを検討してください。When you can, consider replacing these methods with early binding to the methods of dependent assemblies.
DA0013: String.Split/String.Substring が頻繁に使用されていますDA0013: High usage of String.Split or String.Substring System.String.Split メソッドまたは System.String.Substring メソッドの呼び出しがプロファイル データの大きな割合を占めています。Calls to the System.String.Split or System.String.Substring methods are a signifiicant portion of the profiling data. 文字列内に部分文字列が存在することをテストする場合は、System.String.IndexOf または System.String.IndexOfAny を使用することを検討してください。Consider using System.String.IndexOf or System.String.IndexOfAny if you are testing for the existence of a substring in a string.
DA0014: ディスクへのアクティブなメモリのページングが非常に高率で発生していますDA0014: Extremely high rates of paging active memory to disk プロファイリングの実行中に収集されたシステム パフォーマンス データが、ディスクへのアクティブなメモリのページングがプロファイリング実行全体において非常に高率で発生していることを示しています。System performance data that was collected in the profiling run indicates that an extremely high rate of paging active memory to and from the disk occurred throughout the profiling run. 通常、このレベルのページング率は、アプリケーションのパフォーマンスと応答速度に影響します。Paging rates at this level usually will impact application performance and responsiveness. アルゴリズムを修正してメモリの割り当てを減らすことを検討してください。Consider reducing memory allocations by revising algorithms. また、アプリケーションのメモリ要件も検討した方がよいでしょう。You might also have to consider the memory requirements of your application. より多くのメモリを備えたコンピューターでプロファイリングを再度実行してみてください。running profiling again on a computer that has more memory.
DA0017: ディスクへのアクティブなメモリのページングが高率で発生していますDA0017: High rates of paging active memory to disk プロファイリングの実行中に収集されたシステム パフォーマンス データが、ディスクへのアクティブなメモリのページングがプロファイリング実行全体において高率で発生していることを示しています。System performance data that was collected in the profiling run indicates that an high rate of paging active memory to and from the disk occurred throughout the profiling run. 通常、このレベルのページング率は、アプリケーションのパフォーマンスと応答速度に影響します。Paging rates at this level usually will impact application performance and responsiveness. アルゴリズムを修正してメモリの割り当てを減らすことを検討してください。Consider reducing memory allocations by revising algorithms. また、アプリケーションのメモリ要件も検討した方がよいでしょう。You might also have to consider the memory requirements of your application. より多くのメモリを備えたコンピューターでプロファイリングを再度実行してみてください。running profiling again on a computer that has more memory.
DA0018: 32 ビット アプリケーションがプロセスのマネージ メモリ制限で実行されていますDA0018: 32-bit Application running at process managed memory limits プロファイリングの実行中に収集されたシステム データで、.NET Framework のメモリ ヒープが、32 ビット プロセスでマネージ ヒープが到達可能な最大サイズに近づいたことが示されています。System data that was collected during the profiling run indicates the .NET Framework memory heaps approached the maximum size the managed heaps can grow to in a 32-bit process. 報告される値は、プロファイリング中のプロセスがアクティブな状態にあったときに測定されたヒープの最大値です。The value reported is the maximum observed value of the heaps while the profiled process being was active. アプリケーションでマネージ リソースの使用を最適化することを検討してください。Consider optimizing the use of managed resources by the application.
DA0021: ジェネレーション 1 のガベージ コレクションが高率ですDA0021: High rate of Gen 1 garbage collections プロファイリングの実行中に収集されたシステム パフォーマンス データは、ジェネレーション 1 のガベージ コレクションで解放された .NET Framework オブジェクト用のメモリが、ジェネレーション 0 のデータ コレクションと比較して高率であることを示しています。System performance data that was collected during profiling indicate that a significant proportion of the memory for.NET Framework objects was reclaimed in generation 1 of garbage collection compared to generation 0 data collection.
DA0022: ジェネレーション 2 のガベージ コレクションが高率ですDA0022: High rate of Gen 2 garbage collections プロファイリングの実行中に収集されたシステム パフォーマンス データが、ジェネレーション 2 のガベージ コレクションで解放された .NET Framework オブジェクト用のメモリが、ジェネレーション 0 およびジェネレーション 1 のガベージ コレクションと比較して高率であることを示しています。System performance data that was collected during profiling indicate that a significant proportion of the memory for.NET Framework objects was reclaimed in generation 2 of garbage collection compared to generation 0 and generation 1 garbage collections.
DA0023: 高い GC CPU 時間DA0023: High GC CPU time プロファイリングの間に収集されたシステム パフォーマンス データで、ガベージ コレクションに費やされた時間がアプリケーション処理時間全体と比較して大きいことが示されています。System performance data that was collected during profiling indicates that the amount of time spent in garbage collection is significant compared with the total application processing time.
DA0024: 過剰な GC CPU 時間DA0024: Excessive GC CPU Time プロファイリングの間に収集されたシステム パフォーマンス データで、ガベージ コレクションに費やされた時間がアプリケーション処理時間全体と比較して大き過ぎることが示されています。System performance data that was collected during profiling indicates that the amount of time spent in garbage collection is excessively high compared with the total application processing time.
DA0026: 過剰なカーネル CPU 処理時間DA0026: Excessive kernel CPU time processing カーネル モードで実行された CPU 時間の割合が、ユーザー モードで費やされた時間数を超えました。The proportion CPU time that was executed in kernel mode exceeded the amount of time spent in user mode. カーネル モードの実行時間が長い原因を判断するために、プロファイリングを再度実行し、システム コール (syscalls) の数をサンプリングすることを検討してください。Consider profiling again and sampling the number of system calls (syscalls) to determine the cause of the high kernel mode execution times.
DA0029: サポートされていない CLR バージョンですDA0029: Unsupported CLR Version アプリケーションのプロファイリングを、プロファイリング ツールでサポートされていない .NET Framework version 1.1 を使用して実行しようとしています。You are trying to profile an application that uses the .NET Framework version 1.1 that is not supported by the Profiling Tools.
DA0030: データベース プロジェクトの階層の相互作用の測定を収集しますDA0030: Gather Tier Interaction measurements for database projects System.Data メソッドの呼び出しがプロファイル データの大きな割合を占めているため、プロファイリングの実行中に階層の相互作用データが収集されませんでした。Calls to System.Data methods are a significant proportion of the profiling data and you have not collected tier interaction data in the profiling run. プロファイリングを再度実行し、階層の相互作用データを追加することを検討してください。Consider profiling again and adding tier interaction data.
DA0038: 高率のロック競合DA0038: High Rate of Lock contentions プロファイリング データで収集されたシステム パフォーマンス データが、アプリケーションの実行中に非常に高率のロック競合が発生したことを示しています。System performance data that is collected with the profiling data indicates that a significantly high rate of lock contentions occurred during application execution. 競合の原因を見つけるために、同時実行プロファイル方法を使用して、プロファイリングを再度実行することを検討してください。Consider profiling again using the concurrency profiling method to find the cause of the contentions.
DA0039: 非常に高率のロック競合DA0039: Very High Rate of Lock contentions プロファイリング データで収集されたシステム パフォーマンス データが、アプリケーションの実行中に極端に高率のロック競合が発生したことを示しています。System performance data that is collected with the profiling data indicates that an excessively high rate of lock contentions occurred during application execution. 競合の原因を見つけるために、同時実行プロファイルの方法を使用して、プロファイリングを再度実行することを検討してください。Consider profiling again using the concurrency profiling method to find the cause of the contention.
DA0501: プロセスによる平均 CPU 使用量をプロファイリングしています。DA0501: Average CPU consumption by the Process being profiled. このメッセージにより、アプリケーションの命令の実行中にプロセッサがビジー状態になった時間がパーセントで報告されます。This message reports the percentage of time that a processor was busy executing instructions from the application. プロファイリング中のプロセスがアクティブな状態にあるすべての測定間隔を通じて取得された値の平均値が、このメッセージによって報告されます。The reported value is the average over all the measurement intervals in which the process being profiled was active. 複数のプロセッサが搭載されたコンピューターの場合、100% を超える値になる可能性があります。The value of value can be greater than 100% on a machine with more than one processor.
DA0502: プロセスによる最大 CPU 使用量をプロファイリングしていますDA0502: Maximum CPU consumption by the Process being profiled このメッセージにより、アプリケーションの命令の実行中にプロセッサがビジー状態になった最大時間がパーセントで報告されます。This message reports the maximum percentage of time that a processor was busy executing instructions from the application. プロファイリング中のプロセスがアクティブな状態にあるすべての測定間隔を通じて取得された値のうち、最も大きな値がこのメッセージによって報告されます。The reported value is the maximum value reported among all the measurement intervals in which the process being profiled was active. 複数のプロセッサが搭載されたコンピューターの場合、パーセントが 100% を超える可能性があります。The percentage can be greater than 100% on a machine with more than one processor.
DA0503: プロセスのワーキング セット平均バイト数がプロファイリングされていますDA0503: Average Working Set in Bytes for the Process being profiled このメッセージにより、プロセスが現在使用している物理メモリ量 (ワーキング セット) の平均がバイト単位で報告されます。This message reports the average amount of physical memory that the process is currently using in bytes (the working set). プロセスのワーキング セットは、物理メモリに現在常駐しているプロセス アドレス空間のページを表します。The process working set represents pages from the process address space that currently reside in physical memory.
DA0504: プロセスのワーキング セット最大バイト数がプロファイリングされていますDA0504: Maximum Working Set in Bytes for the Process being profiled このメッセージにより、プロセスが現在使用している物理メモリの最大容量がバイト単位で報告されます。This message reports the maximum amount of physical memory that the process is currently using in bytes. プロセスのワーキング セットは、物理メモリに現在常駐しているプロセス アドレス空間のページを表します。The process working set represents pages from the process address space that currently reside in physical memory. この規則は、プロファイリングがアクティブな状態にあったときの、プロセスのワーキング セットの最大値を報告します。This rule reports the maximum value for the process working set while profiling was active.
DA0505: プロセスに割り当てられた平均プライベート バイト数がプロファイリングされていますDA0505: Average Private Bytes allocated for the Process being profiled このメッセージにより、プロセスによって割り当てられた現在の仮想メモリ容量がバイト単位で報告されます (プライベート バイト)。This message reports the average amount of virtual memory that the process has currently allocated in bytes (Private bytes). プライベート バイトは、プロセス内部で実行中のスレッドからのみアクセスできるプロセスによって割り当てられた仮想メモリの位置を表します。Private bytes represents virtual memory locations that were allocated by the process that can only be accessed by threads running inside the process.
DA0506: プロセスに割り当てられた最大プライベート バイト数がプロファイリングされていますDA0506: Maximum Private Bytes allocated for the Process being profiled このメッセージにより、プロセスによって割り当てられた現在の仮想メモリの最大容量がバイト単位で報告されます (プライベート バイト)。This message reports the maximum amount of virtual memory that the process has currently allocated in bytes (Private bytes). プライベート バイトは、プロセス内部で実行中のスレッドからのみアクセスできるプロセスによって割り当てられた仮想メモリの位置を表します。Private bytes represents virtual memory locations that were allocated by the process that can only be accessed by threads running inside the process.