読書会(The Art of Multiprocessor Programming)第3回議事録

[ 戻る ]


Java読書会 「The Art of Multiprocessor Programming」を読む回(第3回)議事録

日時 : 2010/10/30(土) 10:00-17:00
場所 : 高津市民館 第6会議室
出席者:飯田、岩室、岡澤、門脇、柴崎、高橋(徹)
    高橋(智)、根本、松永、村山、吉本(書記)
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
P95から

■4.2.6 MRMW不可分レジスタ

■4.3 不可分スナップショット

  ・Figure 4.16の<T>は、IntegerやBooleanを想定しているのでは?
   →業務で作ったクラスは想定していない。
   →immutableであることが重要。
   →immutableなので、参照をコピーしても影響は無い。

■4.3.1 オブストラクションフリースナップショット

■4.3.2 無待機スナップショット

  ・Figure 4.21のmoved配列は、初期化が必要?
   →ローカル変数は暗黙の初期化はされないはず。
   →初期化が抜けていると思われる。

■4.3.3 正確さ

■4.4 注記

■4.5 練習問題

  ・FCFS順とは?
   →First come First served のこと。

■5章 プリミティブな同期操作の相対能力

■5.1 コンセンサス数

■5.1.1 状態と価数

  ・クリティカルの意味は?
   →訳されていない。
   →ミッションクリティカルなどと同じく。

■5.2 不可分レジスタ

■5.3 コンセンサスプロトコル

■5.4 FIFOキュー

■5.5 多重代入オブジェクト

■5.6 Read-Modify-Write操作

  ・Figure 5.14のf(v)は何を指すのか?
   →rmwメソッドを指すと思われる。

■5.7 Common2 RMW操作

■5.8 compareAndSet()操作

■5.9 注記

■5.10 練習問題

■6章 コンセンサスの普遍性

■6.1 概要

■6.2 普遍性

■6.3 ロックフリー普遍構造

  ・Figure 6.4の13行目のループを抜ける条件が分からない。
   →prefer == afterになった時では?
   →inputよりoutputの方が多い場合は、いつか終わるはず。

■6.4 無待機の普遍構造

■6.5 注記

■6.6 練習問題

■7章 スピンロックと競合

■7.1 現実の世界へようこそ

■7.2 Test-And-Setロック

■7.3 TASベースのスピンロック

  ・get()の場合は、メモリーではなくキャッシュを見る。
   →メモリーが更新された場合にはキャッシュもフラッシュする。(getAndSetメソッド等)

■7.4 指数関数バックオフ

■7.5 キューロック

■7.5.1 配列ベースのロック

■7.5.2 CLHキューロック

  ・Figure 7.9と7.10のクラスは同じクラスか?
   →そう思われる。

  ・CLHとは?
   →ロックの考案者の名前から。

■7.5.3 MCSキューロック

  ・Figure 7.13の36行目は他のスレッドに伝播するのか?
   →スレッドローカルなのに、他のスレッドから見えるのか?

   【宿題】Figure 7.13のロックが本当に動作するのか確認する。


以上

次回は、P171より。


[ 戻る ]