トップ «前の日記(2007-01-19 (Fri)) 最新 次の日記(2007-01-26 (Fri))» 編集

uDiary

海野秀之(うんのひでゆき)の外部記憶

Twitter (twilog) / RSS / アンテナ / ぶくま

2006|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|08|
2010|01|02|03|05|06|07|10|11|
2011|03|08|
2012|02|04|07|08|10|
2013|01|02|03|05|06|08|11|12|
2014|01|02|05|06|07|08|09|12|
2015|01|02|03|04|

2007-01-24 (Wed)

[Web] ごめんなさいね、男がこんなで。 - 空中キャンプ

わろた。わかる。 (ja.reddit経由)

とってもエネルギーの低い安定状態に陥ってしまったら、 結婚なんかできないんじゃないかと思う。

ひとごとだけど。

傍観中:test and test and set

http://www.namikilab.tuat.ac.jp/~sasada/diary/200501.html#d28

ちょっと気にかかるやりとりがあるのだが、 不明点いろいろなので、とりあえずここにメモ。 あとで調べて書くかも。

ぼくには、コメント欄にある、tas (test-and-set) は「バスを占有」するが、 cas (compare-and-swap) はしないという話が飲み込めない。

事実だったとしたら、それはキャッシュの更新方式 (write-through か write-back かというやつ) に依存しているのであって、tas か cas かという話ではないと思う。

いずれにしても、cas(たぶん tas も)を実行するには、そのキャッシュブロックを占有する 必要があるので、ロックが欲しい人全員がいきなり cas でポーリングしてたら輻輳しまくるのである。 *1

なので、最初は atomic じゃない普通の load 命令でロック変数をポーリングしておいて (これなら、ロック変数が更新されるまでは、各キャッシュ上のコピーが参照されるので、 輻輳は抑えられる)、 いけそうだという段階になって、初めて cas に切り替える。

(はっきりとそう書いてありますね。ちゃんと読んでないのばればれ)

という話なら有名なので知っている。 *2

test and test and set という語は初めてみたのですが、上のような話なんじゃないかと思った ……けど、未調査なので、断定できない。

ちなみに,こんなことを考えている人は何人くらい居るんだろう.ruby といい,やっぱりマイナーなことしかしてないな,俺は.

  • こんなことを考えていない人はいないと思ってました(←誇張
  • Ruby ってマイナーなんですか?
  • っていうか、ちょーがんばって!

*1 tas もいっしょだと思うけど、知らないのでまだ書けない。cache の方式が write-through だったら「バスを占有」ってことになるのかな。バスって何?という気はする。実際にはハード(システムコントローラ)がアドレスロックするんでしょう。あ、しまった。Intel はつい最近まで(いまも?)共有バスなんだった。

*2 初歩的な話のように聞こえるけど、いきなり cas でポーリングするようなコードが実在したという噂もあったり。


2006|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|08|
2010|01|02|03|05|06|07|10|11|
2011|03|08|
2012|02|04|07|08|10|
2013|01|02|03|05|06|08|11|12|
2014|01|02|05|06|07|08|09|12|
2015|01|02|03|04|
Categories 3imp | Card | Cutter | Dalvik | Euler | Football | GAE/J | Hand | Haskell | Re:View | Ruby | Scheme | TQD | Tiger | TigerBook読 | UikiTeXi | Verilog | Violin | Web | parconc | tDiary | お勉強 | エントロピー | ツン読 | | 将棋 | 政治について | | 模写してみよう | 確率論 | 設定など | 雑文 | 音声