アカウント名:
パスワード:
シリコンが余っているからといって、キャッシュの階層を重ねすぎるのもどうかと。
シリコンが余っているからではなく必要に迫られてですよ。DRAMの微細化も速度も消費電力も限界になってて、これ以上改善できなくなったから仕方なくやってる。
SRAMはロジックの微細化に合わせて順当に進化できたのですが、DRAMは15nmぐらいから先ほとんど進化できなくて止まってます。DRAMもインターフェイス側の改良は続いていて、GDDRとかHBMとかで並列化によって帯域幅は向上できてるのですが、素子単体は改良できてないのでレイテンシが数十nsから速くなってないし消費電力も減ってない。業界的にはMRAMなりPRAMなりの次世代メモリにバトンタッチする予定だったのが、どれも研究開発は出来ても実用化の壁に当たってモノになってない。
そこでCPUにはAMDの3D-VCacheのようにSRAMを積層してキャッシュ容量増やしたり、GPUでもNVIDIA、AMD共に最新世代では大容量SRAMキャッシュ追加してDRAMへのアクセス減らして性能改善してます。
L1~L3増やせばよくない?キャッシュ階層を増やすと同期大変だしTLBバグみたいな元になるし、データのコピーがL1~L4まで4重に居座ることになって、シリコンが勿体なくない?素人考えなんだろうけどどうしても気になる。
近い階層のキャッシュ増やすと、検索に時間がかかって性能上がらんのじゃね?L3増やせば、それは性能的にはL3なくしてL4積んだことにしかならないとか。
CPUはメモリーを読み込んでないのでその辺は問題ない。CPUが読み込んでいるメモリデータはブロック単位です。ブロック単位で読み込んでブロック単位で書き込みをする…そんな仕組みメモリアクセスの状況からどこを読んでいるかわからない。必要とされる場所もしくは必要とされるであろう場所のブロックが読み込まれる。そのためキャッシュの効果が上がる。メモリーは並列読み込みで時間単位みかけで転送レートが上がればある程度は改善できる。さらにCPUが早くなるのであれば、メモリー2枚差しじゃないと動かなくなるかもしれません。
キャッシュ容量を上げた場合検索により時間がかかるようになったり本来キャッシュすべきではないものをキャッシュしやすくなるがまあそれでも速くはなるからな。むしろ問題は高速なキャッシュほど高価というところらしい。このまま行ったらハイエンドはそのうちCPUのキャッシュ階層が6段くらいになりさらにモジュール側にHBMがありその下にDDRがありその下にNVDIMMがありというふうになりそう。今のシンプルな構成から比べると恐ろしく複雑。そりゃ昔はCPUキャッシュもRAMもなかったかもしれんが…
マザーボードに2ndキャッシュメモリボードを挿してた時代が懐かしい。
げじげじ足のSRAMが刺さってた記憶ありますが、386まででしたっけ?486でもあったかな?
Pentiumでもチップセットにtriton辺りを使ったもので追加可能なものがあった。
NECのPC-9821Xa7はintelのチップセットじゃないけど、上位機種のXa9とかXa10が標準搭載していたセカンドキャッシュがオプションだったり。
DIPのSRAMをL2に使ってたのは概ね486世代までですかね?FMVのある型番はDIPじゃなくてZIPで探すのにえらい苦労した記憶が。。
PentiumはPBSRAMからSOPかQFPになってたので、増設は専用モジュール基板だった。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日々是ハック也 -- あるハードコアバイナリアン
メモリボトルネックを解消するためかな (スコア:1)
シリコンが余っているからといって、キャッシュの階層を重ねすぎるのもどうかと。
Re: (スコア:1)
シリコンが余っているからではなく必要に迫られてですよ。
DRAMの微細化も速度も消費電力も限界になってて、これ以上改善できなくなったから仕方なくやってる。
SRAMはロジックの微細化に合わせて順当に進化できたのですが、DRAMは15nmぐらいから先ほとんど進化できなくて止まってます。
DRAMもインターフェイス側の改良は続いていて、GDDRとかHBMとかで並列化によって帯域幅は向上できてるのですが、素子単体は改良できてないのでレイテンシが数十nsから速くなってないし消費電力も減ってない。
業界的にはMRAMなりPRAMなりの次世代メモリにバトンタッチする予定だったのが、どれも研究開発は出来ても実用化の壁に当たってモノになってない。
そこでCPUにはAMDの3D-VCacheのようにSRAMを積層してキャッシュ容量増やしたり、GPUでもNVIDIA、AMD共に最新世代では大容量SRAMキャッシュ追加してDRAMへのアクセス減らして性能改善してます。
Re: (スコア:0)
L1~L3増やせばよくない?
キャッシュ階層を増やすと同期大変だしTLBバグみたいな元になるし、データのコピーがL1~L4まで4重に居座ることになって、シリコンが勿体なくない?
素人考えなんだろうけどどうしても気になる。
Re:メモリボトルネックを解消するためかな (スコア:0)
近い階層のキャッシュ増やすと、検索に時間がかかって性能上がらんのじゃね?
L3増やせば、それは性能的にはL3なくしてL4積んだことにしかならないとか。
Re: (スコア:0)
CPUはメモリーを読み込んでないのでその辺は問題ない。
CPUが読み込んでいるメモリデータはブロック単位です。
ブロック単位で読み込んでブロック単位で書き込みをする…そんな仕組み
メモリアクセスの状況からどこを読んでいるかわからない。
必要とされる場所もしくは必要とされるであろう場所のブロックが読み込まれる。
そのためキャッシュの効果が上がる。
メモリーは並列読み込みで時間単位みかけで転送レートが上がればある程度は改善できる。
さらにCPUが早くなるのであれば、メモリー2枚差しじゃないと動かなくなるかもしれません。
Re: (スコア:0)
キャッシュ容量を上げた場合検索により時間がかかるようになったり本来キャッシュすべきではないものをキャッシュしやすくなるがまあそれでも速くはなるからな。
むしろ問題は高速なキャッシュほど高価というところらしい。
このまま行ったらハイエンドはそのうちCPUのキャッシュ階層が6段くらいになりさらにモジュール側にHBMがありその下にDDRがありその下にNVDIMMがありというふうになりそう。
今のシンプルな構成から比べると恐ろしく複雑。
そりゃ昔はCPUキャッシュもRAMもなかったかもしれんが…
Re: (スコア:0)
マザーボードに2ndキャッシュメモリボードを挿してた時代が懐かしい。
Re: (スコア:0)
げじげじ足のSRAMが刺さってた記憶ありますが、386まででしたっけ?
486でもあったかな?
Re: (スコア:0)
Pentiumでもチップセットにtriton辺りを使ったもので追加可能なものがあった。
NECのPC-9821Xa7はintelのチップセットじゃないけど、上位機種のXa9とかXa10が
標準搭載していたセカンドキャッシュがオプションだったり。
Re: (スコア:0)
DIPのSRAMをL2に使ってたのは概ね486世代までですかね?
FMVのある型番はDIPじゃなくてZIPで探すのにえらい苦労した記憶が。。
PentiumはPBSRAMからSOPかQFPになってたので、増設は専用モジュール基板だった。