Java仮想機械向けX10の設計と実装

書誌事項

タイトル別名
  • Design and Implementation of X10 for the Java Virtual Machine

この論文をさがす

抄録

X10はIBMが中心になって開発している並列分散プログラミング言語である.X10のコンパイラはC++とJavaを中間言語とする2つのバックエンドを持ち,それらはNative X10とManaged X10と呼ばれている.Native X10はCUDAをサポートする一部のGPGPU上での実行もサポートし,安価に高性能な計算を行える.Managed X10はEclipseベースの統合開発環境X10DTによる対話型プログラミングが可能で,プログラム開発の生産性が高い.またJavaコードとの相互連携が容易で,既存の豊富なJavaライブラリを利用したプログラム開発や,Javaベースのシステムへの組込みが可能である.これら2つの実装のおかげで,X10ではハイエンドのスーパーコンピュータからローエンドのラップトップコンピュータまで,あらゆる規模のコンピュータで動作する単一のプログラムを実現できる.この利点を生かして,X10では高性能計算プログラムの開発も,前半はManaged X10で生産性を重視し,後半からNative X10で実環境での性能をチューニングするのが一般的である.しかしながら処理系実装の観点からは,X10と2つの中間言語の言語仕様の違いが生成されるコードを複雑にし,性能や言語間の相互運用性に影響を与えることも否定できない.それらを避けるためには,処理系の実装に工夫を凝らすとともに,X10の言語仕様を中間言語のそれからあまりかけ離れない現実的なものにする努力も必要である.本発表では,C++とJavaの2つのバックエンドを持つことを特徴とする新言語X10をJavaにコンパイルする際の課題とその解決方法を,処理系実装上の工夫と言語仕様の歩み寄りの両側面から議論する.

X10 is the parallel and distributed programming language which has been developed at IBM. It has the C++ and the Java based backends and they are called the Native and the Managed X10. The Native X10 is suitable for high performance computing at a reasonable cost by offloading its execution onto the CUDA capable GPGPUs. The Managed X10 is suitable for high productivity programming with the Eclipse-based integrated programming environment called X10DT. With these two implementations, it is a common practice for the X10 programmers to use the Managed X10 for the high productivity in the early stage of development, and use the Native X10 for the performance tuning on the production environment in the final phase. However, from the view point of compiler implementation, it is undeniable that the gap in the semantics of the X10 and two intermediate languages has an impact to the performance and the cross-language interoperability. In this presentation, we will discuss the design and implementation of X10 for the Java virtual machine, focused on the optimization we have implemented in the Managed X10 and the compromise in the specification of the X10 language.

収録刊行物

キーワード

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

  • CRID
    1050845762836011392
  • NII論文ID
    170000147550
  • NII書誌ID
    AA11464814
  • ISSN
    18827802
  • Web Site
    http://id.nii.ac.jp/1001/00145114/
  • 本文言語コード
    ja
  • 資料種別
    article
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