DOTA里NOOB和RT都是什么意思

DOTA里NOOB和RT都是什么意思,第1张

《DotA》(DefenseoftheAncients),可以译作守护古树、守护遗迹、远古遗迹守卫,是由暴雪公司出品即时战略游戏《魔兽争霸3》的一款多人即时对战、自定义地图,可支持10个人同时连线游戏,是暴雪公司官方认可的魔兽争霸的RPG地图。

最早的DOTA地图则在混乱之治时代就出现了,一位叫做Euls的玩家制作了第一张DOTA地图《RoCDOTA》,其中两队都只有总共5个英雄,非常简单。

Euls退出之后有位玩家整合了很多个英雄制作了DotAAllstars。在2005年,601版发布不久,IceFrog同Neichus对地图进行了多次修正和更新

最终游戏分为两个阵营,玩家需要 *** 作英雄,通过摧毁对方遗迹建筑来获取最终胜利。这种多人在线竞技模式后来被称为"Dota类游戏",为之后的多个竞技类游戏产生了深远的影响。

noob(发音是[n(j)u:b],中文网络新手)是一个初学者或新入教者。对任何的特别类型的努力行为,像是一项运动或一种技术是新来者的任何人。

rt_thread_t和rt_thread都是RT-Thread Kernel中的数据类型,它们之间的区别如下:

1 rt_thread_t是线程句柄类型,用于表示一个线程的句柄,线程句柄可以被线程调度器用来选取和调度线程,因此它是线程的唯一标识符。而rt_thread是线程的结构体,用于表示一个线程的具体信息,包括线程的优先级、栈大小、运行时间片等信息。

2 rt_thread_t是一个32位的无符号整数类型,用于表示线程的句柄,它的取值范围为0~。而rt_thread是一个自定义的结构体类型,定义在rt_threadh文件中,用于表示一个线程的具体信息。

3 在RT-Thread Kernel中,线程的 *** 作通常是通过线程句柄来完成的,例如创建线程、等待线程结束、获取线程信息等 *** 作,都需要使用线程句柄。而线程的详细信息,例如优先级、栈大小、运行时间片等,则需要通过线程结构体rt_thread来获取。

TensorRT优化方法主要有以下几种方式,最主要的是前面两种。

如下图左侧是GoogLeNetInception模块的计算图。这个结构中有很多层,在部署模型推理时,这每一层的运算 *** 作都是由GPU完成的,但实际上是GPU通过启动不同的CUDA(Compute unified device architecture)核心来完成计算的,CUDA核心计算张量的速度是很快的,但是往往大量的时间是浪费在CUDA核心的启动和对每一层输入/输出张量的读写 *** 作上面,这造成了内存带宽的瓶颈和GPU资源的浪费。TensorRT通过对层间的横向或纵向合并(合并后的结构称为CBR,意指 convolution, bias, and ReLU layers are fused to form a single layer),使得层的数量大大减少。横向合并可以把卷积、偏置和激活层合并成一个CBR结构,只占用一个CUDA核心。纵向合并可以把结构相同,但是权值不同的层合并成一个更宽的层,也只占用一个CUDA核心。合并之后的计算图(图4右侧)的层次更少了,占用的CUDA核心数也少了,因此整个模型结构会更小,更快,更高效。

大部分深度学习框架在训练神经网络时网络中的张量(Tensor)都是32位浮点数的精度(Full 32-bit precision,FP32),一旦网络训练完成,在部署推理的过程中由于不需要反向传播,完全可以适当降低数据精度,比如降为FP16或INT8的精度。更低的数据精度将会使得内存占用和延迟更低,模型体积更小。INT8只有256个不同的数值,使用INT8来表示 FP32精度的数值,肯定会丢失信息,造成性能下降。不过TensorRT会提供完全自动化的校准(Calibration )过程,会以最好的匹配性能将FP32精度的数据降低为INT8精度,最小化性能损失。

网络模型在推理计算时,是调用GPU的CUDA核进行计算的。TensorRT可以针对不同的算法,不同的网络模型,不同的GPU平台,进行 CUDA核的调整(怎么调整的还不清楚),以保证当前模型在特定平台上以最优性能计算。

TensorRT will pick the implementation from a library of kernels that delivers the best performance for the target GPU, input data size, filter size, tensor layout, batch size and other parameters

在每个tensor的使用期间,TensorRT会为其指定显存,避免显存重复申请,减少内存占用和提高重复使用效率。

Scalable design to process multiple input streams in parallel,这个应该就是GPU底层的优化了

知乎大佬链接

>

以上就是关于DOTA里NOOB和RT都是什么意思全部的内容,包括:DOTA里NOOB和RT都是什么意思、rt_thread_t和rt_thread区别、2020-03-31【Tensor RT】等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9454157.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存