7

Intel(R) Core(TM) i5-2450M CPU @ 2.50GHz プロセッサを搭載したラップトップを持っています。私は Ubuntu 12.04 (x86_64) を使用しており、プロセッサに関する情報を見つけようとしています。

探していたほとんどの情報を使用して見つけることができました

cat /proc/cpuinfo

lscpu

さらに知りたいのは、各キャッシュ レベルで使用されるキャッシュ ポリシーです。ライトバックですか、それともライトスルーですか。

そのような情報を見つけるために使用できるツールはありますか?

前もって感謝します。

4

2 に答える 2

9

これは、CPUID などから照会できるものではなく、CPU を構成してどちらかを実行することもできないため、照会するためのツールはありません。照会できるの、キャッシュの連想性、キャッシュ ライン サイズ、およびキャッシュ サイズです。たとえば、 を使用し/proc/cpuinfoます。

過去 10 ~ 20 年間のすべての Intel 互換 CPU は、キャッシュにライトバック戦略を使用していました (これは、部分的な書き込みを許可するために最初にキャッシュ ラインをフェッチすることを前提としています)。もちろん、それは理論であり、現実はそれよりもわずかに複雑です。

実質的にすべてのプロセッサ (モデルを含む) には、1 つまたは複数の形式の書き込み結合 (または Intel が Merom 以降と呼んでいるフィル バッファ) があり、最も古い Intel 互換 CPU を除くすべてが、SSE レジスタからのキャッシュされていない書き込みをサポートしています (これも形式を使用します)。書き込み結合の)。そしてもちろん、オンチップ キャッシュ コヒーレンス プロトコル、スヌープ フィルタリング、およびマルチプロセッサ システム内の 1 つのプロセッサのコア間および異なるプロセッサ間のキャッシュ コヒーレンシを保証するその他のメカニズムなどがあります。
それにもかかわらず、一般的なキャッシュ ポリシーは依然として書き戻しです。

于 2012-10-08T16:32:13.973 に答える
9

David Kanter の非常に優れた Intel Sandybridge の記事では、メモリ サブシステムとキャッシュ アーキテクチャについて説明しています。L1Dは通常の Intel ライトバックであり、コアごとの L2 もライトバックです。L3 (チップ上のすべてのコアで共有される大規模な包括的キャッシュ) も同様です。

Intel Core i7 プロセッサで使用されているキャッシュ マッピング手法はどれですか?も参照してください。さまざまな世代の Intel CPU の詳細については、こちらをご覧ください。


AMD は非常に異なるアプローチを採用しています。L1 キャッシュはライトスルーですが、小さな 4k 書き込み結合キャッシュを備えています。 AMD で 4k を超えるバッファーを絶えず書き換えると、L1 ではなく (遅い) L2 でボトルネックになります。

Agner のブログのそのスレッドのポスターの 1 つは、BD の L2 もライトスルーであると主張していますが、この回答に対する Paul Clayton のコメントは同意しません。(私はポールを信じる傾向があります。)

AMD Ryzenは幸いなことに、通常のライトバック 32kiB 8 ウェイ L1D と、プライベート ライトバック 512kiB L2 を使用しています。L3 は共有の 8MB ビクティム キャッシュです。これはライトバックですが、犠牲キャッシュとは、データがロード/プリフェッチのために直接ではなく、L1/L2 から追い出されたときにのみデータが入ることを意味します。4 コアの各コア クラスター (CCX モジュール) には、独自の 8 MB の L3 があり、異なるクラスター内のコア間の遅延/帯域幅は良くありません。

キャッシュ階層については、 write-back と write-through だけでなく、多くのことを言う必要がありますが、ほとんどの違いはシングルスレッド プログラムでは問題になりません。(OS のプロセス スケジューラが Ryzen 上のクラスター間でそれらを移動しない限り、その場合はまずいです。)


私の SnB システムでは:

sudo dmidecode

以下を含む出力を生成します。

Handle 0x0005, DMI type 7, 19 bytes
Cache Information
        Socket Designation: L1-Cache
        Configuration: Enabled, Not Socketed, Level 1
        Operational Mode: Write Back
        Location: Internal
        Installed Size: 32 kB
        Maximum Size: 32 kB
        Supported SRAM Types:
                Other
        Installed SRAM Type: Other
        Speed: Unknown
        Error Correction Type: None
        System Type: Unified
        Associativity: 8-way Set-associative

したがって、キャッシュがライトバックであるという事実は、信頼できる場合、少なくとも BIOS にあります。AMD CPU で何が表示されるのか、または BIOS ライターが単に「何かを作り上げる」傾向があり、時々間違った値を設定する傾向があるかどうかに興味があります。

この質問が指摘しているように、L2 の情報はちょっと偽物です。コアあたり 256k のプライベート L2 を合計します。

Handle 0x0006, DMI type 7, 19 bytes
Cache Information
        Socket Designation: L2-Cache
        Configuration: Enabled, Not Socketed, Level 2
        Operational Mode: Varies With Memory Address
        Location: Internal
        Installed Size: 1024 kB
        Maximum Size: 1024 kB
        Supported SRAM Types:
                Other
        Installed SRAM Type: Other
        Speed: Unknown
        Error Correction Type: None
        System Type: Unified
        Associativity: 8-way Set-associative

Handle 0x0007, DMI type 7, 19 bytes
Cache Information
        Socket Designation: L3-Cache
        Configuration: Enabled, Not Socketed, Level 3
        Operational Mode: Unknown
        Location: Internal
        Installed Size: 6144 kB
        Maximum Size: 6144 kB
        Supported SRAM Types:
                Other
        Installed SRAM Type: Other
        Speed: Unknown
        Error Correction Type: None
        System Type: Unified
        Associativity: Other

これは i5-2500k (6MiB の L3 を備えたクアッドコア SnB) 上にあります。

于 2015-12-07T21:30:50.110 に答える