• ベストアンサー

ナゼVRAMの読み込みは遅い?

昨日質問を立てたのですが回答が付かなかったので、路線を変更して再質問させていただきます。 とりあえず今回はハードウェアカテで(笑) 1.(CPUから見て)何故VRAMへの書き込みは速いのに、読み込みは遅いんでしょうか? 2.VRAMの読み込みが速い機種もあると聞きますが、何処の何と言う機能(?)が改善に役立つんでしょうか? 近況は面倒なので昨日の質問をコピペ(笑) >2,3年前、DirectXでPCゲームを作っている際に、画像データの編集でAGPの上りと下りの転送速度差で大いに苦労したのを思い出しました。 >当時は何も気にせず「そんなものか」と思ったものですが、今になって無性に気になります。 >というわけで、このあたりに詳しい方お願いします。 よろしくお願いいたします。

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

  • ベストアンサー
noname#11476
noname#11476
回答No.6

補足読みました。 その場合だとCPUは遅いAGP経由でアクセスしますから絶対遅くなると思いますよ。 読み込みと書き込みをランダムに繰り返しますから。 そしてCPUのキャッシュも効きません。 VRAMの速度ではなくてAGPの速度に制限されているんですね。 (VRAM自体は最近ではDDRとか高速RAMを使うしバスも広いからかなり早い。) 対して単純に書き込む場合は、一度に転送できるのでAGPのバースト転送で最大速度で送り出せます。 この差は非常に大きいですよ。 バースト転送でアドレッシングがいらなくなるとざっくり半分になりますので。 CPU-AGP-VRAMのアクセスは当然(HELで)転送するデータ量×2(CPU行きと戻り)ですから、先のバーストとあわせて4倍違うわけですね。 (HELでのCPU-メモリ間の速度も考えれば差が縮まるかもしれませんけど、でもAGPよりは早いはず) >読み込みも速いマシンが存在する記述を見たことがあるんため、質問2が存在します(笑)。 う~ん(笑)、なんだろ。 もしこれの速度を早くしようとすると、、、、、 あ、そういえばメインメモリ上にVRAMを展開することが出来るので(たとえば815Eの内臓ビデオ)、それだったら違いはないですよね。 この場合VRAM=メインメモリですから(そして画面表示用データをAGPで送るんです)、速度に差は出ないかと。

g_dori
質問者

お礼

度々ありがとうございます。 CPUは32bit、AGPは128bitですから、プログラム次第ではバースト転送に対してで2×2×4(128/32)倍かそれ以上の差がつくかもしれませんね。(8bit単位の処理など) だんだん見えてきたような気がします。というかこれが決定打かな?? 当時のソースは残っていたと思うので、2については自分で調べてみたいのですが・・・今になってオンボードビデオのマシンを持ってないのが悔やまれます(笑)

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (5)

noname#11476
noname#11476
回答No.5

あ、あともともとの書き込み/読み込みの速度差であれば、DRAMだから読み込みの方が遅くなりますね。 これはVRAMでもメインメモリでも同じなんですけど、メインメモリはCPUのキャッシュが効くのとメモリバースト転送なども出来るからメインメモリのほうが早そうですね。 AGPのバースト転送はVRAM自体のメモリバーストを使っているわけではないでしょうから。(これは推測ですが)

全文を見る
すると、全ての回答が全文表示されます。
noname#11476
noname#11476
回答No.4

あぁ、ごめんなさい。 ようやく言っている意味を理解しました。おまけに一つ前の補足のHAL/HELを取り違えていましたね。 すいません。 整理すると、CPU-メモリ間とVRAM-グラフイックチップ間は高速、でもAGPは遅い。 動画については、 ・CPUでの処理がメインとなる動画編集だとメインメモリで編集して送り出したほうがずっと早い。 (CPUから直接だと遅いAGPを経由しなければならないから) で理解できると思います。 HAL<HELだったというのは、、、処理内容によるのではないでしょうか。 HALのつもりでもそうなっていなかった場合、CPUが直接VRAMにアクセスしているかも知れないですよね。 HELの場合だとメインメモリで処理してから転送するでしょうから。 そういう関係ではないかと??? #ちょっと自信無しです。

g_dori
質問者

補足

