小さなライブラリの使用法を既存の大きなソフトウェアに追加し、オーバーヘッドとそれが小さなライブラリの属性であることを分析したいと思います(rdtsc()やgettimeofdayの呼び出しだけでなくファインダーの詳細で)。rdtsc()のようなものを使用すると、ライブラリ関数の呼び出しに伴うレイテンシーの感覚を得ることができますが、ブランチが適切に予測されていないか、キャッシングが正しく機能していないかなどを確認できない限り、レイテンシーの帰属を行うことはできません。より大きなバイナリのコンテキスト内でライブラリ内のルーチンに出入りする特定のハードウェアイベントを確認することを想像して、PAPIを調べましたが、PAPIが機能するには特定のカーネルモジュールが必要なようです(Linux2.6。 18 && Intel Xeon 5570)...特にIntelプロセッサ向けのVtuneがありますが、そのようです。
目標にVtuneを使用する方法はありますか、それともカーネルにパッチを適用せずにそのようなカウンターにアクセスできる方法はありますか?