Rust の並列実行
MenuRustの thread を使って以下の計算をして Amdahl則をグラフで可視化せよ。(他の例題でも良いが、面白いものであること)
3 ... n ( n は実験が現実的な整数 ) 間の素数を順次奇数で割っていくことで求める。
仕事がなくなったら、Worker が正しく停止する必要がある。すべての仕事が終わった後に正しく停止していることを説明せよ。
3 ... m,m+1 ... n のように分割し、Amdahl 則を実測したい。最初に m までを thread pool で実行し、それを終了を確認してから、残りを single thread で実行する。CPU 4 まで実測せよ。
4. 学科のサーバを使い 30 CPU まで実測せよ。
他の人との干渉を防ぐ必要があるので singularity / slum を使う
5. 結果をグラフで出力する
gnuplot -> svg -> draw.io
option 他の言語でもやってみよう
Java, golang と Metal / Open CL / Cuda のうちの一つ でもやってみよう
cf. Mercural ssh:/net/home/hg/teacher/kono/os/ex/WorkerModel1