Cache hierarchy とは

キャッシュ階層、またはマルチレベルキャッシュは、データをキャッシュするためのアクセス速度の変化に基づいてメモリストアの階層を使用するメモリ設計プロパティを指します。高度に要求されたデータは、高速アクセスメモリストアにキャッシュされます。この階層構造は、メモリストアシステム全体が高速メモリアクセスを必要とすることなく高速アクセスが可能であることを意味し、これは高価になる可能性がある。
この設計は、CPUコアがメインメモリアクセスのメモリレイテンシを隠す必要のある高速クロックで動作するように設計されていました。現在、マルチレベルキャッシュは、コンピュータシステムのメインメモリに常駐するデータへの高速アクセスを提供する最適なソリューションです。メモリへのアクセス時間は、CPUコアのパフォーマンスのボトルネックとなり、レイテンシを減らしてCPUクロックを高速化するために階層型キャッシュ構造を使用することで軽減できます。

Content Addressable Parallel Processor とは

Content Addressable Parallel Processor(CAPP)は、Content-Addressing Memory(CAM)の原理を使用する一種の並列プロセッサです。 CAPPは一括計算用です。それらの計算アルゴリズムの構文構造は単純であるが、並行プロセスの数は非常に大きくてもよく、CAM内のロケーションの数によってのみ制限される。最もよく知られているCAPPは1972年に完成したSTARANです。いくつかの同様のシステムが後で他の国に建設された。
CAPPは、Von Neumannアーキテクチャや数値アドレスで個別にアドレス指定されたセルにデータを格納する古典的なコンピュータとはまったく異なります。 CAPPは、メモリセルの内容(記憶値)に基づいてメモリをアドレス指定する命令のストリームを実行する。並列プロセッサーとして、それはその内容を含むすべてのセルに一度に作用します。一致するすべてのセルの内容を同時に変更することができます。
典型的なCAPPは、固定語長のコンテンツアドレス可能なメモリの配列、シーケンシャル命令ストア、および周辺機器とのインタフェースに使用されるフォンノイマンアーキテクチャの汎用コンピュータで構成されてもよい。

Aperture (computer memory) とは

計算において、アパーチャは、特定の周辺デバイスまたはメモリユニットに関連する物理アドレス空間(すなわち、物理メモリ)の一部である。開口部は、ROMまたはRAMチップなどの外部デバイス、またはCPU自体の内部メモリに到達することがあります。
典型的には、コンピュータに接続されたメモリデバイスは、ゼロから始まるアドレスを受け入れるので、そのようなデバイスを複数有するシステムはあいまいなアドレッシングを有する。これを解決するために、メモリロジックには複数のアパーチャセレクタが含まれ、各セレクタにはレンジセレクタと1つのメモリデバイスへのインタフェースが含まれます。アパーチャのセレクタアドレス範囲のセットは、互いに素である。 CPUがアパーチャによって認識される範囲内の物理アドレスを提示すると、アパーチャユニットは、要求を(ゼロベースに再マップされたアドレスを用いて)接続装置にルーティングする。したがって、アパーチャは、通常の仮想 – 物理マッピングのレベルより下のアドレス変換の層を形成する。

Cache pollution とは

キャッシュ汚染は、実行中のコンピュータプログラムが不必要にCPUキャッシュにデータをロードし、それによってキャッシュから他の有用なデータをメモリ階層のより低いレベルに追い出してパフォーマンスを低下させる状況を記述する。例えば、マルチコアプロセッサでは、1つのコアが他のコアによってフェッチされたブロックを共有キャッシュに置き換えたり、プリフェッチされたブロックがキャッシュからデマンドフェッチされたブロックを置き換えたりする可能性があります。

Smart Cache とは

スマート・キャッシュは、インテルが開発した複数の実行コアに対するレベル2またはレベル3のキャッシュ方式です。
スマートキャッシュは、マルチコアプロセッサのコア間で実際のキャッシュメモリを共有します。専用のコアごとのキャッシュと比較すると、すべてのコアが同じ容量のキャッシュ領域を必要としない場合は、全体のキャッシュミス率が低下します。したがって、他のコアが非アクティブである場合、単一のコアはフルレベル2またはレベル3キャッシュを使用できます。さらに、共有キャッシュは、異なる実行コア間でメモリを共有する方が速くなります。

Memory bound function とは

メモリ境界とは、所与の計算上の問題を完了するための時間が、主にデータを保持するのに必要なメモリ量によって決定される状況を指す。メモリに結合された機能の適用は、インターネット上の流行の割合の問題となっているスパムを防止する上で貴重であることが判明する可能性があります。

Read-modify-write とは

コンピュータサイエンスでは、リードモディファイライトは、メモリロケーションを読み込んで新しい値を書き込む、アトミックオペレーションのクラスです(テストセット、フェッチアンドアド、コンペアアンドスワップなど)同時に、全く新しい値または以前の値の何らかの関数を使用しています。これらの操作は、マルチスレッドアプリケーションの競合状態を防ぎます。通常は、mutexやsemaphoreの実装に使用されます。これらのアトミック操作は、ノンブロッキング同期でも頻繁に使用されます。
Maurice Herlihy(1991)は、以下のように、コンセンサスナンバーでアトミックオペレーションをランク付けしている。
 ∞:メモリからメモリへの移動とスワップ、拡張キュー、コンペア・アンド・スワップ、フェッチ・アンド・コン・スティッキ・バイト、ロードリンク/ストア・コンディション(LL / SC)2n-2: :テスト・アンド・セット、スワップ、フェッチ・アンド・アド、キュー、スタック1:アトミック・リードおよびアトミック・ライト
このような操作のどれがどれだけ使用されても、コンセンサス番号が低い操作だけでコンセンサス番号を必要とする操作を実装することは不可能です。リード・モディファイ・ライト命令は、I / Oデバイスで使用すると予期しない結果を生じることがあります。これは、リード操作でアクセスされるのと同じ内部レジスタにライト操作が影響しないためです。
この用語は、アトミックリードモディファイライトシーケンスとして実際のライトオペレーションを実行するRAIDレベルにも関連しています。このようなRAIDレベルには、RAID 4、RAID 5、およびRAID 6が含まれます。

Transactional memory とは

コンピュータサイエンスとエンジニアリングでは、トランザクショナルメモリは、一群のロード命令とストア命令をアトミックな方法で実行できるようにすることにより、並行プログラミングを簡素化しようとします。これは、並行コンピューティングにおける共有メモリへのアクセスを制御するためのデータベーストランザクションに類似した並行性制御機構である。トランザクショナルメモリシステムは、低レベルのスレッド同期の代わりに高レベルの抽象化を提供します。この抽象化により、並列システムにおける共有データの同時読み込みと書き込みとの間の調整が可能になります。

Uniform memory access とは

ユニフォームメモリアクセス(UMA)は、並列コンピュータで使用される共有メモリアーキテクチャです。 UMAモデルのすべてのプロセッサは、物理メモリを一様に共有します。 UMAアーキテクチャでは、メモリロケーションへのアクセス時間は、どのプロセッサが要求を行うか、またはどのメモリチップが転送されたデータを含むかとは無関係です。均一メモリアクセスコンピュータアーキテクチャは、非一様メモリアクセス(NUMA)アーキテクチャとは対照的であることが多い。 UMAアーキテクチャでは、各プロセッサはプライベートキャッシュを使用することができる。周辺機器もいくつかの方法で共有されます。 UMAモデルは、複数のユーザーによる汎用および時間共有アプリケーションに適しています。タイムクリティカルなアプリケーションで単一の大きなプログラムの実行を高速化するために使用できます。