こちらこそ申し訳ありません、用語の使い方が悪かったです。 DirectXでHALの設定を行うとサーフェイス(画像イメージ)がVRAMに、HELだとメインメモリに作成されます。プログラム内ではHALとHELのフラグを変更するのみで、その他は一切変更無しです。 そしてその環境でCPUで画像加工を行うと、以下のようになります。 HEL:CPU-メインメモリ間で画像編集  →最終的に出来上がったイメージをVRAMに転送、表示   #VRAMに対して書き込みのみ HAL:CPU-VRAM間で画像編集  →直接VRAMに描画、表示   #VRAMに対して書き込み、読み込みの両方 こういうことをすると、HALの方が圧倒的に遅いんです。 つまるところ下記HPの下の方にある「▲VRAMにCPUでアクセスする時の注意事項」に書かれている理由が知りたいのですが・・・ http://www1.odn.ne.jp/ceb94660/memo/memo.html 偶然このページを見つけてしまいましたが、ここに書かれているように禁止されていたんでしょうか・・? 尚、他のBBS等で読み込みも速いマシンが存在する記述を見たことがあるんため、質問2が存在します(笑)

全文を見る
すると、全ての回答が全文表示されます。
noname#11476
noname#11476
回答No.3

>HALとHEL それはCPUの処理よりは専用チップの処理のほうが格段に早いに決まっていると思うのですが。 これって別に転送速度の話ではないと思うのですが。 HALでの処理は画像転送でなくて、カード内の高速BUSを使って専用チップで処理なので。 HELだと汎用のCPUで処理→遅いバス→カード内VRAM転送ですよね。 二重に遅い処理があるとおもいます。 10年以上前からのVRAMの変遷を考えれば、初めはCPUからのアクセスと画像表示のためのアクセス(RAMDAC)の両方をシェアしていたので遅くて、でもDual Port RAM(CPU側のアクセスと独立にRAMDACからアクセス可能)になってかなり改善されましたね。 その後も変遷を続けていて、AGP4X位のビデオカードになればカード内のBUSは128bit位のバス幅でしょうからカード内は非常に高速だと思いますよ。

全文を見る
すると、全ての回答が全文表示されます。
noname#11476
noname#11476
回答No.2

それはもちろんバス転送速度はメモリ間よりも周辺機器用のバス(PCI、AGP)の方が遅いからでしょうね。 メモリバス66MHzの自体ではPCIは33MHzだったし、メモリバス100MHz/133MHzの現在主流はPCIより早いAGP(×1)ですがそれでも66MHzですから。 あとメモリ直接の場合はreadでキャッシュが効くので、これもまた速さを感じる理由ですね。

g_dori
質問者

補足

すみません、ちょっと納得しがたいのですが・・・ VRAMのRead/Writeの速度差の回答にはなっていないような気がします。 昔作った自作の画像加工ルーチンを伴うヘボプログラムで、HALとHELとを比較して、10倍以上HALの方が遅かった経験があります。 インターフェースによる速度差は認識してますが、コマンド応答やらタイミングの問題を考慮しても、ここまで差がつくとそれ以外の問題が大きいと思うんです。(ちなみに当時使用したPCはAGP4x、PC133のメモリアクセスよりもVRAMアクセスの方が理論上高速でした) プログラムに欠陥があり、実際はVRAMのRead/Writeの速度差が、メインメモリのRead/Writeの速度差と大差ないとしたら、例えば動画編集ソフトはVRAMを使用した方が効率が良い場合が多いと思いますが、残念ながらそういう市販ソフトは見かけません。 ですから何かがあると思うのですが・・・ これらの認識は間違っているでしょうか?

