私のアプリケーションでは、ある時点でメモリ データの大きな連続ブロック (数百 MB) に対して計算を実行する必要があります。私が考えていたのは、プログラムが将来触れるブロックの部分をプリフェッチし続けて、その部分で計算を実行すると、データが既にキャッシュにあるようにすることでした。
誰かがgccでこれを達成する方法の簡単な例を教えてもらえますか? どこかで読ん_mm_prefetch
だのですが、正しい使い方がわかりません。また、マルチコア システムを使用していますが、各コアはメモリの異なる領域で並行して動作することに注意してください。