そもそも、スケーラビリティって何よ?という疑問はあるのだが、それはおいておいて、CPUの数が増えた時、それに比例して性能向上したらうれしいなあと言う程度のアバウトな事を考える。性能向上って何よ?という疑問はあるのだが、CPUの数が増えた時、処理できる量が増えたらうれしいなあという程度のアバウトな事を考える。処理時間が減るという方向もあるけど、ここでは処理量(スループット)を考える。 で、古典的な問題は、CPUに分散された処理の同期をどうとるかというやつである。素朴な方法はロックをして同期をする。別にロックだけが同期の方法じゃないのだけど、一番(?)素朴な方法なのでよく利用されている。 非常に素朴なロックの実装だと、一つのロックで全てのCPUの同期を取ろうとする。ロックの影響範囲がでかいのでジャイアントロックなんてよばれたりする。むかしのLinux Kernel 2.2あたりはそのような素朴