Mercurial > hg > Papers > 2012 > toma-sigos
changeset 4:2b95648ce2b3 default tip
add first presentation
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 06 May 2012 22:01:37 +0900 |
parents | a011ba777be3 |
children | |
files | presentation/cerium-gpu.ind |
diffstat | 1 files changed, 118 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/presentation/cerium-gpu.ind Sun May 06 22:01:37 2012 +0900 @@ -0,0 +1,118 @@ +-title: Cerium Task Manager のマルチコア及び GPU への実装 + +--author: 當眞大千 河野真治 + +--Cerium on Cell / PS3 + +PS3 Linux 上で動く、SPU 用のPipeline Task Manager + +Open CL に近い + +Sort やら Game やら、Rendering Engine やら、それなりに動きました。 + + 並列度を維持し、マルチプロセッサの性能を維持できる + +--今回、発表できる部分 + +--PS3 Linux is no longer supported + +そろそろ PS3 が壊れつつある + +修理すると version が上がり、Linux は動かない + +Jail Break はあるが、それで研究するわけにもいかない + + そろそろ、やめか? + +--Cerium for Many Core and GPU + +Open CL よりは、少しはましな構文 + +せっかく作った例題が動く方が良い + +Many Core と GPU と Cell と同じプログラムが動く (Cell は、もうやめだが) + +将来的には、DataSegment / CodeSegment というのをやるのだが、その準備として + +学生の例題として適切 + + なんだけど、動いてません + +--Cerium の Task + +--Cerium の Task 生成 + +--Many Core 版 + +SPU の代わりに Thread を作る + +POSIX Thread による Synchronized Queue + +Null DMA Manager (copy しない) + +--Many Core 版の性能 + +Cell 遅いんじゃね? + +--Copy Cost + +Copy しなくても良い。しても良い。どちらでも動く。 + +Copy Cost は 5% 程度。そんなに重くない。 + +Copy した方がバグは出にくい。 + +--Rendering Engine のバグ + +Many Core 版で動かすと Rendering Engine がバグる + +データを壊しているようだが… + +Mac OS X で、データのアドレスを固定するには? + +--Task Dependency Log + +Task Dependency をグラフにする + +十分なDependency がないことが一目瞭然 + +--Open CL API + +Cerium Task は、Open CL に近い + +ほとんど、自明な mapping がある + +--実装の難しさ + +なんで出来なかったのか? + +--Code Segment / Data Segment + + 分散版 Alice + Many Core / GPU 版 + Persisency + +--分散版 Alice + +Java による実装 + +Multi Thread (SEDA的な) + +--Alice の Code Segment + +--Alice の Data Segment + +--分散版 Alice の性能 + +Federated Linda の半分? + +--Many Core / GPU 版 + +Cerium の拡張の形で + +C++ ではなく、CbC で実装する + +Kernel として実装し、できればOSを構成する + +--まとめ +