アセンブリ言語レベルでの異種計算機間のヒープとスタックの共有機構

書誌事項

タイトル別名
  • アセンブリ ゲンゴ レベル デ ノ イシュ ケイサンキ カン ノ ヒープ ト スタック ノ キョウユウ キコウ
  • An Assembly -language- level Mechanism of Shared Heaps and Stacks for Heterogeneous Computers

この論文をさがす

抄録

本論文では,ソフトウェア分散共有メモリを用いた異種計算機間のメモリ上のデータの共有を特定の言語処理系に依存せずに実現する手法を示す.異機種間のデータ共有にはデータの表現形式の違いの解決が必要である.従来の手法では高級言語からメモリ上のデータの型情報を得て,通信時にデータ表現形式を変換していた.一方,我々の手法ではメモリ上のデータを,計算機固有のデータ表現形式ではなく,計算機間で共通のデータ表現形式を用いて表現し,メモリアクセス時にアセンブリ命令の型を基にデータ表現形式を変換する.この手法は高級言語の型情報に依存せずに異機種間のデータ共有を実現でき,さらに,CやC++などの型キャストができる言語もサポートできる.また,我々はこの手法をスレッドのスタックにも適用し,計算機間のスレッドの移動に必要なスタックを共有する手法も考案した.我々はこの手法を用いて,SPARCとx86プロセッサの計算機の間でヒープとスタックを共有可能なシステムを実装し,そのオーバヘッドを測定した.GCCと比較した場合,我々の手法のオーバヘッドによる実行時間の増加はSPARCでは平均14.7エ%,x86では平均49.0エ%であった.

This paper describes a language-independent mechanism for software distributed shared memory (DSM) on heterogeneous computers. Sharing data among heterogeneous computers requires conversion of data representation. In traditional approaches, representation of memory data is converted at every communication occurrence using type information provided by high-level languages. In our mechanism, data on memory are represented not in a native format but in an architecture-independent format, where a data representation is converted at every memory access depending on types of assembly instructions. Since this mechanism does not depend on type information from a high-level language, we can share data among heterogeneous computers without language support. As a result, our mechanism can be used with the languages that allow type-casting, such as C and C++. With minor enhancement, our mechanism can share call stacks of threads as well as data on heaps among heterogeneous computers. Shared stack representations enable threads to migrate to another computer. We have implemented a system that can share heaps and stacks between SPARC and x86 computers, and measured overheads of our mechanism. The average overheads in execution time is 14.7エ% on a SPARC processor and is 49.0エ% on an x86 processor as compared with GCC.

収録刊行物

参考文献 (10)*注記

もっと見る

キーワード

詳細情報 詳細情報について

問題の指摘

ページトップへ