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

[ 戻る ]


2010年08月28日 土曜日
The Art of Multiprocessor
出席者 高橋(徹) 高橋(智) 遠藤 村山 石黒 小棚木 根本 吉村 今井 久保田 飯田

O()の表記法 :ビッグオー・ノーテーション
NP完全とNP困難 がある、これはどうする?

第一章

Amazon EC2がよいか
有界の公平性とは? 原文では bounded fairness

Atomic Integer つかわないの?
1.1 共有オブジェクトと同期
1.2 寓話
1.2.1 相互排他の特性
1.2.2 教訓
1.3 プロデューサー/コンシューマー問題
1.5 並列性の厳しい現実
1.6 並列プログラミング
食事をする哲学者の問題:
安全性:悪いことが起きないようにする
活性:良いことが起きるようにする

練習問題4 回答が思いつかない
練習問題5
最初のひとりが、全体を見て、赤だけに注目して、赤が偶数なら赤、赤が奇数なら青と言うと決めておく。次の人はもしも自分にも赤が前の人と同じ状態に見えていたら、自分がかぶっているのはすなわち青である。

相互排他
2.1 時間
2.3.1 LockOne クラス
  Lemma : 定義の前段階としての理論的証明
  Corollary : 当然の結果、前の結論から自明に証明できるもの
  ∃の記号は Existsの意味  (∃ !=i) はiが存在しない間。
2.10
  練習問題 11 位は解けないか
  下記のコードが動かないとしたらどこで、おかしくなるか。

class Flaky implements Lock {
  private int turn;
  private boolean busy = false;
  public void lock() {
    int me = ThreadID.get();
    do {
      do {
        turn = me;
      } while (busy);
      busy = true;
    } while (turn != me);
  }
  public void unlock() {
    busy = false;
  }
}

以上


[ 戻る ]