例えば以下のようなコンパイルオプションがありますので、使用してみてください。
・-pg:
プロファイラツールgprof用の解析ファイル(a.out)を生成する。
関数呼び出し回数や関数事の平均実行時間など、どの処理がボトルネック
になっているかがわかる。解析結果は、「gprof a.out」で閲覧できる。
・-O4:
-O3との違いは、関数のインライン展開を行ってくれるところ。
これによって、関数呼び出し時のスタックの積み卸し処理がなくなる。
※-pgオプションとの併用は可能。ただし、プロファイリング結果に
インライン展開された関数名は表示されなくなるので注意。