依据Nvidia RTX2080TI算力来分析自动驾驶算力需求

        作为一名严谨的工程师,我思考问题更喜欢站在多个角度进行思考、审视。多数情况下,一些草率的同行可能根据直觉就对一些问题给出结论,而我更喜欢在多个层面、角度思考、分析后给出一般性结论。

        由于个人是个硬件发烧友,所以对硬件各个指标都有较深刻了解。2018下半年,Nvidia发布了自称具有划时代意义的显卡核心——RTX2080TI(有趣的一个事情是,之前跟一个小伙伴讨论GTX1080TI时,我说这一代显卡没有强烈兴趣,等GTX2080TI发布了再买吧,他说下一代显卡不应该是GTX1180TI吗,PS:我是直觉去想下一代显卡的名字,但是当我说出答案的时候,再想想原因,大概主要因为时下流行的版本号大战浮夸风吧)。RTX2080TI号称是支持光线实时追踪的,但是毫无疑问画质全开的情况下开启光线实时追踪来玩游戏(5K),游戏体验是惨不忍睹的。然而,我们暂且认定,RTX2080TI,支持1080P分辨率下开启光线实时追踪进行游戏,@60FPS。

        1. 假设自动驾驶需要精准分析的画面分辨率是1920*1080,画面分析频率是120FPS(不要相信24FPS是人眼分辨能力极限,这一类人要么不懂,要么一知半解就出来瞎忽悠,要么就是他们眼睛是24FPS极限,头脑也低于普通人智商极限。如果质疑120FPS的必要性,那么可以去体验最新的iPad Pro),更高的分析频率为更高级别的精准预留足够的可能;

        2. 作为保守派,鄙人认为当前各个厂商自动驾驶测试方案中所作的是远远不够的,最高可靠性的自动驾驶,需要对每一帧画面进行模型识别,标记出各个物体的属性(尺寸、运动方向、颜色、形状、纹理等等),然后转换为3D世界模型,然后追踪画面中的各个物体。假设识别画面计算能力需求是光线实时追踪开启下渲染画面算力需求的10-100倍;

        3. 针对3D世界进行编程,来实现自动驾驶。

        做出如下分析:

        RTX2080TI的光线实时追踪,是支持游戏3D世界内从模型,到3D/2D/2.5D画面的渲染,这个过程是确定性的,运算相对来说比较简单,是beams跟面的反射、折射、衰减运算(平均3-5次数)。运算算力量级,就是光束数目X画面像素数目。而自动无人驾驶里的画面识别(从2D画面,反过来建模成3D世界),是复杂画面下的平面内的指数级复杂度运算:首先画面中边界的识别(人工智能的各种算法,增强算法等),接着要进行边界闭合的填充吧(采集到的画面里,各种算法处理出来的物体边界,未必是闭合的),接着是物体的识别(基于边界,识别出形状,现实世界里的常见物体,都要匹配一遍吧,可以进行优化,但是极端情况下,匹配次数还是很多的),最后是物体的属性识别(按照鄙人对自动驾驶的理解,有一些非关键的东西并不需要第一步去做,比如车上贴了一个“新手上路,再催熄火”标语,这种识别就是非关键的)复杂度非常惊人。这里,估算为20倍于游戏渲染中光线实时追踪的算力需求。

        从60FPS上升到120FPS,又需要一个层次的算力提升。最后大家都知道,如果目标是做成一个1080P@120FPS的自动驾驶系统,那么最终肯定运行不到这个规格。所以需要再次超越一个层次。

        一切考量取中间值,那么最终结论是这样的:真正有意义的自动驾驶系统,需要当前RTX2080Ti至少40倍算力(异构计算,纯粹的GPU计算不行)。如果说理想的无人驾驶系统,至少需要400倍左右的计算能力。

        再次回到成本这一话题:

               1. 40倍算力提升,并发/并行的思路可以解决;

               2. 无人驾驶系统成本如果超过了10万,可能市场就么有那么乐观了;

               3. 技术上,可能仍然需要3-5年改进。

        回到结论。鄙人认为,真正意义上的无人驾驶系统3-5年内会诞生。10年之后,无人驾驶系统会进入发展期。

你可能感兴趣的:(依据Nvidia RTX2080TI算力来分析自动驾驶算力需求)