メモリ内に多数の異なるポイントからの値を使用すると、キャッシュミスが発生し、パフォーマンスが低下することがあります。プログラムが実行されると、L1キャッシュに似た小さなブロックで実際にCPUからメモリにロードされますか?おそらくメモリ内を頻繁にジャンプすると、このキャッシュにミスが発生し、パフォーマンスが低下するため、私は尋ねます。だから私はそれは2つの質問だと思う:そのような "実行キャッシュ"は頻繁にパフォーマンスを傷つける周りを飛び回っています。キャッシュの問題により、プログラム内でジャンプするとパフォーマンスが低下する
P.S.どのような適切なタグがパフォーマンスとキャッシュ以外のものであるかは不明です。
P.P.S.例として、多くのネストされたif
とelse
が含まれているタイトなループがあります。ここで、ifおよびelseネストの末尾の最終結果はほんのわずかなコードです。
コードをすばやく高速化する必要がない限り、おそらくキャッシュミスを心配する必要はありません。あなたのプログラムを最適化するもっと簡単な方法があります。 – Jonathan
私のコードの99.9%について、私はこれについて気にしません。これは、ほんのわずかしかなく、稀で重要な部分にのみ関連し、実際には高速でなければならず、高性能で多数の小さな相関関係のケースを迅速に処理する方法の問題は、現在私が直面している問題です。 –