2017/02/20

短く纏めるのは・・・

・・・限界あるんだよな、この手の内容は。
■ こちらの・・・
とあるTweetで取り上げられている事象は、徒花緊急の【双子】で、旧環境にて 稀にだが、顕著であった。
■ そもそも、
★ nVIDIA (のディスプレイドライバ)合わせで構築された
・・・PSO2 は、データ転送に対するタイムアップの定義が、シビア通り越して極めてピーキー。
■ コレを
非最適化対象である AMD RADEON HD7770 を2枚用いた CrossFireX 構成で用いていた頃は、
設定5ですら、徒花緊急の【双子】で、たまに発生していた事象である。 
そのグラボ環境のまま設定6にすると 全ボス そうなってしまっていた。
◆ もう少し厳密に云うと、
★ GPUベンダが
nVIDIA AMD Intel 何れであれ、PCIeバスに於けるデータ転送帯域の世代別最大値に起因する。
◆ ツマり、
PCIe Gen.3.x(32.0GB/sec) のバス帯域で可能なデータ転送速度(秒間量)であれば発生しない問題が、

DirectX9c時代に登場した Gen.1.x(8.0GB/sec)は云うに及ばず、
続くDirectX10や11を基盤とした時期の Gen.2.x(16.0GB/sec)のキャパシティを以てしても、

定義されている時間では、マシンのメインメモリから グラボ上のVRAMへのデータ転送が間に合わず、
結果としてタイムアウトする。

★ ココの説については、仕様からの判断では無く、実働で確認している。
現在 おきつね端末1st機は、990FXマザーボード(PCIe Gen.2.0)に対し、
HD7770CFx から RX480のシングルボード環境へ移行している。

この状態で PSO2 CCEp.4ベンチを実行すると、各ディスプレイ解像度共に、
巷のPCIe Gen.3.0マザーでのRX480のベンチマーク結果を遥かに下回る。

この事実から、PCIe の転送速度が、大きく影響するモノであると、結論している。
★ それがドウ繋がるか?
■ PSO2 は
未だ DirectX9cと云う 骨董ライブラリに依存した 32bitビルドのアプリケーションである。
★ その癖
ハードウェアだけは、最新鋭PCIeである Gen.3.xを 最低ラインとして構成されている。
nVIDIAは以前より、
PCIeのデータ転送ピーク値のみ診て デバイスドライバを設計している傾向が強い企業だ。

更に云えば、
仮に同社製GPU搭載マシンであったとしても、少し古いだけで 最適化対象外となる と考えていい。
ツマり、"nVIDIA Optimized" とは、そう云う意味であり、その様な結果しか生まないと云う事だ。
要するに、PCIe Gen.3.x以前の機材環境であれば どのマシンでも、データ転送のタイムアウトが発生しうる現実。
■ そうした原因に因り、
PSO2クライアントアプリケーションがクラッシュ ないし Windows の BSoDを誘発する。

★ それが仮に
Windows側のメモリ管理処理により回避出来た場合でも、
描画演算に必要となるデータの全体がVRAMに届いていない
コトで、表示は破綻したままプレイを継続する必要に迫られる と云うワケだ。
★ 尚、マシンと実行アプリケーションが
DirectX12 に準拠していれば、物理的にも理論上でも この問題は発生しない事になる。
DirectX12 でのメモリ空間は、メインメモリも VRAMも フラッシュストレージ上さえも、
シームレスに扱える仕様となっており、AMDのPolaris世代以降は、それを物理回路で
支援するよう構成されている。
nVIDIAは DirectX12 対応でも、AMDより半導体回路設計レベルで後塵を拝している・・・ また 余計な小細工など してこないコトを 期待したいが(´ヘ`;)
★ また、
◆ 32bitビルドアプリケーションでは、
プログラム中で扱われる変数で格納可能なデータサイズも32bit長となる。
時間処理を多用する PSO2のようなアプリケーションの場合、
1つ1つで扱われる時間が短くても、その領域の確保と破棄が大量発生する事になる。

当然だが、母数が大きくなれば、エラーの発生数も増すと考えて差し支えない。
■ 元々
コンシューマ向けとして投入されてきたWindowsは、メモリー領域管理が WindowsServerに比べて非常に雑だ。
VISTA~7までなら、エディションによっては
WindowsServer2003EnterpriseEdition程度のメモリ管理性能は有していた。

が、

Windows10 になり、一般調達可能なエディション最上位ですら、
WindowsServer2008R2/2012などと比較すると、コンシューマレベルに落ちているとも云える。
◆ そんな物の上で稼働する WOW64・・・
64bitWindows上で 32bitアプリケーションを実行させる為の 補助輪的な枠組
・・・経由では、避けたい処理の1つである。
★ この解消には、実行されるアプリケーション(本ログでは PSO2)の 64bitビルド版配布が妥当であり、待たれる処であると結論出来る。
★ 本ログ内容は、
◆ おきつねさまが、アンケートなどで終始 苦言を呈してきた内容に、寸分違わず準じている。
上述の通り、古い環境は着実に無視する運営スタイルとなってきているにも関わらず、
アーキテクチャの差し替えはしないままだ、この時点で相反する状態を運営自ら作ってしまっている。
★ その様な状態での
相次ぐ 意図的とも受け取れる 誤ったBANの数々・・・ PSO2運営も御多分に漏れず、この様な状況 なのかね?

0 件のコメント:

コメントを投稿