More Related Content
Similar to Project Sumatra - JavaOne2012報告会 #j1rep
Similar to Project Sumatra - JavaOne2012報告会 #j1rep (20)
More from Yuji Kubota (20)
Project Sumatra - JavaOne2012報告会 #j1rep
- 4. Heterogeneous Computing?
Heterogeneous Computing
• Many-CoreからGPU / APUも利
• Many-CoreからGPU / APUも
用する世界へ
利用する世界へ
• GPGPU: Speed Hashing
• GPUs as an Opportunity for Offloading
• 超並列でちょっぱや!Garbage Collection
•おまけに省電力!
• 省電力、ハイパフォーマンス
AMD64x2 dual core 4400 with 2mb cache, Garrette, http://www.flickr.com/photos/garrette/53235940
#j1rep
4
- 6. 使いこなすのは難しい
GPU Programmer = Ninja
ninja, R'eyes, http://www.flickr.com/photos/grrphoto/152833988/
#j1rep
6
- 7. AMDの戦略 @AFDS2012
•HSA (Heterogeneous System Architecture)
•CPUプログラミング並に
GPUプログラミングを簡単に!
•ARMら他社ベンダと提携
• そしてNVIDIAを出し抜こう
#j1rep
7
- 11. 今のAparapi
// Sequential
for(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/ #j1rep
11
- 12. 今のAparapi
Kernel kernel = new Kernel(){
@Override public void run(){
int i = getGlobalId();
out[i]=in[i]*in[i];
}
};
kernel.execute(in.length);
Thread thread = new Thread(new Runnable(){
@Override public void run(){
System.out.println(“Hello Thread”);
}
};
thread.start();thread.join();
#j1rep
12
- 15. まとめ
新しい動きを
新しい動きを
直に見れるのは楽しい!
直に見れるのは楽しい:)
_DSC3218, Yuichi Sakuraba, http://www.flickr.com/photos/skrb/8149981226/
#javaconf
#j1rep
15