中間表現
DirectX 9で採用された高水準シェーディング言語であるHLSLのコンパイラ「fxc.exe」はDXBCを出力する。DirectX 12で追加されたシェーダーモデル6.0以降は、新たな中間表現DXILを採用し、LLVM/ClangベースのHLSLコンパイラ「dxc.exe」を使用する。
一方、OpenGLでは長らく中間表現が標準化されておらず、GLSLのシェーダーソースコード文字列をアプリケーションに含めて、ドライバーに毎回API経由で文字列を渡してコンパイルさせる必要があったが、OpenCLやVulkanにおける中間表現としてSPIR/SPIR-V(英語版)が標準化されたことを受けて、OpenGL 4.6でもSPIR-Vのサポートがコア機能として追加された。中間表現形式を採用することで、シェーダープログラムのオフラインコンパイルができるようになるだけでなく、フロントエンドの言語選択に自由度を持たせることができるようになるというメリットもある。Vulkanの公式SDKにはSPIR-Vを出力するオフラインコンパイラとして「glslangValidator」が付属し、GLSLだけでなくHLSLも入力として使用することができるため、Vulkanではシェーダーの記述に必ずしもGLSLを使う必要はなく、HLSLを使うこともできる。
CUDAはNVIDIA製GPU専用のプログラミング環境だが、GPUアーキテクチャに直接依存しないカーネル中間表現としてParallel Thread Execution(PTX)を利用することもできる。