- OSの話(RubyOSの発表より)
- miura1729: おお、Ruby OSの話聞きたい。H/WとCのモデルと乖離しているのでCでOSを書くのはそろそろ無理が出てるんじゃないかなと思う。Rubyがいいのか分からないけど。
- miyox: @miura1729 H/WとCのモデルが乖離しているってどういう意味ですか?
- miura1729: @miyox 例えばCellのようアーキテクチャでは複数のメモリ空間を扱わなければなりませんが、Cは単一のメモリ空間なので自然に記述しようとすると無理が生じるか効率を落とします。GPUでも同様なことが起きると思います。
- miyox: @miura1729 なるほどです。Cellの場合各SPEで動作するプログラムはそうですね。GPUの場合MappedMemoryみたいなものもありますが、確かに単一メモリ空間で扱いたいからがんばっているという見方もできるのかな、とか思い直しました。
- miura1729: @miyox OpenCLなんかを見ても無理してるなーと感じます。個人的にはもっと言語を抽象化してH/Wへのマッピングはコンパイラが頑張るといい流れになるべきだと思います。
- miyox: @miura1729 割と着目されているレイヤですが、コンパイラで静的にマッピング+ランタイムライブラリ埋め込むという対処を、既存言語へのアノテーションによる拡張やC++のテンプレートを使って解決というのが多いように思います。もちろん新言語の話もちらほらですが。
- 記憶階層の話(UECFSの発表より)
- miyox: キャッシュリプレースメントポリシやプリフェッチって記憶階層のどこというのではなく書き込み/読み込み時間の差やサイズ、データ移動コストなんかをパラメタにして一般的に議論できないものなのかな、と思う #prosym52
- ern_pys: @miyox ストリーミング、スラッシング、ローカリティの3パターンについて、ある一定容量のバッファでお手玉をする、というパズルなら最適解解けそうですよね。現実にはノイズがのるのでアーキ屋の自分は近似に逃げてしまうのですが、コンパイラの素養ある人ならあるいは。
- miyox: @ern_pys なるほど。ぜひ今度議論させてください。
- mikikazuhide: 唐突ですが、できると思います。どんな一般化をするかがポイントかと。 RT @miyox: キャッシュリプレースメントポリシやプリフェッチって…書き込み/読み込み時間の差やサイズ、データ移動コストなんかをパラメタにして一般的に議論できないものなのかな、と思う #prosym52
- miyox: @mikikazuhide そうですね。ちょっとかんがえてみたいと思います。ちなみに、クラウドなストレージも記憶階層の一部だよねというような議論もありました。