Caching 为什么CPU编译GPU着色器?

Caching 为什么CPU编译GPU着色器?,caching,compilation,shader,gpu,cpu,Caching,Compilation,Shader,Gpu,Cpu,为了全面了解GPU的缓存支持是如何工作的,我阅读了一些信息并理解了以下内容: CPU编译着色器,并将着色器的结果代码传输到GPU以执行,并将其保存到磁盘 如果需要执行相同的着色器,GPU将直接从磁盘获取保存的二进制代码 如果我理解正确,我不明白为什么CPU每次都编译着色器 除非着色器在运行前(即开发期间)未编译,否则并非所有GPU都使用相同的指令集。磁盘上只有二进制文件意味着可以与该软件一起使用的GPU架构集将永远固定。谢谢,这是否意味着着色器的编译代码是中间代码(例如java字节码)?谢谢,我

为了全面了解GPU的缓存支持是如何工作的,我阅读了一些信息并理解了以下内容:

CPU编译着色器,并将着色器的结果代码传输到GPU以执行,并将其保存到磁盘

如果需要执行相同的着色器,GPU将直接从磁盘获取保存的二进制代码

如果我理解正确,我不明白为什么CPU每次都编译着色器


除非着色器在运行前(即开发期间)未编译,否则并非所有GPU都使用相同的指令集。磁盘上只有二进制文件意味着可以与该软件一起使用的GPU架构集将永远固定。

谢谢,这是否意味着着色器的编译代码是中间代码(例如java字节码)?谢谢,我只是不理解CPU为特定GPU编译着色器这一点,现在我知道了