タグ

ブックマーク / kumagi.hatenadiary.org (2)

  • perfでぺろぺろしていたら詰まった - くまメモ

    perfという大変優秀なプロファイラがあります。どう優秀かというと ・gprofと違い、-pgなど付けなくとも既存のバイナリに対して実行できます ・バイナリに対して実行できるという事はあらゆる言語の実行を観察できます sudo apt-get install linux-tools まずこれで必要なツールは入ります。 試しに何かのパフォーマンスを見てみましょう $ perf stat ruby -e'100000.times{|n|p n}' 実行にかかったCPUサイクル数、分岐の数、分岐予測ミス数、キャッシュ参照数、キャッシュミス数などがズラズラ出ます。IPCなども計算されてプログラムの性質がわかります。 これでは物足りない人は、自分の好みの通りにセッティングを変えることもできます。 $ perf list で観測可能なモノのリストが表示されるので、その中から好きなものをコンマで繋いで例

    perfでぺろぺろしていたら詰まった - くまメモ
  • google mockで快適テスト生活 - くまメモ

    googleにより公開されているgoogle mockが使いやすかったので使い方紹介。 http://code.google.com/p/googlemock/ から落としてペペっと入れましょう。 使いたいシーンとしては、充分モジュール化されたオブジェクト指向プログラム中で int main(){ A a; B b; func(&a, &b); // a->hoge(1) と b->fuga(2,3) が呼ばれて欲しい! } この様に特定の関数が狙った通りの動作をして欲しい(というか、その動作をすることを仕様化したい場合) #include <gtest/gtest.h> #include <gmock/gmock.h> class mock_A{ public: MOCK_METHOD1(hoge,void(int)); // void hoge(int);と同義 }; class mo

    google mockで快適テスト生活 - くまメモ
  • 1