wait freeの意義?

lyrical_logicalさんが興味深い事を言っていたので絡んだの図
6
くまぎ @kumagi

@lyrical_logical アトミックな形に問題を置き換えるというより、上限を規定した中に全スレッドのアトミック操作を押し込む手段を考える,という物を良く見る気がします。

2010-10-11 09:43:46
病気の美少女 @lyrical_logical

@kumagi ふむむ…矢張り実装例見まくる方が良さそうですね、あんまり見当たらないのでなかなかですが…

2010-10-11 09:47:07
病気の美少女 @lyrical_logical

例えばお金振り込んだのに割りを食いまくって全然入金完了しねえギャッ!っとかは考えられるけれど、こう non-blocking がどうとかいう話に比べるとこれは問題がデカすぎる気がする。まず金かかる処理はタスクキューにつっこむか普通にロックしろよっていう現実の話もあるなあ

2010-10-11 08:42:32
くまぎ @kumagi

@lyrical_logical ロックだとスケールしないので、銀行のシステムを安く高性能に提供しようと思ったらこういう方向に走るのは仕方ないと思います。

2010-10-11 08:47:35
病気の美少女 @lyrical_logical

@kumagi 現実にはお金を扱う物を作る場合は、正しく実装されていることが超重要なので、遅いかも知れないけれど安全(バグいれにくいという意味で)なのを選択してあとは金の力でなんとかする、というのはお仕事の選択としてはありかなーという話でした。

2010-10-11 09:04:55
くまぎ @kumagi

@lyrical_logical 実装コストとの兼ね合いで選択は一杯あるでしょうねぃ。選択肢の一つとして「実装コストを存分にかけていいから最強のものを作ってくれ」と言われた時の実装手段に研究価値があるんでしょうねぃ。

2010-10-11 09:15:13
病気の美少女 @lyrical_logical

無限 CAS 地獄とか現実にあるんだろうか。無限はないだろうけれど、ちょっとぐらい遅れるのはいいけどあんまり遅れると困る、みたいなケースが考えられるから、それだけでも充分なのかなあ。

2010-10-11 08:39:43
くまぎ @kumagi

@lyrical_logical コア数やスレッド数がもっと増えないと顕在化しない問題だと思います。現時点だと音声のリアルタイム処理ぐらいしか話を聞いたことが…

2010-10-11 08:45:22
病気の美少女 @lyrical_logical

@kumagi 実際にあるっていうのはちょっとすごいことですね…とはいえ逆にいうとそんだけしかないんなら wait-free について考えるのはまだ未来でも良さそうですね。

2010-10-11 09:05:38
くまぎ @kumagi

@lyrical_logical スタベーションが起こると困る場面は限られてて、困らない場面に於いては遠い未来でも大抵の場面では高いスループットが期待できるlock-freeを使ってると思います。

2010-10-11 09:18:08
病気の美少女 @lyrical_logical

@kumagi そうか、スタベーションで困るかどうかと、コア数とかは全く関係なかったですね。

2010-10-11 09:20:26
病気の美少女 @lyrical_logical

となると矢張り wait-free どうでもいいという話に…

2010-10-11 09:22:24
くまぎ @kumagi

@lyrical_logical 「スタベーションどうでもいい」な人にとって「wait-freeどうでもいい」は真理です。そもそもスタベーションを問題にする人向けの物ですから。

2010-10-11 09:24:21
病気の美少女 @lyrical_logical

@kumagi そうですね。ただ、誰に必要なのかっていうのは大事なことなのでそれが分かったのはいいことだなーと思います。

2010-10-11 09:27:22