5

これらの呼び出しのうち、平均して速いのはどれですか? mmap小さい割り当ての方が速いと聞いたことがありますが、どちらも比較したことはありません。これらのパフォーマンスに関する情報があればいいでしょう。

4

1 に答える 1

12

linux答えは実装によって確実に異なるため、これに特定の実装 ( など) をタグ付けする必要があります。Linux が最も一般的であるため、ここでは Linux を想定します。

そうは言ってbrkも、理論的にはより最適化可能であり、実際には私のマシンで約 10% 高速に実行されます。1ページを割り当てると、これらは私が得る時間です:

  • brk: 最小 2550 サイクル、標準 2650 サイクル
  • mmap: 最小 2700 サイクル、標準 2800 サイクル

セマフォのbrkロックをスキップできるという話に沿って何かを聞いたのを覚えています。mmap

注:コードがすべてキャッシュにあることを確認するために、タイミングの前にダミー呼び出しを行うようにテストを調整した後、これらの時間を更新しました。

于 2011-04-01T19:33:39.837 に答える