GPU最適化:シェーダ実行の高速化手法
受講スキル
GPU上の描画コードや演算コードを高速化したい方。 GPUで動くプログラムを書いた経験のある方。
受講者が得られるであろう知見
GPU処理の高速化のヒントが得られます。高速化にはある程度パターンがあり、そのパターンに沿って考えることで手法が考えやすくなります。
セッションの内容
2016年の「GPU最適化入門」に続く話として、GPUの最適化の中でも多くを占めるシェーダー実行時間の高速化について、解析方法、対策方法を説明します。
まず実行時間中から最適化対象を選択する手順をざっと説明しますが、これは先のセッションで紹介されている内容なので軽く触れる程度とします。
多くのケースでPSまたはCSが長時間実行される描画パスが問題になりますので、そのパスについて何がボトルネックを特定します。その後、各ボトルネック要因別に、対策方法の考え方、対策方法例を具体的に示します。
講演資料
CEDEC2019_最適化の考え方_Cedil提出版.pptx
※資料のダウンロードには ログイン が必要です。
講演者プロフィール
プロフィール
PlayStation®3でCELLプロセッサ上で各種コードの最適化や、GPUとの連係動作のサンプル作成を担当。
PlayStation®4ではGraphics担当として、GPUの性能確認と性能向上のための設定方法、よりよい使い方の研究を行っております。
《講演者からのメッセージ》
初めて物理シミュレーションの最適化を担当した時には、どこから手を付けていいのか途方に暮れた覚えがあります。
それから試行錯誤しながら最適化を行ってきましたが、だいたいパターンにはまることが分かってきましたので、当時の自分が知っていたら役に立ちそうな話をまとめたいと思います。
GPU上のシェーダーコードを題材に、どう最適化を考えたらいいかを紹介していきます。