全文を見る
すると、全ての回答が全文表示されます。
noname#25358
noname#25358
回答No.1

 1.について心当たりがあるので。  大昔の話なんで現状がどうか分かりませんが、昔のRAMは、パソコンの種類によっては読み込みが遅いのが当たり前でした。(たとえばMSXとか(笑))  というのも、RAMというのは種類によっては「破壊読み込み」という方法によって読み込みを行うからです。  RAMのあるビットからデータを読み込もうとすると、そのビットに電気信号を送らなければいけません。  ところが、RAMのビットというのは電気信号によって反転する性質があるため、データを読み込むと、読み込み元のビットの情報は破壊されてしまうのです。  なんで、次のプロセスに移る前に再書き込み作業が必要になり、結果として読み込みだけが遅くなります。  現在、破壊読み込みせずにすむのが主流なのか、いまだ破壊読み込みが主流なのかはよく分かりません(^_^;  それどころか、破壊読み込みしないRAMというのが存在するかどうかも分かりませんが(笑)

g_dori
質問者

お礼

ありがとうございます、勉強になります。 たしかにメインメモリでさえ、多くのベンチ結果を見てもWriteよりReadの方が遅いですから、破壊したものを修復しているのかもしれませんね。 ただ気になる点が、いくら遅いといっても、メインメモリの場合は倍も違いなかったと思いますが、AGPやPCI接続のビデオカードのVRAMの場合、比較にならないほど遅かったと記憶しています。(コレが間違い??) ならばオンボードビデオでメインメモリを共有する物が同程度、ということになるんでしょうか・・? う~む・・・

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 初心者です。VRAM増設等について

    3Dシミュレーション「メディーバル2」がパソコンで正常に動きまん。内政画面は問題ないのですが、3Dで描写される戦闘場面で動かなくなります。 ゲームの必須システム環境は下記のとおりです。 OS Windows XP(SP2) 日本語版 CPU Pentium 4 1.5GHz 以上 メモリ 512MB 以上 HDD空き容量 11.0GB 以上 ディスプレイ解像度 1024 x 768 ドット 以上、High Color (16ビット) 以上 グラフィックボード DirectX 9.0c 対応、ピクセルシェーダー1対応、VRAM 128MB以上 サウンド Direct Sound対応ボード、16ビット以上 DVDドライブ 8倍速 以上 DirectX DirectX9.0c以降 私のパソコンはNEC製 PC-VT700/8Dで 主な仕様は下記の通りです。 CPU Pentium 4 2.80C GHz メモリ 512MB(256MB×2) スロット数 2スロット(DIMMスロット)[空きスロット0](デュアルチャネルサポート) 最大容量 2GB ビデオRAM 64MB(AGPボードに搭載) グラフィックアクセラレータ ATI社製 RADEON(TM) 9600SE OSはXPでSP2にしています。HDD空き容量は81.1GBありますし、ディスプレイ・DVDドライブ・DirectXのバージョンも問題ないので原因はVRAMしかないですよね?  で、以下が質問なのですが、どうすればVRAMを増設して128MBにできるのでしょう? あるいはグラフィックボードごとの交換が必要なのでしょうか? 増設・交換のやり方や、おすすめの製品名・値段帯など、初心者の私にもわかるよう教えていただける方がおられましたらご教示ください。 ゲーム購入前に環境を調べなかった私が迂闊でしたが、できればプレイしたいです。 稚拙な質問かと思いますがどなたかよろしくお願い致します。

  • 転送速度について

    現在転送速度について頭がこんがらがっています。 上りと下りについては過去ログを見て下記のように理解できました。 Q/通信速度に「上り」「下り」があるのですが違いは何なのでしょうか? A/上りはアップロード(いわゆるあなたのPC→インターネットへのデータ転送速度)です。 下りはダウンロード(いわゆるインターネット→あなたのPCへのデータ転送速度)です。 まず、ファイルをダウンロードする時もファイルを転送していると考えて宜しいのでしょうか?私のADSL環境ですがのぼりが84kB/sec、下りが200kB/secになっています。 自分が考えるに 1・ファイルをアップロードする時は、こちらの上りのスピードとアップロードされる側の下りのスピードが使用される。 2・ファイルをダウンロードする時は、こちらの下りのスピードとダウンロードされる側のアップロードのスピードが使用される。 っといったように理解しているのですが如何でしょうか? そう考えるとマイクロソフトは上りのスピードがかなり速いことになるのですが・・・。 かなり低俗な質問になるかもしれませんが、ご教授お願い致します。

    • ベストアンサー
    • ADSL
  • 素朴な疑問。ADSLの速度について

    ADSLの上り、下り速度であまり見かけないのですが、 例えばフレッツADSLだと最大下り1.5M、上り512kとなっていますが、 下りで1.5M使っている時に上りは512K出るのでしょうか? 今はフレッツISDN使っているのですが、下りで64Kつかってても、 上りで64Kでるので・・・ ちょっとだけ気になって質問してみました。 わかる方いらっしゃいましたらよろしくお願いいたします

    • ベストアンサー
    • ADSL
  • 動画の読み込みが遅い・ゲームでの回線が安定しない

    先月にOCN光からNURO光へ変更し現在使っていますが、明らかに動画の読み込みが遅くなったり、サイトへ飛ぶ速度(表示)が遅くなり、ゲームをしていても度々落ちたり、ラグが発生しています。BNRスピードテストと言うサイトを利用し速度を測定していたのですが、OCNの時は下りで200Mbps 上りで80Mbps出ていました。現在NUROでは下り500Mbps 上り50Mbps程出ていて、早いと思いきや実際使うと上記のような状態です。 調べる為にUSENの測定をするとOCNの時は同程度の速度だったのに対しNUROはBNRと違い100Mbpsしか出ていません。 これはどう言う事でどうしたら上記な様な事を解決できるでしょう? 私はPCのオンラインゲームで最高の状態を目指しプレイしているので現在非常に困っています。PC本体も40万ぐらいの高スペックな物を使用しています。何か良い方法があったら教えて下さい。よろしくお願い致します。 ※OKWAVEより補足:「So-netの各種設定」についての質問です。

  • 海老名サービスエリアのしくみ

    海老名サービスエリアについて詳しい方に質問します。上りと下りが並列に設置されていますが、例えば上りのSAに車を止めて、下りのSAのレストランで食事をとることは可能でしょうか。つまり、上りと下りを結ぶ連絡橋のようなものはあるのでしょうか?以前は下りにしかレストランがなかったのか、確か可能だったような気がするのですが、通行券を取り替えるなどの不正な手口が行われるため、連絡橋を閉鎖したようなことも聞きました。そのあたりがはっきりしませんので、どなたか知っている方は教えてください。よろしくお願いします。

  • 回線速度について(auひかり)

    昨日くらいから、下りの回線速度が遅い気がしたので、スマホのアプリで計測したところ、上りが500Mbps、下りが30Mbpsでした。 30Mbps出ていればじゅうぶんなのかもしれませんが、上りに比べるとかなり遅いのと、下りの速度が通常の10分の1くらいという状況です。 so-net auひかり 5Mコースを契約しています。 また、家中のPCやスマホが遅い状態です。 障害情報も見当たらないのですが、皆さんの環境はいかがでしょうか? ※OKWAVEより補足:「So-netの各種設定」についての質問です。

  • 駅と駅の間を何本の列車が通るか調べたい

    家を建てる土地を探しており、気になる物件があります。そこは線路に隣接した土地です。音はさほど気にしませんが、それも本数によります。また深夜にどの程度通るのかも知りたいです。 そこで時間帯ごとに何本の列車が通るのかを調べたくなりました。上り・下りとも旅客用・貨物用を合わせた本数です。 物件はA駅とB駅間にあるとしたときに、どのようにして本数を調べたらよいのでしょうか?路線は1本だけです。 よろしくお願いいたします。

  • ADSLの速度

    3/31に賃貸ハイツに引越することになり、ADSLで安くてよいところはないか探しているところです。 Yahoo!BBのスピードチェックで住む地域のADSL回線速度をチェックをしたところ、「下り1.7M 上り0.1M」 とでました。 局との距離がわかればよかったのですが、NTTの路線情報では結果がエラーででませんでした。 速度的には遅いみたいなのですが、この場合どれくらいの速度のものに入ればストレスなくネットできるでしょうか? ASAHIネットの超割が安いので気になるのですが、そのサービスは 「上り1M 下り12M」です。 やはり50Mぐらいのサービスに加入したほうがよいのでしょうか。 できれば5000円以内に抑えたいのですが… どなたかアドバイスいただければうれしいです。

    • ベストアンサー
    • ADSL
  • 保土ヶ谷バイパスについて

    こんにちは。 くだらない質問で申し訳ないのですが、気になってるので教えて下さい。 保土ヶ谷バイパスの下川井から狩場まで向かう方向は「上り」ですか?「下り」ですか・・・? どなたか教えて下さい。

  • ホームページ更新が出来ません。

    ホームページビルダー14で今までは更新が出来ていたのですが、画像と文面を転送しますと、 「転送は完了しました」と表示されますが、更新はされてません。 いままでも「空白文字、記号が含まれています」と表示されてましたが更新は出来ました。 今までと変わった事はフレッツ光ネクストにファミリーハイスピードに変更してからおかしくなった ような気がします。下りが100から200ですが上りは今まで100のままです。

このQ&Aのポイント
  • NTT固定電話の解約に伴う注意点や不都合について教えてください。
  • ドコモ光の集合住宅タイプで電話回線を介しての利用ですが、固定電話を解約するとどのような影響があるのでしょうか?
  • ひかりTVのサービスやISPぷららについても関係があるのでしょうか?
回答を見る

専門家に質問してみよう