Sun Microsystems 最後の信者
■ このスレッドは過去ログ倉庫に格納されています
0858名無しさん@お腹いっぱい。
2008/10/16(木) 16:19:11そんな馬鹿どこにいるんだ? 勝手に馬鹿を想像で作り出して叩くのは病気よ。
x86の同期処理の問題点が、LOCK prefix にあるのは既に言った通り。
個別のメモリ領域に対してロックをかけるのではなく、グローバルにバスをロックすること。
また、LOCK prefixが付いている命令が続く限りロックというのは、ロック開始の前に
ロック対象のメモリ領域がわからない、ということでもある。これは大ネックだ。
しかし実際に使われている排他制御のコードでは、
LOCK prefix付きのXCHG命令1つ、だったりする。
これならばグローバルにバスをロックしないプロトコルに変換可能。
すでに巨大な命令デコーダ等々を持つx86にとっては、
すでに継ぎ接ぎだらけのプレハブの建物にさらに増築するのは慣れっこだろう。
物量まかせの対症療法も、それなりの効果を発揮するだろうから、馬鹿にできない。
なにしろ今まで、そうやって散々足下からシェアを食われてきたのだから、ね。
ちなみに、UltraSPARCの同期処理も、けっこうなサイクルを消費する。
HPCのように粒度が細かいマルチスレッド処理では問題となるので、
SPARC64では、高速に同期するための別の手を用意するほど。
■ このスレッドは過去ログ倉庫に格納されています