【0040】
本明細書に説明される対象事項のさらなる態様が、下記の番号付けされた付記(clauses)において提示される。
付記1
リモートノードとローカルノードとにおけるリモートメモリアクセス(RMA)データ転送を実行する方法であって、
上記ローカルノードから上記リモートノードにデータが書き込まれるRMA書き込みを、
書き込まれるべきデータを上記ローカルノード上のソースバッファから読み出すステップと、
第1のアクティブメッセージ(AM)書き込み要求を上記ローカルノードから上記リモートノード上のAMハンドラに送信するステップであり、上記第1のAM書き込み要求は、書き込まれるべきデータと、該データが書き込まれるべき上記リモートノード上のリモートメモリアドレス空間における開始アドレスとを含む、ステップと、
上記第1のAM書き込み要求を、上記リモートノード上の上記AMハンドラで、上記第1のAM書き込み要求から上記データを抽出し、かつ上記開始アドレスで始まる上記リモートメモリアドレス空間におけるアドレス範囲に上記データを書き込むことによって扱うステップと、
によって実行するステップ
を含む方法。
付記2
上記リモートノードから上記ローカルノードにAM書き込み応答を送信するステップであって、上記AM書き込み応答は、上記データが上記リモートメモリアドレス空間に成功裏に書き込まれたことを示す、ステップと、
上記ローカルノード上のAMハンドラを用いて上記AM書き込み応答メッセージを処理するステップと、
をさらに含む付記1に記載の方法。
付記3
書き込まれるべき上記データを複数のパケットへと区分するステップと、
上記複数のパケットの各々について、
上記ローカルノード上の上記ソースバッファから、パケットに対応するパケットデータを読み出すステップと、
上記ローカルノードから上記リモートノード上の上記AMハンドラに、上記パケットデータと該パケットデータが書き込まれるべき上記リモートノード上のリモートメモリアドレス空間における開始アドレスとを含むそれぞれのAM要求を送信するステップと、
上記それぞれのAM要求を、上記リモートノード上の上記AMハンドラで、上記それぞれのAM要求から上記パケットデータを抽出し、かつ上記開始アドレスで始まる上記リモートメモリアドレス空間におけるアドレス範囲に上記データを書き込むことによって扱うステップと、
をさらに含み、
上記第1のAM書き込み要求は、上記複数のパケットのデータの第1のパケットを転送するために使用されるAM書き込み要求に対応する、
付記1又は2に記載の方法。
付記4
上記パケットデータのすべてが上記リモートメモリアドレス空間に成功裏に書き込まれたことを検出するステップと、
上記リモートノードから上記ローカルノードに、上記パケットデータが上記リモートメモリアドレス空間に成功裏に書き込まれたことを示すAM応答を送信するステップと、
上記ローカルノード上のAMハンドラを用いて上記AM応答メッセージを処理するステップと、
をさらに含む付記3に記載の方法。
付記5
データが上記リモートノードから読み出され、かつ上記ローカルノードに転送されるRMA読み出しを、
上記リモートノード上の上記AMハンドラにAM読み出し要求を送信するステップであって、上記AM読み出し要求は、読み出されるべきデータの上記リモートアドレス空間におけるアドレス範囲を識別する、ステップと、
上記AM読み出し要求メッセージを受信することに応答して、上記リモートノード上の上記AMハンドラを介して上記リモートアドレス空間から読み出されるべき上記データを取り出し、AM読み出し応答メッセージを介して上記ローカルノードに上記の取り出されたデータを送信するステップと、
上記AM読み出し応答を、上記ローカルノード上のAMハンドラで、上記AM読み出し応答から上記データを抽出し、かつ上記ローカルノード上の宛先バッファに上記データを書き込むことによって扱うステップと、
によって実行するステップ
をさらに含む先行する付記のうちいずれか1つに記載の方法。
付記6
データが上記リモートノードから読み出され、かつ複数のパケットを使用して上記ローカルノードに転送されるRMA読み出しを実行するステップであって、上記複数のパケットの各々についてのデータが、
それぞれのAM読み出し要求を上記リモートノード上の上記AMハンドラに送信するステップであり、上記AM読み出し要求は、読み出されるべきパケットデータの上記リモートアドレス空間におけるアドレス範囲を識別する、ステップと、
上記AM読み出し要求メッセージを受信することに応答して、上記リモートノード上の上記AMハンドラを介して上記リモートアドレス空間から読み出されるべき上記パケットデータを取り出し、AM読み出し応答メッセージを介して上記ローカルノードに上記の取り出されたパケットデータを送信するステップと、
上記AM読み出し応答を、上記ローカルノード上のAMハンドラで、上記AM読み出し応答から上記パケットデータを抽出し、かつ上記ローカルノード上の宛先バッファに上記パケットデータを書き込むことによって扱うステップと、
によって転送される、ステップ、
をさらに含む先行する付記のうちいずれか1つに記載の方法。
付記7
タグ付きメッセージングスキームを使用して上記第1のAM書き込み要求にタグ付きメッセージを用いるステップと、
上記リモートノード上の上記AMハンドラを用いて上記タグ付きメッセージを調べて、上記リモートノードが上記第1のAM書き込み要求の意図された受信者であることを照合するステップと、
をさらに含む先行する付記のうちいずれか1つに記載の方法。
付記8
上記ローカルノードにおいて、上記リモートノードから送信される1又は複数のAM書き込み要求を使用してデータが書き込まれ得る上記リモートノード上の上記リモートメモリアドレス空間における少なくとも1つのアドレス範囲を登録するステップ、をさらに含む先行する付記のうちいずれか1つに記載の方法。
付記9
上記リモートノードに、上記ローカルノードに登録された少なくとも1つのアドレス範囲に対応するアクセスキーを公開するステップと、
上記第1のAM書き込み要求に上記アクセスキーを含めるステップと、
上記リモートノード上の上記AMハンドラを介して上記アクセスキーを調べて、上記第1のAM書き込み要求が許可されるかを検証するステップと、
をさらに含む付記8に記載の方法。
付記10
先行する付記のうちいずれか1つに記載の方法を実施するためにローカル及びリモートのノード上でそれぞれ実行されるように構成された第1の命令セット及び第2の命令セットを記憶した非一時的マシン可読媒体。
付記11
リモートノードとローカルノードとにおけるリモートメモリアクセス(RMA)データ転送を実行する方法であって、
上記ローカルノードから上記リモートノードにデータが書き込まれるRMA書き込みを、
上記ローカルノードから上記リモートノード上のAMハンドラに第1のアクティブメッセージ(AM)書き込み要求を送信するステップであり、上記第1のAM書き込み要求は、上記データが書き込まれるべき上記リモートノード上のリモートメモリアドレス空間におけるアドレス範囲を識別する、ステップと、
書き込まれるべきデータを上記ローカルノード上のソースバッファから読み出し、上記データを上記リモートノードに送信するステップと、
上記リモートノードにより受信された上記データを、上記リモートメモリアドレス空間に書き込まれるべき上記データに上記第1のAM書き込み要求において識別される上記アドレス範囲を占有させるように処理するステップと、
によって実行するステップ
を含む方法。
付記12
複数のAM書き込み要求を受信するステップであって、各AM書き込み要求は、後に送信されるAM書き込み要求に関連付けられたデータのブロックが書き込まれるべき上記リモートノード上の上記リモートメモリアドレス空間におけるアドレス範囲を識別し、各AM書き込み要求は、関連付けられたデータの上記ブロックを識別するしるし(indicia)を含む、ステップと、
上記リモートノード上の上記AMハンドラを介して、上記リモートノード上のRMA書き込みキューに各AM書き込み要求をエンキューするステップと、
上記ローカルノードからデータの複数のブロックを受信するステップであって、データの各ブロックは、事前に受信されたAM書き込み要求に関連付けられ、上記事前に受信されたAM書き込み要求を識別することがしるしを含む、ステップと、
上記RMA書き込みキューから上記AM書き込み要求をデキューするステップと、
各々のデキューされたAM書き込み要求を、AM書き込み要求に関連付けられた上記の受信されたデータのブロックが上記リモートメモリアドレス空間においてどこに書き込まれるべきかを決定するように処理するステップと、
をさらに含む付記11に記載の方法。
付記13
データが上記リモートノードから読み出され、かつ上記ローカルノードに転送されるRMA読み出しを、
上記リモートノード上の上記AMハンドラにAM読み出し要求を送信するステップであって、上記AM読み出し要求は、読み出されるべきデータの上記リモートアドレス空間におけるアドレス範囲を識別する、ステップと、
上記AM読み出し要求メッセージを受信することに応答して、上記リモートノード上の上記AMハンドラを介して、読み出されるべきデータの上記リモートアドレス空間における上記アドレス範囲を識別する上記AM読み出し要求に対応するRMA読み出し要求を生成するステップと、
上記リモートノード上で上記RMA読み出し要求を処理するステップであって、上記RMA読み出し要求における上記アドレス範囲により定義されるとおりの上記リモートアドレス空間から読み出されるべき上記データが、上記リモートアドレス空間から取り出され、かつ上記ローカルノードに送信されることをもたらす、ステップと、
上記リモートノードから送信される上記の取り出されたデータを、上記ローカルノード上の宛先バッファに書き込むステップと、
によって実行するステップ、をさらに含む付記11又は12に記載の方法。
付記14
上記AM読み出し要求メッセージを受信することに応答して、上記リモートノード上の上記AMハンドラを介して、読み出されるべきデータの上記リモートアドレス空間における上記アドレス範囲を識別する上記AM読み出し要求に対応するRMA読み出し要求を生成し、上記リモートノード上のRMA読み出し要求キューにエンキューするステップと、
上記RMA読み出し要求キューから上記RMA読み出し要求をデキューするステップと、
上記RMA読み出し要求における上記アドレス範囲により定義されるとおりの上記リモートアドレス空間から読み出されるべき上記データを取り出し、上記の取り出されたデータを上記ローカルノードに送信するステップと、
をさらに含む付記13に記載の方法。
付記15
上記のデキューし、データ取り出しし、送信するオペレーションは、上記リモートノード上の上記AMハンドラとは別個である上記リモートノード上のRMA読み出し機能によって実行される、付記14に記載の方法。
付記16
上記ローカルノードにおいて、上記リモートノードから送信される1又は複数のAM書き込み要求を使用してデータが書き込まれ得る上記リモートノード上の上記リモートメモリアドレス空間における少なくとも1つのアドレス範囲を登録するステップ、をさらに含む付記11乃至15のうちいずれか1つに記載の方法。
付記17
上記リモートノードに、上記ローカルノードに登録された少なくとも1つのアドレス範囲に対応するアクセスキーを公開するステップと、
上記第1のAM書き込み要求に上記アクセスキーを含めるステップと、
上記リモートノード上の上記AMハンドラを介して上記アクセスキーを調べて、上記第1のAM書き込み要求が許可されるかを検証するステップと、
をさらに含む付記17に記載の方法。
付記18
付記11乃至17のうちいずれか1つに記載の方法を実施するためにローカル及びリモートのノード上でそれぞれ実行されるように構成された第1の命令セット及び第2の命令セットを記憶した非一時的マシン可読媒体。
付記19
ネットワークインターフェースと、
ローカルメモリアドレス空間を含むメモリと、
上記ネットワークインターフェースを介して、上記ネットワークインターフェースに結合された通信リンクを通じてリモート装置から送信される第1のAM書き込み要求を受信することであって、上記第1のAM書き込み要求は、上記リモート装置により発行されるリモートメモリアクセス(RMA)書き込みに対応し、第1のデータが書き込まれるべき上記メモリにおける上記ローカルメモリアドレス空間における開始アドレスに書き込まれるべき上記データを含み、
上記第1のAM書き込み要求を、上記第1のAM書き込み要求から上記データを抽出し、かつ上記開始アドレスで始まる上記リモートメモリアドレス空間におけるアドレス範囲に上記データを書き込むことによって扱い、
上記リモート装置に、上記データが上記リモートメモリアドレス空間に成功裏に書き込まれたことを示すAM書き込み応答を送信する
ように構成された書き込み要求アクティブメッセージ(AM)ハンドラと、
を備えた装置。
付記20
上記リモート装置上のメモリにおけるリモートメモリアドレス空間に対するRMA書き込みに対応する第2のAM書き込み要求が生成され、かつ上記リモート装置に送信されるAM書き込みオペレーションを実行するように構成されたRMA書き込みモジュールであって、上記第2のAM書き込み要求は、第2のデータが書き込まれるべき上記リモートメモリアドレス空間における開始アドレスに書き込まれるべき上記データを含む、RMA書き込みモジュールと、
上記第2のデータを上記リモートメモリアドレス空間に成功裏に書き込むことに応じて上記リモート装置から送信されるAM書き込み応答を処理するように構成された書き込み応答AMハンドラと、
をさらに備えた付記19に記載の装置。
付記21
ソースバッファ、をさらに備え、上記RMA書き込みモジュールは、
上記リモートメモリアドレス空間に書き込まれるべき第3のデータを複数のパケットへと区分し、
上記複数のパケットの各々について、
パケットに対応するパケットデータを上記ソースバッファから読み出し、
上記リモート装置上の書き込み要求AMハンドラに、上記パケットデータと該パケットデータが書き込まれるべき上記リモート装置上の上記リモートメモリアドレス空間におけるそれぞれの開始アドレスとを含むそれぞれのAM書き込み要求を送信する
ようにさらに構成される、付記20に記載の装置。
付記22
上記書き込み要求AMハンドラは、
上記リモート装置から複数のAM書き込み要求を受信することであって、上記複数のAM書き込み要求の各々は、複数のパケットへと区分され、かつ上記ローカルメモリアドレス空間におけるそれぞれの開始アドレスにおいて上記ローカルメモリアドレス空間に書き込まれるべき第3のデータの、リモート書き込みに対応するそれぞれのパケットデータを含み、
上記複数のAM書き込み要求の各々についての上記パケットデータを抽出し、AM書き込み要求により識別される上記開始アドレスで始まる上記ローカルメモリアドレス空間に上記パケットデータを書き込み、
上記第3のデータの全体が上記ローカルメモリアドレス空間に書き込まれたことを検出し、
上記リモート装置に、上記第3のデータが上記ローカルメモリアドレス空間に成功裏に書き込まれたことを示すAM書き込み応答を送信する
ようにさらに構成される、付記19乃至21のうちいずれか1つに記載の装置。
付記23
上記ローカルメモリにおける宛先バッファと、
読み出し応答AMハンドラと、
AM読み出し要求を生成し、上記リモート装置上の読み出し要求AMハンドラに送信することであって、上記AM読み出し要求は、読み出されるべき上記リモート装置のデータの上記リモートアドレス空間におけるアドレス範囲を識別し、
上記AM読み出し要求に応答して、上記リモート装置から、上記リモートアドレス空間から読み出された上記データを含むAM読み出し応答を受信し、
上記AM読み出し応答を、上記読み出し応答AMハンドラで、上記AM読み出し応答から上記データを抽出し、かつ上記データを上記宛先バッファに書き込むことによって扱う
ように構成されたRMA読み出しモジュールと、
をさらに備えた付記19乃至22のうちいずれか1つに記載の装置。
付記24
上記RMA読み出しモジュールは、データが上記リモート装置から読み出され、かつ複数のパケットを使用して転送されるRMA読み出しを実行するようにさらに構成され、上記複数のパケットの各々についてのデータは、
それぞれのAM読み出し要求を上記リモート装置上の上記AM読み出し要求ハンドラに送信することであって、上記AM読み出し要求は、読み出されるべきパケットデータの上記リモートアドレス空間におけるアドレス範囲を識別し、
各々のそれぞれのAM読み出し要求に応答して、上記リモート装置から、上記リモートアドレス空間から読み出された上記パケットデータを含むAM読み出し応答を受信し、
上記AM読み出し応答を、上記読み出し応答AMハンドラで、上記AM読み出し応答から上記パケットデータを抽出し、かつ上記パケットデータを上記宛先バッファに書き込むことによって扱う
ことによって遠隔的に(remotely)読み出される、付記19乃至23のうちいずれか1つに記載の装置。
付記25
上記リモート装置から、読み出されるべきデータを含むデータの上記ローカルアドレス空間におけるアドレス範囲を識別するAM読み出し要求を受信し、
上記AM読み出し要求において識別される上記アドレス範囲から上記データを取り出し、
上記リモート装置に、取り出された上記データを含むAM応答を送信する
ように構成された読み出し要求AMハンドラ
をさらに含む付記19乃至24のうちいずれか1つに記載の装置。
付記26
ネットワークインターフェースと、
ローカルメモリアドレス空間を含むメモリと、
上記ネットワークインターフェースを介して、上記ネットワークインターフェースに結合された通信リンクを通じてリモート装置から送信される複数のAM書き込み要求を受信することであって、各AM書き込み要求は、上記リモート装置により発行されるリモートメモリアクセス(RMA)書き込みに対応し、上記ローカルメモリアドレス空間に書き込まれるべきそれぞれのデータと該それぞれのデータの先頭が書き込まれるべき開始アドレスとを含み、
RMA書き込み要求を生成し、上記RMA書き込み要求をRMA書き込みキューにエンキューする
ように構成された書き込み要求アクティブメッセージ(AM)ハンドラと、
上記リモート装置からデータの複数のブロックを受信することであって、データの各ブロックは、事前に受信されたAM書き込み要求に関連付けられ、対応するRMA書き込み要求を識別することができるしるしを含み、
上記RMA書き込みキューから上記RMA書き込み要求をデキューし、
各々のデキューされたRMA書き込み要求を、RMA書き込み要求に関連付けられた上記の受信されたデータのブロックが上記ローカルメモリアドレス空間においてどこに書き込まれるべきかを決定するように処理する
ように構成されたRMA進行モジュールと、
を備えた装置。
付記27
上記メモリにおけるソースバッファと、
上記リモート装置にAM書き込み要求を送信することであって、上記AM書き込み要求は、上記データが書き込まれるべき上記リモート装置上のメモリにおけるリモートメモリアドレス空間におけるアドレス範囲を識別し、
書き込まれるべき上記データを上記ソースバッファから読み出し、
上記データを上記リモート装置に送信することであって、上記データは、上記AM書き込み要求を送信した後に送信され、上記データは、送信される上記データを上記AM書き込み要求とマッチさせるのに使用されるように構成されたしるしと共に送信される
ように構成されたRMA書き込みモジュールと、
をさらに備えた付記26に記載の装置。
付記28
RMA読み出し要求キューと、
上記リモート装置から、読み出されるべきデータの上記ローカルアドレス空間におけるアドレス範囲を識別するAM読み出し要求を受信し、
上記AM読み出し要求メッセージを受信することに応答して、読み出されるべきデータの上記ローカルアドレス空間における上記アドレス範囲を識別する対応するRMA読み出し要求を生成し、
上記RMA読み出し要求キューに上記RMA読み出し要求をエンキューする
ように構成された読み出し要求AMハンドラと、
上記RMA読み出し要求キューから上記RMA読み出し要求をデキューし、
上記RMA読み出し要求における上記アドレス範囲により定義されるとおりの上記ローカルアドレス空間からデータを読み出し、
読み出された上記データを上記リモート装置に送信する
ように構成されたRMA進行モジュールと、
をさらに備えた付記26又は27に記載の装置。
付記29
上記メモリの一部分を占有する宛先バッファと、
上記リモート装置にAM読み出し要求を送信することであって、上記AM読み出し要求は、読み出されるべき上記リモート装置上のメモリにおけるリモートアドレス空間におけるアドレス範囲を識別し、
上記リモート装置から、上記リモートアドレス空間から読み出されたデータを受信し、
上記の受信されたデータを上記宛先バッファに書き込む
ように構成されたRMA読み出しモジュールと、
をさらに備えた付記28に記載の装置。
付記30
ネットワークインターフェースとローカルアドレス空間を含むメモリとを含むノード上で実行されるように構成された命令を記憶した非一時的マシン可読媒体であって、上記命令は、
実行されると、
上記ネットワークインターフェースを介して、上記ネットワークインターフェースに結合された通信リンクを通じてリモート装置から送信される第1のAM書き込み要求を受信することであって、上記第1のAM書き込み要求は、上記リモート装置により発行されるリモートメモリアクセス(RMA)書き込みに対応し、かつ第1のデータが書き込まれるべき上記メモリにおける上記ローカルメモリアドレス空間における開始アドレスに書き込まれるべき上記データを含み、
上記第1のAM書き込み要求を、上記第1のAM書き込み要求から上記データを抽出し、かつ上記開始アドレスで始まる上記リモートメモリアドレス空間におけるアドレス範囲に上記データを書き込むことによって扱い、
上記リモート装置に、上記データが上記リモートメモリアドレス空間に成功裏に書き込まれたことを示すAM書き込み応答を送信する
ように構成された書き込み要求アクティブメッセージ(AM)ハンドラ
を含む、非一時的マシン可読媒体。
付記31
上記リモート装置上のメモリにおけるリモートメモリアドレス空間に対するRMA書き込みに対応する第2のAM書き込み要求が生成され、かつ上記リモート装置に送信されるAM書き込みオペレーションを実行するように構成されたRMA書き込みモジュールであって、上記第2のAM書き込み要求は、第2のデータが書き込まれるべき上記リモートメモリアドレス空間における開始アドレスに書き込まれるべき上記データを含む、RMA書き込みモジュールと、
上記第2のデータを上記リモートメモリアドレス空間に成功裏に書き込むことに応じて上記リモート装置から送信されるAM書き込み応答を処理するように構成された書き込み応答AMハンドラと、
を含む命令をさらに含む、付記30に記載の非一時的マシン可読媒体。
付記32
上記ノードはソースバッファをさらに備え、上記RMA書き込みモジュールは、
上記リモートメモリアドレス空間に書き込まれるべき第3のデータを複数のパケットへと区分し、
上記複数のパケットの各々について、
上記ソースバッファから、パケットに対応するパケットデータを読み出し、
上記リモート装置上の書き込み要求AMハンドラに、上記パケットデータと該パケットデータが書き込まれるべき上記リモート装置上の上記リモートメモリアドレス空間におけるそれぞれの開始アドレスとを含むそれぞれのAM書き込み要求を送信する
ようにさらに構成される、付記31に記載の非一時的マシン可読媒体。
付記33
上記書き込み要求AMハンドラは、
上記リモート装置から複数のAM書き込み要求を受信することであって、上記複数のAM書き込み要求の各々は、複数のパケットへと区分され、かつ上記ローカルメモリアドレス空間におけるそれぞれの開始アドレスにおいて上記ローカルメモリアドレス空間に書き込まれるべき第3のデータの、リモート書き込みに対応するそれぞれのパケットデータを含み、
上記複数のAM書き込み要求の各々について、パケットデータを抽出し、AM書き込み要求により識別される開始アドレスで始まる上記ローカルメモリアドレス空間に上記パケットデータを書き込み、
上記第3のデータの全体が上記ローカルメモリアドレス空間に書き込まれたことを検出し、
上記リモート装置に、上記第3のデータが上記ローカルメモリアドレス空間に成功裏に書き込まれたことを示すAM書き込み応答を送信する
ようにさらに構成される、付記30乃至32のうちいずれか1つに記載の非一時的マシン可読媒体。
付記34
上記ノードは上記ローカルメモリにおける宛先バッファをさらに備え、上記命令は、
読み出し応答AMハンドラと、
実行されると、
AM読み出し要求を生成し、上記リモート装置上の読み出し要求AMハンドラに送信することであって、上記AM読み出し要求は、読み出されるべき上記リモート装置のデータの上記リモートアドレス空間におけるアドレス範囲を識別し、
上記AM読み出し要求に応答して、上記リモート装置から、上記リモートアドレス空間から読み出された上記データを含むAM読み出し応答を受信し、
上記AM読み出し応答を、上記読み出し応答AMハンドラで、上記AM読み出し応答から上記データを抽出し、かつ上記データを上記宛先バッファに書き込むことによって扱う
ように構成されたRMA読み出しモジュールと、
をさらに含む、付記30乃至33のうちいずれか1つに記載の非一時的マシン可読媒体。
付記35
上記RMA読み出しモジュールは、データが上記リモート装置から読み出され、かつ複数のパケットを使用して転送されるRMA読み出しを実行するようにさらに構成され、上記複数のパケットの各々についてのデータは、
それぞれのAM読み出し要求を上記リモート装置上の上記AM読み出し要求ハンドラに送信することであって、上記AM読み出し要求は、読み出されるべきパケットデータの上記リモートアドレス空間におけるアドレス範囲を識別し、
各々のそれぞれのAM読み出し要求に応答して、上記リモート装置から、上記リモートアドレス空間から読み出された上記パケットデータを含むAM読み出し応答を受信し、
上記AM読み出し応答を、上記読み出し応答AMハンドラで、上記AM読み出し応答から上記パケットデータを抽出し、かつ上記パケットデータを上記宛先バッファに書き込むことによって扱う
ことによって遠隔的に読み出される、付記30乃至34のうちいずれか1つに記載の非一時的マシン可読媒体。
付記36
上記命令は、
上記リモート装置から、読み出されるべきデータを含むデータの上記ローカルアドレス空間におけるアドレス範囲を識別するAM読み出し要求を受信し、
上記AM読み出し要求において識別される上記アドレス範囲から上記データを取り出し、
上記リモート装置に、取り出された上記データを含むAM応答を送信する
ように構成された読み出し要求AMハンドラ
をさらに含む、付記30乃至35のうちいずれか1つに記載の非一時的マシン可読媒体。
付記37
ネットワークインターフェースとローカルアドレス空間を含むメモリとを含むノード上で実行されるように構成された命令を記憶した非一時的マシン可読媒体であって、上記命令は、
実行されると、
上記ネットワークインターフェースを介して、上記ネットワークインターフェースに結合された通信リンクを通じてリモート装置から送信される複数のAM書き込み要求を受信することであって、各AM書き込み要求は、上記リモート装置により発行されるリモートメモリアクセス(RMA)書き込みに対応し、かつ上記ローカルメモリアドレス空間に書き込まれるべきそれぞれのデータと該それぞれのデータの先頭が書き込まれるべき開始アドレスとを含み、
RMA書き込み要求を生成し、上記RMA書き込み要求をRMA書き込みキューにエンキューする
ように構成された書き込み要求アクティブメッセージ(AM)ハンドラと、
実行されると、
上記リモート装置からデータの複数のブロックを受信することであって、データの各ブロックは、事前に受信されたAM書き込み要求に関連付けられ、かつ対応するRMA書き込み要求を識別することができるしるしを含み、
上記RMA書き込みキューから上記RMA書き込み要求をデキューし、
各々のデキューされたRMA書き込み要求を、RMA書き込み要求に関連付けられた上記の受信されたデータのブロックが上記ローカルメモリアドレス空間においてどこに書き込まれるべきかを決定するように処理する
ように構成されたRMA進行モジュールと、
を含む、非一時的マシン可読媒体。
付記38
上記ノードは上記メモリにおけるソースバッファをさらに備え、上記命令は、
実行されると、
上記リモート装置にAM書き込み要求を送信することであって、上記AM書き込み要求は、上記データが書き込まれるべき上記リモート装置上のメモリにおけるリモートメモリアドレス空間におけるアドレス範囲を識別し、
書き込まれるべき上記データを上記ソースバッファから読み出し、
上記データを上記リモート装置に送信することであって、上記データは、上記AM書き込み要求を送信した後に送信され、上記データは、送信される上記データを上記AM書き込み要求とマッチさせるのに使用されるように構成されたしるしと共に送信される
ように構成されたRMA書き込みモジュール
をさらに含む、付記37に記載の非一時的マシン可読媒体。
付記39
上記ノードはRMA読み出し要求キューをさらに備え、上記命令は、
実行されると、
上記リモート装置から、読み出されるべきデータの上記ローカルアドレス空間におけるアドレス範囲を識別するAM読み出し要求を受信し、
上記AM読み出し要求メッセージを受信することに応答して、読み出されるべきデータの上記ローカルアドレス空間における上記アドレス範囲を識別する対応するRMA読み出し要求を生成し、
上記RMA読み出し要求キューに上記RMA読み出し要求をエンキューする
ように構成された読み出し要求AMハンドラと、
上記RMA読み出し要求キューから上記RMA読み出し要求をデキューし、
上記RMA読み出し要求における上記アドレス範囲により定義されるとおりの上記ローカルアドレス空間からデータを読み出し、
読み出された上記データを上記リモート装置に送信する
ように構成されたRMA進行モジュールと、
をさらに含む、付記37又は38に記載の非一時的マシン可読媒体。
付記40
上記ノードは上記メモリの一部分を占有する宛先バッファをさらに備え、上記命令は、
実行されると、
上記リモート装置にAM読み出し要求を送信することであって、上記AM読み出し要求は、読み出されるべき上記リモート装置上のメモリにおけるリモートアドレス空間におけるアドレス範囲を識別し、
上記リモート装置から、上記リモートアドレス空間から読み出されたデータを受信し、
上記の受信されたデータを上記宛先バッファに書き込む
ように構成されたRMA読み出しモジュール
をさらに含む、付記39に記載の非一時的マシン可読媒体。