Skip to content

Instantly share code, notes, and snippets.

@wm3
Created January 6, 2013 04:34
Show Gist options
  • Save wm3/4465225 to your computer and use it in GitHub Desktop.
Save wm3/4465225 to your computer and use it in GitHub Desktop.
The Art of Multiprocessor Programming 読書会 第五回 三〜四章まとめ

3 Concurrent Objects – 並行オブジェクト

https://gist.github.com/3304936

並行オブジェクトにおける correctness の解説(3.1 ~ 3.5)

  • Quiescent consistency, Sequential consistency, linearizable
  • (最適化のために、並行オブジェクトは実際に実行されたタイミングとのズレが生じる。それをどこまで許容するかの線引きを行う、という認識)

付属の特性 (3.6、3.7)

  • nonblocking と compositional
  • wait-free, lock-free, obstruction-free, bounded wait-free, population-oblivious

The Java Memory Model

4 Foundations of Shared Memory – 共有メモリの基盤

https://gist.github.com/3325229 https://gist.github.com/3329008

レジスタを構築する話

atomic (linearizable)なレジスタを用意したい

  • 弱い特性のレジスタから順に構築可能 (4.2)

各種特性 (図4.4)

  • 一貫性のタイプ
    • safe, regular, atomic
  • readers, writers の数
    • SRSW : single-reader, single-write
    • MRSW : multi-reader, single-writer
    • MRMW : multi-reader, multi-writer
  • レジスタのサイズ

Atomic Snapshots – アトミックなスナップショット

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment