我是做GPU编译器的,说一下GPU编译器需要做的内容。
1.对新的语言特性的支持
例如从dx11到dx12的支持,之前dx的中间语言是dxbc,后来换到了dxil
对vulkan的spirv的支持,
之前还有对opengl的支持,甚至更老的还有对arb的支持。
2.对硬件的支持
GPU的硬件更新了,可能添加了新的指令,有了更高效的指令,编译器需要将源码翻译到新的指令。
或者架构调整,一些细节方面也需要编译器的支持
3.与driver的交互
游戏中会有texture之类的资源贴到模型上,这样我们看到的才是一个真实的物体.
资源在GPU的memory中放置的位置由driver指定,后续会通过GPU指令采样然后加载到模型上,而采样的资源是需要driver事先传递给编译器的。
另外driver也会升级,例如从wddm2.0到wddm3.0
这个过程中driver的架构调整后很可能编译器也要细微的做一些调整。
4.性能调优
实际上GPU编译器是online的,是driver的一部分,只有在游戏运行的时候才会由driver调用编译器去编译shader. 游戏启动的一部分时间是编译器在编译shader。 也因为编译器运行在driver里面,不仅对编译的时间要求高,还对编译编译出的指令要求高。
编译时间是CPU在运行编译程序,所以叫CPU时间。而编译出的指令是运行在GPU上的,所以叫GPU时间。GPU编译的性能指标就是CPU时间加上GPU时间做到最小。
这一点与通常我们用的静态编译器不同,静态编译器可以执行多次优化,但gpu编译器如果执行多次优化会占用过多的CPU时间,但是如果优化的效果不够好,又会导致过多GPU时间。所以如何提升编译器的性能也是一个比较难的问题。
5. 上面的只是对shader语言编译器的支持,如果还用GPU加速AI的话还有对opencl的支持.
实际上CS shader也是用来做计算的。不过大家做计算的好像都用的opencl和cuda。
另外推荐一本很好的体系结构的书籍,作者是2017年体系结构方面的图灵奖得主。建议直接看英文原版的,最新的第六版还没有中文翻译。
梁思申家庭,从剧中的暗示来看,应该是49年之前的上海工商业者。他们家至少他父母这一支还算是爱国的,49年之后并没有跑路而是留了下来,属于政治上靠得住的工商业者,文革之后被国家启用。
这样的家庭基本上在海外都有亲属,改革开放之后才重新联系上,这也是梁思申改革开放之后选择移民国外的原因之一。
梁思申自视甚高,她说自己没有歧视,但宋运辉说得对,她就是歧视了。她确实想促成中国的发展,但另一方面她心里已经内化了西方资本的逻辑,她认为中国要发展,做西方的附庸就是理所应当的。她并不知道,也没想过,为什么重点国企必须由中国掌握控股权的原因,也不在乎,只要她能完成这笔投资,受到老板的表扬,她的价值就实现了。
剧中对梁思申这一路人的小心思写的是很好的。这就是改革开放中华人华侨的真实想法。
她和宋运辉的矛盾,不是谁和谁斗气,或者性格冲突,而是根本立场不同。对梁思申来说,单子能谈成,中国市场开拓出来,她就实现了自己在美国人中的价值;但是对宋运辉,他就必须考虑中国化工几年甚至几十年之后的长远利益,为了这些利益,政治底线是不能退让的。
梁思申说自己受了歧视,实际上和宋运辉说的歧视并不是一回事。梁说的,是她作为美国华人所受到的种族歧视,这种歧视,宋和大部分中国人当然没有体会,也没有理由就要体会。毕竟梁还是要在美国社会混的,宋和大部分中国人不需要。
宋说的歧视,则是西方大公司利用自己的优势地位,并不把中国当做平等的合作伙伴,而是趁机控制中国的经济命脉。这点,梁实际上是不在乎的。毕竟,就算控制了又能怎么样?梁还是吃香的喝辣的,大不了回美国去。
对吉恩一路人来说,梁当然就是个工具。毕竟买办永远也不可能和老板真的平起平坐。
当然,梁思申并不坏,我相信她主观上也是想为中国好的。但是她长期受美国的教育,认为中国处处落后,美国的一定先进,所以自己有先天的权力去决定东海应该如何如何,还自以为是为中国好,实际上就是个二鬼子。
宋运辉也不傻,这点他肯定早就看透了,但是为了合资,一直到吃饭之前都没捅破。宋也一直在和日本还有其他公司联系,该摊牌就摊牌,可见也没有对梁这边报不切实际的希望。
大结局了补充一下:最后两集说明梁的层次还是比宋差远了。她以谈判为要挟,不仅救不了宋,而且会让上级部门更加怀疑宋和梁有不正当的交易。她以为靠自己就能扳动洛达,靠一个洛达就能改变党的组织原则。而她实际上就是个工具人,不可悲么?
最后她和宋的谈话,宋对她是大失所望的。本来吃饭的时候,宋以为她回来投资是为了帮助中国的建设,结果因为她自己的一点私心,说不投就不投了。她看得上的人就行,其他中国人统统不行。我相信随着改革的深入,梁思申这种人如果不改变自己看问题的方式,会走到完全西化派的路子上。