(function() {function signalGooglefcPresent() {if (!window.frames['googlefcPresent']) {if (document.body) {const iframe = document.createElement('iframe'); iframe.style = 'width: 0; height: 0; border: none; z-index: -1000; left: -1000px; top: -1000px;'; iframe.style.display = 'none'; iframe.name = 'googlefcPresent'; document.body.appendChild(iframe);} else {setTimeout(signalGooglefcPresent, 0);}}}signalGooglefcPresent();})();

Daily Archive: 3月 26, 2020

iGPU+dGPUの合わせ技

これがちゃんと機能して性能を見せてくれれば面白いんだが…。

DirectX12 Ultimate

3月19日(現地時間)に、MicrosoftはDirectX 12 Ultimateを発表した。
これはPCとXbox Series XのMultiPlatformに対応する次世代の標準APIとされるもので、現行のDirectX 12との互換性も持っているものになる。
開発者の負担軽減や開発速度向上を期待したものなので、どちらかというと開発者向けのメリットが大きいものと言えるが、これによって今後可能となる事もいろいろあるので、ユーザー側にもいろんなメリットがあると考えられる。
新機能としては、DirectX Raytracing(DXR)がバージョン1.1となり、レイトレーシング機能をより効率的に実装可能になった。GPU Work Creationでのレイトレーシングができるようになり、シェーダがCPUに対して往復で介入することなくレイトレーシングを呼び出せるようになる。これにより、シェーダベースのカリング・並べ替え・分類・改良といった適応型のレイトレーシングに対して有益な処理が可能になる。
また、新しいオブジェクトが見えるような状況で、ストリーミングエンジンが必要に応じて効率的に新しいレイトレーシングシェーダをロードできるようになった。
その他にも出来る事が多数盛り込まれるような改良を内包しているが、そのほとんどがレイトレーシングに関係する内容のものになる。レイトレーシングは今のトレンドでもあるので、この方向に強化されていくのは当然とも言えるが、このDirectX 12 Ultimateの発表に絡んで、Intelから非対象のマルチGPUのコンセプトが明らかにされた。
実はDirectX 12で既にこの機能は利用可能だったようだが、NVIDIAやAMDの反応が鈍く、あまり使われていない機能であるため、改めて取り上げたようである。

非対象のGPUを利用

以前から複数のGPUを組み合わせるNVIDIA SLIやAMD CrossFireといったマルチGPUという機能は存在した。
しかしこれらは、共に同じGPUを複数組み合わせる事が条件であり、複数のGPUで交互にレンダリング等を処理して再生するという構造を採っていた。
今回取り上げられているのは、非対象のマルチGPUなので、同じGPUではなく、異なるGPUでSLIやCrossFireといったような処理を実現する話である。
以前、AMDがAPU+dGPUで非対象のマルチGPUを可能にしていたが、その時はdGPUは比較的ローエンドのGPUに限定されており、iGPUの性能とdGPUの性能が近しい時にしか機能させる事ができなかった。おそらく、処理性能があまりにも違い過ぎて、高性能側のGPUの足を引っ張る傾向があったため、その後廃れていったのだろうと思うが、IntelがGPU分野に力を入れてきた事で、iGPU+dGPUという組合せでGPU処理を効率化しようという動きが活性化したのではないかと考えられる。
業界に新しい流れを作れるか?基本的な考え方としては、iGPUで処理できるであろう軽い処理をiGPUで処理し、重い処理はdGPUに実行させる、という処理をさせようとしているようだが、そうした処理の棲み分けを行う時に発生するオーバーヘッドをどこまで小さく出来るかが、この機能が今後発展していくかを決めるように思える。

Continue reading…

Desktop Version | Switch To Mobile Version