Ubuntu 14.04でL1キャッシュまたはL2キャッシュ(あるいはその両方)を無効にすることはできますか(できればPythonなどの高レベル言語で)。もしそうなら、どうですか?
さらに、キャッシュを無効にすることは、アーキテクチャによって大きく異なりますか?もしそうなら、私はARM Cortex-A15にもっと興味があります。
編集
キャッシュを無効にする方法を調査しているときに、kernel.orgのドキュメントの / proc / sys / vm /にある「drop_caches」ファイルについて知りました
「これに書き込むと、カーネルはクリーンなキャッシュだけでなく、デントリやiノードなどの再利用可能なスラブオブジェクトも削除します。削除すると、メモリは解放されます。」
...
「このファイルは、さまざまなカーネルキャッシュ(inode、dentries、pagecacheなど)の増大を制御する手段ではありません。これらのオブジェクトは、システムの他の場所でメモリが必要になったときに、カーネルによって自動的に再利用されます。」
これは私が探しているもののようには見えません。キャッシュを無効にするようには見えないだけでなく、仮想メモリはハードウェアではなくオペレーティングシステム内にあると考えました。私の目標は、キャッシュを無効にして、RAMなどの別の場所で目的のメモリを探す必要があることです。
編集
明確にするために、キャッシュを無効にするとシステムがどうなるかを理解しています。ただし、これは、安全性が重要なアプリケーションの信頼性を高めるために宇宙アプリケーションで使用される一般的な手法です。この現象を文書化したリソースを以下に示します。
キャッシュメモリを介して、組み込みソフトウェアの放射線による障害を低減
宇宙放射線環境におけるマイクロプロセッサの地上放射線試験のガイドライン
トピックに関する本さえあります: