Project Sumatra - JavaOne2012報告会 #j1rep

Preview:

DESCRIPTION

JavaOne2012 報告会

Citation preview

#j1rep

Project Sumatra久保田祐史 (@sugarlife)JavaOne報告会 2012

1

#j1rep

自己紹介

•久保田祐史 (KUBOTA Yuji)

•@sugarlife

•難聴者

•トラブルシューター

•#glassfishjp2

#j1rep

Project Sumatraを一言で

•AMDが牽引して進めているヘテロジニアスコンピューティング対応

3

#j1rep

Heterogeneous Computing

•Many-CoreからGPU / APUも利用する世界へ

• GPGPU: Speed Hashing

• GPUs as an Opportunity for Offloading Garbage Collection

• 省電力、ハイパフォーマンス

•Many-CoreからGPU / APUも利用する世界へ

•超並列でちょっぱや!

•おまけに省電力!

Heterogeneous Computing?

AMD64x2 dual core 4400 with 2mb cache, Garrette, http://www.flickr.com/photos/garrette/53235940#j1rep

4

#j1rep

使いこなすのは難しい

ninja, R'eyes, http://www.flickr.com/photos/grrphoto/152833988/#j1rep

5

#j1rep

使いこなすのは難しい

GPU Programmer = Ninja

ninja, R'eyes, http://www.flickr.com/photos/grrphoto/152833988/#j1rep

6

#j1rep

AMDの戦略 @AFDS2012

•HSA •CPUプログラミング並にGPUプログラミングを簡単に!

•ARMら他社ベンダと提携

•そしてNVIDIAを出し抜こう

(Heterogeneous System Architecture)

7

#j1rep

HSAの特徴

•プログラミングモデル

•二層のコンパイラを提供

•OpenCL や C++AMPのソースから中間言語(HSAIL)を生成

•Finalizerにより各ベンダのGPUに合わせた最適化コンパイル

8

#j1rep

HSAの特徴

•プログラミングモデル

•二層のコンパイラを提供

•OpenCL や C++AMPのソースから中間言語(HSAIL)を生成

•Finalizerにより各ベンダのGPUに合わせた最適化コンパイル

敷居がまだ高い

9

#j1rep

Javaの世界へ•Java開発者を引き込もう

•Aparapi (A Parallel API)•独立したループ処理をOpenCL上で並列処理するAPIを提供

•HSAの上位コンパイラに相当

•2012/09にOpenJDK Projectへ

10

#j1rep

今のAparapi// Sequentialfor(int i=0; i<in.length; i++){   out[i]=in[i]*in[i];}

// Aparapi (override Kernel as Thread idiom)

Kernel kernel = new Kernel(){   @Override public void run(){      int i = getGlobalId();      out[i]=in[i]*in[i];   }};kernel.execute(in.length);

http://code.google.com/p/aparapi/11

#j1rep

今のAparapi

Thread thread = new Thread(new Runnable(){   @Override public void run(){      System.out.println(“Hello Thread”);   }};thread.start();thread.join();

Kernel kernel = new Kernel(){   @Override public void run(){      int i = getGlobalId();      out[i]=in[i]*in[i];   }};kernel.execute(in.length);

12

#j1rep

これから

#j1rep13

#j1rep

これから

#j1rep

Java Developer = GPU Programmer

14

#j1rep

まとめ

#javaconf

新しい動きを直に見れるのは楽しい!新しい動きを直に見れるのは楽しい:)

まとめ

_DSC3218, Yuichi Sakuraba, http://www.flickr.com/photos/skrb/8149981226/#j1rep

15

#j1rep

ご清聴ありがとうございました

16