Intel x86-64マザーボードに2枚のDIMMを挿入したとします。すべてのメモリインターリーブ(バンクおよびチャネル)が無効になります。 Linux kernel(バージョン4.11.11)のDIMMの1つの物理メモリスペースを予約し、その物理的(予約済み)メモリスペースをアプリケーションに公開することを試みています。 DIMMはメモリチャネルででなく、になります。これをどうやってやりますか
私はメモリを解放する前にCPUキャッシュからメモリ範囲を取り除いています。理想的には、これらのキャッシュラインをメモリに保存せずに放棄するだけです。誰もその値を使うつもりはなく、そのメモリ範囲(malloc()/new/_mm_malloc()などの後)を再度取得する人は、まず新しい値でメモリを埋めるでしょう。 this question suggestsとして、現在のx86_64で理想を達成する
私はx86 CPUの機能を得るための小さなプログラムを書こうと思っています。 (1)EAX=1: ......
As of January 2011, the standard Intel feature flags are as follows:
......
(2)EAX=80000001h: ......
AMD feature flags are as follows:
...