JP6431672B2 - 共有メモリとのハイブリッドメッセージパッシングの方法 - Google Patents

共有メモリとのハイブリッドメッセージパッシングの方法 Download PDF

Info

Publication number
JP6431672B2
JP6431672B2 JP2014009069A JP2014009069A JP6431672B2 JP 6431672 B2 JP6431672 B2 JP 6431672B2 JP 2014009069 A JP2014009069 A JP 2014009069A JP 2014009069 A JP2014009069 A JP 2014009069A JP 6431672 B2 JP6431672 B2 JP 6431672B2
Authority
JP
Japan
Prior art keywords
data
processor
message
receiving processor
predetermined threshold
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014009069A
Other languages
English (en)
Other versions
JP2014186718A (ja
Inventor
ベンジャミン・トーマス・オッチピンティ
コンラッド・ロバート・クチンスキ
エリック・ダニエル・ビューラー
Original Assignee
ジーイー・アビエイション・システムズ・エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ジーイー・アビエイション・システムズ・エルエルシー filed Critical ジーイー・アビエイション・システムズ・エルエルシー
Publication of JP2014186718A publication Critical patent/JP2014186718A/ja
Application granted granted Critical
Publication of JP6431672B2 publication Critical patent/JP6431672B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/08Annexed information, e.g. attachments

Description

本発明は、単一のコンピューティング環境において少なくとも2つのコプロセッサ間でデータをやりとりする方法に関する。
マルチプロセッサまたはマルチコアプロセッサコンピューティング環境で動作するアプリケーションのためのコードパフォーマンスは、部分的には、その環境内の単一の処理要素がどのように相互に通信するかによって判定されてよい。共有メモリおよびメッセージパッシングは、プロセッサ間通信のために使用される大別して2種類の通信パラダイムである。両方の通信パラダイムを利用するハイブリッドプログラミング技法が知られている。
米国特許第7506032号明細書
本発明の一態様は、単一のコンピューティング環境において2つ以上のコプロセッサ間でデータをやりとりする方法であって、コプロセッサの一方が送信プロセッサであり、コプロセッサの他方が受信プロセッサである、方法に関する。単一のコンピューティング環境は、コプロセッサによってアクセス可能なメモリを含む。本方法は、送信プロセッサにおいて、伝達されるべきデータのサイズを判定するステップを含む。データのサイズが予め定められた閾値より小さいかまたはそれに等しい場合は、本方法は、そのデータをメッセージに添付し、そのメッセージを受信プロセッサに送信する。データのサイズが予め定められた閾値より大きい場合は、本方法は、受信プロセッサにポインタを送信し、ポインタはメモリ内のデータのロケーションを示す。
本発明の一実施形態による、共有メモリとのハイブリッドメッセージパッシングの方法を示す流れ図である。
背景技術および以下の説明において、説明の目的のために、多数の特定の詳細が本明細書に記載の技術の徹底的な理解を提供するために記述される。しかし、例示的実施形態は、これらの特定の詳細がなくても実施されることが可能であることが当業者には明らかであろう。他の場合には、例示的実施形態の説明を容易にするために、構造およびデバイスがダイヤグラム形式で示される。
例示的実施形態は、図面に関連して説明される。これらの図面は、本明細書に記載のモジュール、方法、またはコンピュータプログラム製品を実施する特定の諸実施形態のいくつかの詳細を例示する。しかし、図面は、図面に存在する可能性がある限定を課すと解釈されるべきではない。本方法およびコンピュータプログラム製品は、それらの動作を遂行するために任意の機械可読媒体上に提供されてよい。諸実施形態は、既存のコンピュータプロセッサを使用して、あるいは、このもしくは他の目的のために組み込まれた専用コンピュータプロセッサによって、またはハードワイヤードシステムによって実施されることが可能である。
上記のように、本明細書に記載の諸実施形態は、そこに記憶されている機械実行可能命令もしくはデータ構造を担持する、または有する機械可読媒体を含むコンピュータプログラム製品を含んでよい。そのような機械可読媒体は、汎用コンピュータもしくは専用コンピュータ、またはプロセッサを有する他の機械によってアクセスされることが可能である任意の利用可能な媒体でよい。例として、そのような機械可読媒体は、RAM、ROM、EPROM、EEPROM、CD−ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、あるいは所望のプログラムコードを機械実行可能命令もしくはデータ構造の形で担持する、または記憶するために使用されることが可能であり、汎用コンピュータもしくは専用コンピュータ、またはプロセッサを有する他の機械によってアクセスされることが可能である任意の他の媒体を含んでよい。情報がネットワークもしくは他の通信接続(ハードワイヤード、無線、またはハードワイヤードもしくは無線の組合せ)を介して機械に伝送または提供される場合は、機械は、その接続を機械可読媒体と適切にみなす。したがって、任意のそのような接続は、機械可読媒体と適切に呼ばれる。上記のものの組合せも、機械可読媒体の範囲内に含まれる。機械実行可能命令は、例えば、汎用コンピュータ、専用コンピュータ、または専用処理機械に、ある機能または機能のグループを実行させる命令およびデータを含む。
諸実施形態は、例えばネットワーク接続環境において機械によって実行されるプログラムモジュールの形でのプログラムコードなどの機械実行可能命令を含むプログラム製品によって一実施形態において実行されることが可能である方法ステップの一般的文脈で説明される。一般に、プログラムモジュールは、特定のタスクを実行するという技術的効果を有する、または特定の抽象データタイプを実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。機械実行可能命令、関連データ構造、およびプログラムモジュールは、本明細書で開示されるステップを実行するためのプログラムコードの例を表す。そのような実行可能な命令または関連データ構造の特定のシーケンスは、そのようなステップに記述されている機能を実行するための対応する動作の例を表す。
諸実施形態は、プロセッサを有する1つまたは複数のリモートコンピュータへの論理的接続を使用してネットワーク接続環境において実施されることが可能である。論理的接続は、ここでは例として、限定としてではなく提示されるローカルエリアネットワーク(LAN)および広域ネットワーク(WAN)を含んでよい。そのようなネットワーキング環境は、オフィス全体のまたは企業全体のコンピュータネットワーク、イントラネット、およびインターネットでは普通であり、多種多様な異なる通信プロトコルを使用することができる。そのようなネットワークコンピューティング環境は、通常、パーソナルコンピュータ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラマブルコンシューマエレクトロニクス、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、および同種のものを含めて、多くのタイプのコンピュータシステム構成を包含することを当業者は理解するであろう。
諸実施形態はまた、タスクが通信ネットワーク経由で(ハードワイヤードリンクかまたは無線リンクのどちらかによって、またはハードワイヤードリンクもしくは無線リンクの組合せによって)リンクされたローカル処理デバイスおよびリモート処理デバイスによって実行される、分散コンピューティング環境において実施されてもよい。分散コンピューティング環境では、プログラムモジュールは、ローカルメモリストレージデバイスおよびリモートメモリストレージデバイスの両方に配置されてよい。
例示的実施形態の全部または一部を実施するための例示的システムは、処理ユニット、システムメモリ、およびシステムメモリを含む様々なシステム構成要素を処理ユニットに結合するシステムバスを含む、コンピュータの形態での汎用コンピューティングデバイスを含んでもよい。システムメモリは、読出し専用メモリ(ROM)およびランダムアクセスメモリ(RAM)を含んでよい。コンピュータはまた、磁気ハードディスクから読み出すおよびそれに書き込むための磁気ハードディスクドライブ、取外し可能な磁気ディスクから読み出すまたはそれに書き込むための磁気ディスクドライブ、およびCD−ROMまたは他の光媒体などの取外し可能な光ディスクから読み出すまたはそれに書き込むための光ディスクドライブを含んでもよい。ドライブおよびそれらの関連機械可読媒体は、機械実行可能命令、データ構造、プログラムモジュールおよびコンピュータのための他のデータの不揮発性ストレージを提供する。
諸実施形態において開示される方法の技術的効果は、マルチプロセッサコンピューティングシステムの性能およびスケーラビリティを改善することを含む。任意に大きいメッセージは、任意に小さいメッセージと同じ程度に効率よくコプロセッサ間で送信されることが可能である。メッセージをコプロセッサから複数の受信プロセッサに送信するために必要な追加の時間はごくわずかである。ハイパースペクトラルイメージングシステムの場合のように、大きなデータタイプを有し、様々なメッセージのサイズ要件間の違いの程度が大きいリアルタイム処理システムの性能は、諸実施形態において開示される方法によって改善されることが可能である。
少なくとも2つのコプロセッサを有する単一のコンピューティング環境では、コンピューティング環境に入力されたデータを処理している間に、コプロセッサ間でデータをやりとりすることがしばしば必要である。コプロセッサ間でデータをやりとりするためには、送信プロセッサは、データまたはデータについての情報を受信プロセッサに伝達するために、メッセージを受信プロセッサに送信しなければならない。メッセージパッシングが通信のパラダイムであるコンピューティング環境では、送信プロセッサは、メッセージに含まれているデータを有するメッセージを1つまたは複数の受信プロセッサに送信することができる。代替として、共有メモリシステムを有するコンピューティング環境では、送信プロセッサは、メッセージを、データが常駐するすべてのコプロセッサによってアクセス可能なメモリ内のロケーションをエンコードする1つまたは複数の受信プロセッサに送信することができる。次いで、各コプロセッサは、共有メモリ内のデータに直接アクセスすることができる。
図1は、メッセージパッシングの共有メモリとのハイブリッドを使用する本発明の一実施形態による方法10を示す流れ図である。最初に、ステップ12において、マルチプロセッサシステム上でアプリケーションを動作させている間に、コンピューティング環境内のコプロセッサはデータの特定のブロックを少なくとも1つの他のコプロセッサに伝達する必要があり得る。データのブロックは、例えば、データをデジタルにエンコードするためにメモリ内の必要なバイト数によって判定されることが可能である何らかの有限のサイズを有する。
ステップ14において、送信プロセッサが伝達されるべきデータのサイズを判定し、そのサイズを予め定められた閾値と比較することができる。36において、伝達されるべきデータのサイズが予め定められた閾値より小さいかそれと等しい場合は、ステップ15において、送信プロセッサは、そのデータを、1つまたは複数の受信プロセッサに伝達されるメッセージにコピーすることができる。逆に、34において、伝達されるべきデータのサイズが予め定められた閾値より大きい場合は、送信プロセッサは、ステップ16において、データが共有メモリにあるかどうかを判定することができる。
本発明の一実施形態では、予め定められた閾値は、構成ファイルでなどの静的パラメータとしてエンコードされることが可能である。構成ファイルは、アプリケーション、サーバ、およびオペレーティングシステムのために一般に使用されるような初期設定でエンコードされ、しばしばXMLなどのマークアップ言語で書かれたASCIIテキストファイルでよい。代替として、予め定められた閾値は、アプリケーションのインスタンス化時にパラメータとしてコンピューティング環境に渡されるか、またはさらにコンピューティング環境のオペレーティングシステムの環境変数として設定されてもよい。これらの実施例のすべてにおいて、データの特定のサイズのブロックが共有メモリまたはメッセージパッシングによってより効率よく伝達されるかどうかを判定するために予め定められた閾値を識別する静的パラメータがエンコードされる。
本発明の他の実施形態では、予め定められた閾値が適応可能であり得る。送信プロセッサは、メッセージを伝達する場合、すべてのコプロセッサに知られているグローバルクロックに基づいてタイムスタンプを挿入することができ、次いで、受信プロセッサは、予め定められた閾値が変更されるべきかどうかを判定するために待ち時間を分析することができる。待ち時間に影響を与え、最適閾値を変える可能性がある要因は、バス混雑、ページング、割り込み、およびCPUクロック速度を含む。
40において、送信プロセッサが、伝達されるべきデータが1つまたは複数の受信プロセッサによってアクセス可能でないメモリロケーションに記憶されていると判定した場合は、送信プロセッサは、ステップ18において、データを共有メモリ領域に移すことができる。38において、送信プロセッサが、伝達されるべきデータがすでに共有メモリ領域にあると判定した場合は、送信プロセッサは、データを共有メモリ領域に移すステップをスキップしてよい。
次いで、ステップ20において、送信プロセッサは、一意の識別子が存在するかどうか、すなわち、一意の識別子が生成され、受信プロセッサに伝達されるべきデータに割り当てられているかどうかを判定する。一意の識別子は、データのブロックなどのコンピューティングオブジェクトに割り当てられたコード、すなわち、分散コンピューティング環境が情報を一意に識別することができるようにするコードである。本発明の文脈では、一意の識別子は、共有メモリを介してデータにアクセスする受信プロセッサが、データが有効であるかどうかを判定することができるように、伝達されるべきデータに割り当てられる。無効なデータが同期問題および有効期限切れ問題から生じる可能性があり、それによって、共有メモリ領域は、受信プロセッサが一意の識別子に対応する古いデータにアクセスする前に、新しいデータで上書きされる可能性がある。一意の識別子は、ソフトウェア設計の技術分野でよく知られているユニバーサルユニーク識別子(UUID)の実施形態の1つでよい。代替として、一意の識別子は、データが共有メモリ領域に書き込まれた時間、または、自己言及的に、一意の識別子が生成された時間など、データに関係のある時間をエンコードするためのタイムスタンプでもよい。
42において、送信プロセッサが、共有メモリ内にある伝達されるべきデータのための一意の識別子が存在しないと判定した場合は、送信プロセッサは、ステップ21において、一意の識別子を生成し、データのロケーションにおける共有メモリ領域にプリペンドすることができる。44において、送信プロセッサが、伝達されるべきデータのための一意の識別子がすでに存在し、共有メモリ領域にあると判定した場合は、送信プロセッサは、共有メモリ領域内のデータに一意の識別子を付加するステップをスキップしてよい。
送信プロセッサが伝達されるべき共有メモリ内のデータのための一意の識別子を確認した後は、送信プロセッサは、ステップ22において、その一意の識別子を配置されるべき共有メモリ領域から1つまたは複数の受信プロセッサに送信されるべきメッセージにコピーすることができる。さらに、ステップ24において、送信プロセッサは、ポインタをメッセージに入れることができ、この場合、ポインタは、伝達されるべきデータを記憶しておく共有メモリ内のアドレスを示す値である。ポインタを伝達されるべきメッセージに入れることは本発明の好ましい実施形態であるが、共有メモリシステムのタイプなど特定のコンピューティング環境は、ポインタを送信プロセッサから受信プロセッサに直接伝達するステップを不要にすることができる。例えば、コンピューティング環境は、共有メモリが、伝達されるべきデータのロケーションが、メッセージ内の一意の識別子に対して絶対値算術演算を実行することにより受信プロセッサによって確認されることが可能であるやり方で区分されるように構成されてよい。
少なくとも1つの受信プロセッサに伝達されるべきメッセージは、ステップ15においてのようにメッセージ内にデータのコピーを有してもよく、またはステップ24においてのように共有メモリ内にロケーションに対するポインタを含んでもよい。それとは関係なく、送信プロセッサは、ステップ28において、追加のメタデータがメッセージ内に送信されなければならないかどうかを判定することができる。46において、送信プロセッサが追加のメタデータをメッセージに付加すると決めた場合は、送信プロセッサは、ステップ26において追加のメタデータをメッセージにコピーすることができる。48において、送信プロセッサが、追加のメタデータが利用可能でないかまたはメッセージにとって必要でないと判定した場合は、送信プロセッサは、追加のメタデータをメッセージにコピーするステップをスキップしてよい。
メタデータは、伝達されるべきデータを記述し、そのデータの最も効率のよい伝達を可能にするために追加の情報を提供するデータの任意のセットでよい。例えば、メタデータは、データを送信プロセッサから特定の受信プロセッサに伝達するために必要なチャネルを特徴づける待ち時間情報を含んでよい。データが、スペクトル帯の数、ビット深度、画像寸法、および帯域順などの特徴に応じていくつかの異なるやり方でフォーマットされてよいハイパースペクトル画像を表してよいコンピューティング環境では、メタデータは、ハイパースペクトル画像の特定のフォーマットをエンコードすることができる。口径およびISO感度などの画像を収集するために使用されるレンズを特徴づける追加の情報は、メタデータとしてエンコードされてよい。さらに、ハイパースペクトル画像に適用される変換を含む処理履歴がメタデータとして記憶されてもよい。
次いで、送信プロセッサは、ステップ30において、メッセージを少なくとも1つの受信プロセッサに送信する。本方法は、ステップ32において終了し、この場合、各受信プロセッサはメッセージを解析して、データがメッセージにエンコードされているかどうかを直接判定するか、または、メッセージが一意の識別子およびポインタを含む場合は、データを共有メモリロケーションから取り出すかのどちらかをすることができる。
多くのコンピューティング環境が前述の発明から利益を受けることができる。送信処理エンティティおよび受信処理エンティティは、コプロセッサと呼ばれるが、本発明は、プロセス、カーネルスレッドおよびファイバに等しく適用可能である。とりわけ本発明に適したハードウェア実施形態は、それらの高度並列処理アーキテクチャのゆえにグラフィック処理装置(GPU)およびマルチコアプロセッサを含む。
本明細書は、ベストモードを含めて本発明を開示するために、さらに、当業者なら誰でも任意のデバイスまたはシステムを作成し使用することおよび任意の組み込まれた方法を実施することを含めて本発明を実施することができるようにするために、実施例を使用する。本発明の特許可能な範囲は、特許請求の範囲によって定義され、当業者に思いつかれる他の実施例を含んでよい。そのような他の実施例は、特許請求の範囲の文字言語と異ならない構造要素を有する場合、または特許請求の範囲の文字言語と事実上異ならない同等の構造要素を含む場合は、特許請求の範囲の範囲内にあるものとする。
10 コプロセッサ間でデータをやりとりする方法
12 方法10の最初のステップ
14 伝達されるべきデータのサイズを判定し、そのサイズを予め定められた閾値と比較するステップ
15 データをメッセージにコピーするステップ
16 データが共用メモリにあるかどうかを判定するステップ
18 データを共有メモリ領域に移すステップ
20 一意の識別子が存在するかどうかを判定するステップ
21 一意の識別子を生成し、データのロケーションにおける共有メモリ領域にプリペンドするステップ
22 一意の識別子を配置されるべき共有メモリ領域からメッセージにコピーするステップ
24 ポインタをメッセージに入れるステップ
26 追加のメタデータをメッセージにコピーするステップ
28 メッセージ内に追加のメタデータが送信されなければならないかどうかを判定するステップ
30 メッセージを送信するステップ
32 方法10の最終ステップ
34 伝達されるべきデータのサイズが予め定められた閾値より大きい
36 伝達されるべきデータのサイズが予め定められた閾値より小さいかまたはそれに等しい
38 伝達されるべきデータがすでに共有メモリ領域にある
40 伝達されるべきデータが1つまたは複数の受信プロセッサによってアクセス可能でないメモリロケーションに記憶されている
42 共有メモリにある伝達されるべきデータのための一意の識別子が存在しない
44 伝達されるべきデータのための一意の識別子がすでに存在し、共有メモリ領域にある
46 追加のメタデータをメッセージに付加する
48 追加のメタデータが利用可能でないかまたはメッセージにとって必要でない

Claims (7)

  1. 単一のコンピューティング環境において少なくとも2つのコプロセッサ間でデータをやりとりする方法であって、前記少なくとも2つのコプロセッサの一方が送信プロセッサであり、前記少なくとも2つのコプロセッサの他方が受信プロセッサであり、前記単一のコンピューティング環境が前記少なくとも2つのコプロセッサによってアクセス可能なメモリを含み、前記方法が
    前記送信プロセッサにおいて、伝達されるべきデータのサイズを判定するステップと、
    前記データの前記サイズが予め定められた閾値より小さいかまたはそれに等しい場合は、前記データをメッセージに添付し、前記メッセージを前記受信プロセッサに送信するステップと、
    前記データの前記サイズが前記予め定められた閾値より大きい場合は、前記メモリ内の前記データのロケーションを示すポインタを前記受信プロセッサに送信するステップと
    を含み、
    前記閾値は、
    前記送信プロセッサが、タイムスタンプを挿入したメッセージを前記受信プロセッサに伝達するステップと、
    前記受信プロセッサが、予め定められた閾値が変更されるべきかどうかを判定するために待ち時間を分析するステップと、
    前記判定に基づいて、前記予め定められた閾値を変更するステップと、
    に基づいて変更される、
    方法。
  2. ポインタを前記受信プロセッサに送信する前記ステップが、前記データが前記メモリ内のロケーションにまだない場合は、前記データを前記ポインタに対応する前記メモリ内の前記ロケーションに移すステップによって先行される、請求項1記載の方法。
  3. ポインタを前記受信プロセッサに送信する前記ステップが、一意の識別子を前記受信プロセッサに送信すステップを含み、前記一意の識別子が前記ポインタによって示されている前記ロケーションにおいて前記メモリ内の前記データにプリペンドされる、請求項1または2に記載の方法。
  4. 一意の識別子がタイムスタンプである、請求項3記載の方法。
  5. 前記予め定められた閾値が構成ファイルにエンコードされる、請求項1乃至4のいずれかに記載の方法。
  6. 前記メッセージを前記受信プロセッサに送信するステップが、
    追加のメタデータの送信の必要性の有無を判定するステップと、
    前記追加のメタデータを前記メッセージに付加することを決めるステップと、
    前記送信プロセッサが、前記追加のメタデータを前記メッセージにコピーするステップと、
    を含む、請求項1乃至5のいずれかに記載の方法。
  7. 前記送信プロセッサが前記メッセージを2つ以上の受信プロセッサに送信する、請求項1乃至5のいずれかに記載の方法。
JP2014009069A 2013-03-25 2014-01-22 共有メモリとのハイブリッドメッセージパッシングの方法 Expired - Fee Related JP6431672B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/849,716 2013-03-25
US13/849,716 US10069779B2 (en) 2013-03-25 2013-03-25 Method of hybrid message passing with shared memory

Publications (2)

Publication Number Publication Date
JP2014186718A JP2014186718A (ja) 2014-10-02
JP6431672B2 true JP6431672B2 (ja) 2018-11-28

Family

ID=50287402

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014009069A Expired - Fee Related JP6431672B2 (ja) 2013-03-25 2014-01-22 共有メモリとのハイブリッドメッセージパッシングの方法

Country Status (7)

Country Link
US (1) US10069779B2 (ja)
JP (1) JP6431672B2 (ja)
CN (1) CN104077265B (ja)
BR (1) BR102014001786A8 (ja)
CA (1) CA2840450C (ja)
FR (1) FR3003665B1 (ja)
GB (1) GB2512443B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10560542B2 (en) * 2014-09-15 2020-02-11 Ge Aviation Systems Llc Mechanism and method for communicating between a client and a server by accessing message data in a shared memory
CN104917884B (zh) * 2015-05-22 2018-01-23 广东欧珀移动通信有限公司 一种数据传输方法及装置
JP6060239B1 (ja) 2015-10-21 2017-01-11 トレックス・セミコンダクター株式会社 基準電圧発生回路
US11128531B2 (en) * 2018-04-30 2021-09-21 Hewlett Packard Enterprise Development Lp Systems and methods for aggregate bandwidth and latency optimization
CN109547531B (zh) * 2018-10-19 2021-04-09 华为技术有限公司 数据处理的方法、装置和计算设备
US11431801B2 (en) * 2018-11-05 2022-08-30 Netapp Inc. Storage offload engine for distributed network device data
CN110309098A (zh) * 2019-06-27 2019-10-08 上海金卓网络科技有限公司 一种处理器间的交互控制方法、装置、设备及存储介质
CN112416629B (zh) * 2020-12-10 2023-07-25 深圳市富途网络科技有限公司 数据互通方法、系统及存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06139201A (ja) 1992-04-14 1994-05-20 Yaskawa Electric Corp 共有メモリを介する情報受渡し方法
JPH09198361A (ja) 1996-01-23 1997-07-31 Kofu Nippon Denki Kk マルチプロセッサシステム
US6148329A (en) * 1998-07-20 2000-11-14 Unisys Corporation Method and system for maintaining the format of messages in a messaging system database
US6601089B1 (en) * 1999-06-21 2003-07-29 Sun Microsystems, Inc. System and method for allocating buffers for message passing in a shared-memory computer system
US6928471B2 (en) * 2001-05-07 2005-08-09 Quest Software, Inc. Method and apparatus for measurement, analysis, and optimization of content delivery
US6941467B2 (en) * 2002-03-08 2005-09-06 Ciphertrust, Inc. Systems and methods for adaptive message interrogation through multiple queues
US7506032B1 (en) 2004-03-25 2009-03-17 Sun Microsystems, Inc. Transfer of arbitrary size messages over memory based interconnects
US7519669B2 (en) * 2004-04-30 2009-04-14 Sap Aktiengesellschaft Prioritizing producers and consumers of an enterprise messaging system
US7532890B2 (en) * 2005-04-01 2009-05-12 Rockliffe Systems Content-based notification and user-transparent pull operation for simulated push transmission of wireless email
US7281118B2 (en) 2005-08-05 2007-10-09 International Business Machines Corporation Sending thread message generated using DCR command pointed message control block storing message and response memory address in multiprocessor
US8141102B2 (en) 2008-09-04 2012-03-20 International Business Machines Corporation Data processing in a hybrid computing environment
JP2011170476A (ja) 2010-02-17 2011-09-01 Mitsubishi Electric Corp データ処理システム及びデータ処理方法及びプログラム
US8676155B2 (en) * 2010-09-24 2014-03-18 At&T Intellectual Property I, L.P. Conditional message forwarding functions
US8429141B2 (en) * 2011-03-01 2013-04-23 Xerox Corporation Linguistically enhanced email detector
JP5598493B2 (ja) 2012-03-30 2014-10-01 富士通株式会社 情報処理装置、演算装置および情報転送方法

Also Published As

Publication number Publication date
JP2014186718A (ja) 2014-10-02
CA2840450A1 (en) 2014-09-25
GB201401083D0 (en) 2014-03-12
BR102014001786A8 (pt) 2021-08-31
US20140289341A1 (en) 2014-09-25
US10069779B2 (en) 2018-09-04
CN104077265B (zh) 2019-03-08
CN104077265A (zh) 2014-10-01
CA2840450C (en) 2020-08-04
GB2512443A (en) 2014-10-01
GB2512443B (en) 2017-11-08
FR3003665A1 (fr) 2014-09-26
FR3003665B1 (fr) 2017-12-08
BR102014001786A2 (pt) 2016-06-14

Similar Documents

Publication Publication Date Title
JP6431672B2 (ja) 共有メモリとのハイブリッドメッセージパッシングの方法
US11175945B2 (en) System and method for distributed security forensics using process path encoding
JP6504679B2 (ja) セキュア暗号ハッシュラウンド機能を提供する命令およびロジック
US7984267B2 (en) Message passing module in hybrid computing system starting and sending operation information to service program for accelerator to execute application program
US8832666B2 (en) Dynamic instrumentation
JP2007200311A (ja) ウェブ・サービス要求をキャッシュする方法、システム、及びコンピュータ・プログラム(ウェブ・サービス要求のキャッシュ)
US20100036940A1 (en) Data Processing In A Hybrid Computing Environment
DE102014004563A1 (de) Befehle und Logik zur Bereitstellung verbesserter Paging-Fähigkeiten für Secure Enclave-Seitencaches
US8365069B1 (en) Web content management based on timeliness metadata
US11637868B2 (en) Attestation support for elastic cloud computing environments
JP3319764B2 (ja) ソフトウェアシステム間でソフトウェア機能を同期化させるための方法および装置
CN111814045A (zh) 数据查询方法、装置、电子设备及存储介质
WO2014155490A1 (ja) データ送信装置及びデータ送信方法及びプログラム
Castro et al. Data archiving system implementation in ITER's CODAC Core System
US9612938B2 (en) Providing status of a processing device with periodic synchronization point in instruction tracing system
DE112013007703T5 (de) Befehl und Logik zum Kennzeichnen von Befehlen zur Rückordnung in einem mehrsträngigen Out-of-order-Prozessor
WO2012072284A1 (en) Method and system for making data maintained by source application accessible
US20050281202A1 (en) Monitoring instructions queueing messages
EP2887208A2 (en) Local closed loop efficiency control using IP metrics
CN114329636B (zh) 一种司法数据的访问控制方法、系统、设备及存储介质
US8359398B1 (en) Efficient proxying of messages
JP2011113243A (ja) 仮想化環境において稼動中のアプリケーション監視システム
US20120124551A1 (en) Template inheritance in a configuration object model
WO2019169035A1 (en) System and method for secure distributed processing across networks of heterogeneous processing nodes
JP2018205838A (ja) 情報処理装置、管理システム、制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180514

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181009

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181105

R150 Certificate of patent or registration of utility model

Ref document number: 6431672

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees