Gears OS のモジュール化と並列 API

Mitsuki Miyagi, Yu Tobaru, Shinji Kono 琉球大学

Gears OS

API と実装の分離

並列API

スライドの流れ

CbC

CbC

CbC の構文

__code cg0(int a, int b) {
    goto cg1(a+b);
}
__code cg1(int c) {
    goto cg2(c);
}

スライドの流れ

Gears における並列実行

Interface

Context

par goto

Task

__exit

__code code1(Integer *integer1, Integer * integer2, Integer *output) {
    par goto add(integer1, integer2, output, __exit);
    goto code2();
}

スライドの流れ

Gears OS の評価

Twice

Processor Time(ms)
1 CPU 1181.215
2 CPUs 627.914
4 CPUs 324.059
8 CPUs 159.932
16 CPUs 85.518
32 CPUs 43.496
GPU 127.018
GPU(kernel only) 6.018

評価の考察

Go 言語との比較

message

スライドの流れ

今後の課題