• ベストアンサー

CPU 二次キャッシュの設定変更 1Mだと、、、

PCの速度を上げようと奮闘している最中です。 数々の質問を参考にさせていただき、二次キャッシュの設定を変更できる事を知り、早速自分のPCの二次キャッシュをEVERESTで調べた所、1Mと表示してありました。 10進数で入力とあったので1Mの10進数を調べると 1000KBと1048KBと二つの意見があります。 果たして、二次キャッシュを変更するには、どちらの数値を入力すればよいのでしょうか? 当方自作PCで、HTテクノロジPen-4 3.2G メモリ3G OSはWinXP Proを使用しております。 どうぞ、ご教授よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • deadline
  • ベストアンサー率63% (1239/1943)
回答No.3

元々、最近のCPUでは参照されないキーで、HALから正常に取得されていれば、0に設定されているはずなので、0に設定しておけば良いのではないかと・・・。(←ちょっと、自信なし) ↓のページにも、 『2005.1.25追加) 現在主流のCPUでは特に設定をしなくても(標準値の0のまま)でも、ハードウエアのキャッシュのサイズを調査して自動的に設定されます。』 とあるので。 『デジタルARENA:2次キャッシュメモリーのサイズを見直してパフォーマンス向上』 http://arena.nikkeibp.co.jp/tec/winxp/20040312/107915/

参考URL:
http://arena.nikkeibp.co.jp/tec/winxp/20040312/107915/
jun650
質問者

お礼

度重ねのご回答ありがとうございます。 ご指摘の通り設定を戻しました。 動作も安定しております。 ありがとうございました。

その他の回答 (2)

  • deadline
  • ベストアンサー率63% (1239/1943)
回答No.2

>二次キャッシュの設定を変更できる事を知り、 レジストリの HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management SecondLevelDataCache   REG_DWORD   0x00000400(1024) を書き替える方法のことだと思いますが、『Microsooftサポートオンライン:KB183063』によると、 ダイレクト・マップ方式のL2キャッシュを採用しているプロセッサを使用したPCで、HAL(*)がL2のサイズを正しく取得できない場合にこの値が参照されます とあり、PentiumII以降、およびAMD Athlon/Duron等の最近のCPUは、セット・アソシエイティブ方式のL2キャッシュを採用していますので、この値を変更しても余り意味はありませんし、HTが有効になっている場合、L2キャッシュを論理CPUが取り合うことになるので、システムに設定を任せた方が無難です。 *HAL(Hardware Abstraction Layer):Windows NT/2000/XPのカーネル内部において、CPU等ハードウェアの違いによる機種依存部分を吸収するためのコンポーネント 『Microsoft サポートオンライン:KB183063 Detailed Explanation of SecondLevelDataCache』 http://support.microsoft.com/kb/183063/ja/ 『OKWave:pen4の二次キャシュ』 http://okwave.jp/kotaeru.php3?q=701233

参考URL:
http://support.microsoft.com/kb/183063/ja/,http://okwave.jp/kotaeru.php3?q=701233
jun650
質問者

補足

ご回答ありがとうございます。 >HTが有効になっている場合、L2キャッシュを論理CPUが取り合うことになるので、システムに設定を任せた方が無難です。 それはちょっと心配ですね。。 システム設定に任せたいのですが、どうすればよいのでしょうか? SecondLevelDataCacheごと消してしまえばよいのでしょうか? どうぞよろしくお願いします。

回答No.1

1Byte = 8Bit 1KByte = 1024Byte 1MByte = 1024KByte 1GByte = 1024MByte 1000KBというのは、1024だと計算が難しい為、 単純化した数値ですので、コンピュータ上では1MBにはなりません。 1MByteを設定するにはKByteの場合は1024KByte、 Byteの場合は1048576Byteになります。

jun650
質問者

お礼

ご回答ありがとうございます。 1024でしたか。ありがとうございました。 あれからさらに調べてみた所、16進数だと400だと言う事もわかりました。

関連するQ&A