NV何琨:AI视频处理加速引擎及Deepstream介绍( 七 )

接下来是动态的Tensor Memory。做视觉的同学应该都接触过GPU,GPU里边有很多level级的 Memory,Global Memory、Share Memory等,如何把数据从低速度带宽到一个高精度的Memory,这些TensorRT都可以做到。

接下来是多流的执行。GPU最大的特点是并行计算,并行计算一个新的Level,除了不同的多个线程、Block以外,还有不同的Stream,多流的执行可以帮你隐藏数据传输的时间。例如把一个大块数据放到GPU里进行inference时,数据传输时所有的计算核心都需要等待,等待的时间就浪费了,或者GPU的使用率降低。

这个时候我们要把一大块数据切分成不同的小块进行计算。第一块数据在传输的时候,后面所有任务都在等待,当第一块传输完了之后第二块开始传输。与此同时,第一块数据开始计算,就可以把传输时间隐藏在计算时间里了。

大家做一些基于视觉应用时,一个服务器可能要同时开N个实例。比如一个V100,16G Memory,ResNet-50需要1.3GB的GPU Memory。这时一个GPU可以同时开12个实例,每个示例对应一定的摄像头,这样管理这些GPU资源的时候能充分利用。

推荐阅读