• ベストアンサー

これってどうよ?

DDRII533の1GBのメモリ2個(2GB)をデュアルチャンネルモードで使用していた時のメモリの読み書きと1GBx4個(4GB)デュアルチャンネルモードで使用していた時の読み書きですが2GBの方が1秒間に読み書きできる量が多い。 試しに512MBx2で量ったら4GBの時より1秒間に400MB程多く読み書きできる結果がでた。 当方画像加工を主にしているが試しに1GBx2と512MBx2の3GBで作業したら4GBの時より快適になった。 メモリも増やせば落とし穴があるのか・・・ 因みにメモリは同一銘柄、同一ロット使用。エラー無しです。

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

  • ベストアンサー
  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.6

補足にてご質問の件ですが、どちらが良いということはありません。 #5で書いたメモリ空間は、より詳しくは「物理メモリ空間」と呼ばれるものです。この空間のどこにどのようなプログラムコードやデータが置かれるのかはWindowsのみが知っており、ユーザがその配置の状況を把握したり制御したりすることはできません。 「32ビットのWindows上で、32ビットのアプリケーションプログラムは2GBのメモリ空間を使うことができる」という文脈で使われている「メモリ空間」は、より詳しくは「仮想メモリ空間」と呼ばれるものです。Windowsの場合、この仮想メモリ空間は4GBあり、そのうちアプリケーションがプログラムコードやデータに使用できるのは(通常は)下位2GBの範囲内となります。 しかし、この「仮想メモリ空間」のある特定の領域(例えば下位2GB)が「物理メモリ空間」のどこに対応しているのかをアプリケーションプログラムから知ることはできません。そもそも、この対応関係は固定的なものではなくWindowsの動作に伴い動的に変化するものなので、仮に把握が可能であったとしても、把握することにたいした意味はありません。 このように、アプリケーションのプログラムコードやデータが物理メモリ空間内のどこに配置されるのかを制御することはできず、どこにでも配置される可能性があるので、物理メモリ空間内へのDIMMの配置順序に「より良い順序」というのはありません。

D830
質問者

お礼

ありがとうございました。また一つ賢くなりました。

その他の回答 (5)

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.5

お使いのPCのチップセットはIntelの945か955だと思います。その場合、各DIMMのranks/banksが違っていても問題ありません。DRAMタイミング(CASレイテンシ等)とは異なり、1つのパラメータを全体で共用するのではなく、各DIMMごとに適切なranks/banksを設定してアクセスします。(この点は945/955チップセットの仕様書に記載があることなので、確かです。) なお、問題点ではありませんが、次のような動作になるはずです。 512MB×2枚と1GB×2枚でデュアルチャネル動作状態にしたとします。このとき、メモリマップ上の先頭1GBのメモリ空間は512MB×2枚にアクセス、次の2GBは1GB×2枚にアクセス、のようになります。(DIMMの差込順によっては逆になります。) このときranks/banks設定は各DIMMごとの設定が使用されるので、今回のように512MB DIMMが1GB DIMMより高速な場合、先頭の1GB(512MB×2枚)へのメモリアクセスが次の2GB(1GB×2枚)へのメモリアクセスより高速となります。

D830
質問者

補足

ありがとうございます。凄くためになります。 ◆512MB×2枚と1GB×2枚でデュアルチャネル動作状態にしたとします。このとき、メモリマップ上の先頭1GBのメモリ空間は512MB×2枚にアクセス、次の2GBは1GB×2枚にアクセス、のようになります。(DIMMの差込順によっては逆になります。)◆ とありますが、1.2.3.4のDIMMの差込口に今1.3が1GBを差し、2.4が512MBなのですが、逆に1.3を512MB、3.4を1GBの方が良いということでしょうか? 因みにマザーはギガバイトの8I945G-PROです。

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.4

