2012-07-01から1ヶ月間の記事一覧

ストライピングロックを試す

マルチスレッドプログラミングでは、ロックの獲得が出来ずに待ち時間が発生し、パフォーマンス劣化の原因となることがしばしばある。そのような場合、まずは下記二点の検討を行う。 ロックの粒度を下げる そもそもロックしないようなアルゴリズムに変える も…

マルチスレッドプログラミングの基本

マルチスレッドプログラミングは直感とかなり異なる挙動をすることが多く、非常に困難なプログラミングであることが知られている。不具合も発見しにくく、高負荷になった時にのみ再現したり極めて稀な状態になった時にのみ再現したり等、解決が困難なだけで…

32bit, 64bit で扱える値について

2^32 は何バイト? 4GB = 4096MB = 4194304KB = 4294967296B 2^64 は何バイト? 16EB = 16384PB = 16777216TB = 17179869184GB = 17592186044416MB = 18014398509481984KB = 18446744073709552000B 2^32 秒は何年? 136年70日6時間28分16秒→ signed なのでこ…