既にご確認済みとのこと、大変失礼いたしました。以下は最後のあがきです。 同じくEVERESTで「マザーボード→SPD」を選択し、右側の「デバイス記述」から各DIMMを選択したときにその下の「メモリモジュールのプロパティ→モジュールサイズ」に表示されるrowsとbanksの数字を比較してみてもらえないでしょうか。 ここに表示される数字の組み合わせは最小が1 rows/4 banks、最大が2 rows/8 banksで、1 rowsのDIMMより2 rowsのDIMM、4 banksのDIMMより8 banksのDIMMのほうが転送速度が速くなります。 512MBのDIMMが2 rows/4 banksか1 rows/8 banks、1GBのDIMMが 1 rows/4 banksであれば、ひとまず512MB×2枚が1GB×2枚より速くなっている理由(の1つ)はこれであろうと推測できます。 仮にそうだとしても、1GB×2枚が1GB×4枚より速いことは全く説明がつきませんが・・・中途半端な知識で口出ししてすみませんでした。

D830
質問者

補足

1GBのDIMMが 1 ranks/4 banksで、512MBのDIMMが2 ranks/4 banksでした。 だから512が二枚の時は速いんですね。 ところで512x2と1Gx2のranks/banksが違うメモリで使用するとまずいでしょうか?

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.3

しつこいようですが、念のための確認です。 BIOSやOSの設定が完全に同一であっても、メモリタイミングの設定値(チップセットに設定される値)はメモリモジュールごとに異なる場合があります。たとえば「CL3のメモリモジュール」であっても、CL以外の値が異なっている場合があります。 同一ロットで異なっていることは非常に考えにくいですが、容量が異なるモジュールの場合、同一ロットではないので、同じ(例えば)CL3であっても他のパラメータが異なっている場合があります。 そうした「チップセットに設定されるメモリタイミング設定値」はBIOSから確認することができないので、確認するとすればEVERESTの「マザーボード→チップセット→メモリタイミング」の項目のようなものを使用する必要があります。 もし既に「マザーボード→チップセット→メモリタイミング」を参照され同一値であることを確認されているのでしたらごめんなさい。

D830
質問者

補足

エベチャンで確認してます。 1つさしで全てのメモリ調べましたが4-4-4-12でしたよん。 因みに容量が異なる組み合わせの方が同一ロット4GBより250MB程(5回計即時の平均)多く読み書きできる結果でした。

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

メモリタイミングとチャネル構成が完全に同一であれば、メモリ容量が変わっても計測してはっきりと分かるような転送速度の違いは出ません。また32ビットOS・アプリケーションであるか否かで転送速度の違いが出ることもありません。 念のため   EVEREST Home Edition   http://www.forest.impress.co.jp/lib/sys/hrdbnch/hardinfo/everest.html の   マザーボード→チップセット→メモリタイミング で、それぞれのメモリの組み合わせでメモリタイミングの設定値が完全に同一であるかどうかを確かめてみてはいかがでしょうか。

D830
質問者

補足

当方もEVERESTを使ってますが、このソフトでもメモリのベンチをやると同じ結果がでました。タイミング、設定値は同一です。

  • mobius
  • ベストアンサー率42% (113/265)
回答No.1

これは、32BITの限界らしいですよ? WinXP64ではどうかはしりませんが、通常のXpなどでは、32BITですので、1度にメモリにアクセスできるサイズの問題やらで、2GB超のメモリを搭載した場合、却って速度は鈍くなるようです。 64BITなどになると、その辺が増えて、また事情が変わってくるらしいので、アプリケーションが32BITの間は、最速は2GBまで、ということらしいです。

D830
質問者

お礼

回答ありがとうございました。 また一つ賢くなりました。 当方もXP64導入しようかと検討中ですが、まだ早いかと思い足踏み状態です。 デュアルブートで使用しようとしましたが面倒だし、まだ64対応アプリの対応状況が乏しいですから・・・ P-D830なのに単独タスクは勿体無い(笑)

関連するQ&A