创作

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

腾讯广告视频抽帧的全流程GPU加速

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-05-20 15:19 次阅读

案例简介

腾讯广告的开发人员改进了视频抽帧的实现方式,使得全流程的操作均在 GPU 上完成,取代了原有的 CPU 抽帧流程,提高了性能,并降低了成本。

本案例涉及 GPU 加速的视频解码与图像处理

线上测试集显示,单个 GPU 的视频解码算力与 8 个 CPU 核大致相当

GPU 做图像处理比 CPU 更有性能和成本优势,尤其与 GPU 视频解码联合使用时

本案例使用了 NVIDIA T4 GPU 以及相关软件

客户简介及应用背景

视频已成为内容和广告的主要媒介形式,但目前的视频内容理解或审核等 AI 能力,主流依然是先抽帧,再基于图像帧做特征提取和预测。

腾讯广告部门日常处理大量的视频信息,而抽帧是视频分析的第一步。抽帧由于步骤多、计算重,在视频 AI 推理场景很容易成为性能瓶颈。

客户挑战

在腾讯广告的流量中,视频所占比例逐年快速提升,视频抽帧这里如果出现时耗或吞吐瓶颈(特别是针对高 FPS 抽帧的情况),很容易影响到后续的特征提取以及模型预测性能。在当前的广告视频 AI 推理服务中,抽帧往往占据了其中大部分时耗,因此,视频抽帧的性能对于视频内容理解服务的时耗和整体资源开销,有着举足轻重的地位。

视频抽帧的几个步骤,计算量非常大,传统的 CPU 方式抽帧往往受限于 CPU 整体的计算吞吐,很难满足低时延高性能要求。因此,使用 GPU 加速等手段,来对视频抽帧做极致的性能优化是必然。

应用方案

NVIDIA GPU 具备单独的硬件编解码计算单元,从早期发布的 Maxwell 架构到最新的 Ampere 架构,都有完善的 API 支持,并且 GPU 上为数众多的 CUDA 核心也特别适用于图像数据并行处理加速。目前广泛使用的推理芯片 NVIDIA T4 GPU,包含两个独立于 CUDA 的解码单元,且支持大部分主流的视频格式,是本案例的应用型号。

视频抽帧流程大体上包括以下几个步骤:视频解码、帧色彩空间转换、落盘方式的 JPEG 编码,如果非落盘,则对解码出来的视频帧做预处理,然后交给模型进行特征提取或预测。

pYYBAGKHQP-AWWX1AAARfk7pCwU836.png

其中帧色彩空间转换、JPEG 编码都涉及像素级别计算,非常适合使用 GPU CUDA kernel 来做并行计算加速。此外,视频解码后得到的帧都是未经压缩的原始数据,数据量很大,如果解码是在 CPU 上进行,或者 GPU 解码后自动传回了 CPU,则需要频繁做 device(显存)与 host(主存)之间的原始帧数据来回拷贝,IO 时耗长且数据带宽拥塞,导致时延明显增加。 因此,该方案的主要目标是尽可能减少 host 与 device 间的数据 IO 交换,做到抽帧过程全流程 GPU 异构计算,充分利用 NVIDIA GPU 自带的硬件解码单元 NVDEC,最大限度减少视频解码对于 CPU 以及 GPU CUDA 核心占用的同时,尽可能低延时、高吞吐地处理视频抽帧以及后续的模型推理。

具体来说,本方案主要从计算和 IO 两个方面着手,解码部分充分利用了 GPU 通常闲置的 NVDEC 解码器,其他步骤以像素或像素块计算为主,因此使用 CUDA kernel 做并行加速。IO 方面,由于中间过程是原始帧,GPU 数据带宽有限,该方案实现了全流程 CPU 和 GPU 无帧数据交换,最大程度提升性能和吞吐,确保视频 AI 推理服务的 GPU 利用率。

计算优化

1. 硬解码

当前线上主力的 GPU 推理卡 T4、P40,以及后续即将升级的 A 系列,主流的视频编码格式基本都已支持,各卡型支持的具体格式如下:

poYBAGKHQQKATJDxAABlI8RdKQs293.png

调用 GPU 硬解码主要有两种方式,一种是直接使用 NVIDIA 官方提供的 Video Codec SDK,另一种方式是使用 FFmpeg,其已经封装了对 GPU 硬解码的支持。考虑到目前 T4 GPU 对视频格式的支持还不够完善,因此本文使用的是 FFmpeg 方式,如果遇到 GPU 不支持的视频格式,只需修改解码器类型即可快速降级到 CPU 解码方案,CPU 和 GPU 两种模式抽帧的代码逻辑也较为统一。

以下分别以 FFmpeg CPU 4、8、16 线程,以及 GPU 硬解码方式,抽取线上 100 个广告视频做离线测试,平均时耗对比如下(CPU 为 2020 年发布的主流服务器 CPU):

pYYBAGKHQQWAXmdrAABYkAdPLCk456.png

注:视频平均大小约 15M,平均时长 26s,大部分为 720P 视频;FFmpeg 建议最大解码线程数 16

分配给 GPU 模型推理服务的 CPU 核数一般不会太多,因此以 FFmpeg 8 线程、2 worker(在本文中是指单进程多实例的方式)做性能压测,1000 个广告视频测试数据如下:

poYBAGKHQQeAbXL2AAB_4PM_CJg625.png

由此可见,在 GPU 线上推理环境,如果充分利用 T4 GPU 2 个 NVDEC 硬件解码模块,可在几乎不影响线上服务 CPU、CUDA 原有 workloads 计算的情况下,额外增加一倍解码算力,抽帧 QPS 可在原有基础上翻倍。此处应注意,不同架构 GPU 所附带的 NVDEC 硬解模块数不同,并且 NVDEC 不支持外部再用多线程操作解码,应当根据 NVDEC 模块数选择正确的多实例多 worker 进行解码。例如 T4 GPU 有 2 个 NVDEC 硬解码模块,如果只用单实例,则硬解模块利用率将不会超过 50%。如果服务对吞吐的要求高于时延,则此处 GPU 硬解码的 worker 数可以设为大于 n,充分压榨硬件解码模块。

2. CUDA 色彩空间转换

视频解码后得到的帧为 YUV 格式,而通常模型预测或其他后续处理一般需要 RGB/BGR 像素格式,因此需要做一次色彩空间转换,将 YUV 帧转换为模型需要的 RGB 格式。传统方式是调用 FFmpeg 的 swscale 模块来实现,但是该方式只支持在 CPU 进行计算,需要做一次 device 到 host 的数据 IO,并且非常消耗 CPU 资源,计算并行度也不高。统计发现,swscale 计算耗时占比接近 40%。

YUV 到 RGB 格式的转换是 3×3 的常量矩阵与 YUV 三维向量相乘,即逐像素地将明度 Y、色度 U、浓度 V 三个分量按公式线性变换为 R、G、B 三色值(这里的常量矩阵的值取决于视频所采用的颜色标准,比如 BT.601/BT.709/BT.2020,可参见 Video Codec SDK 里面的示例),因此可以很方便地将计算过程改为一维或二维线程块的 CUDA kernel 调用,充分利用 GPU 数以千记的 CUDA 核心并行计算来做提速。

**性能:**对线上 100 个广告视频做性能对比评测,CUDA kernel 调用相对于 CPU 的 swscale 方式平均提速在 20 倍以上,并且视频清晰度越高,优势越明显。

poYBAGKHQQiAPElQAABi3luX8lQ330.png

3. CUDA JPEG 编码

如果是在视频预处理等场景,则需要对抽帧结果做 JPEG 编码后再落盘保存。JPEG 编码具体流程如下:

poYBAGKHQQqATdHWAAB5XJLieO8142.png

虽然不同于色彩空间转换的逐像素操作,但也是将整张图片划分为 8×8 像素的小分块分别进行离散余弦变换、量化、Huffman 编码等处理,同样非常适合用 GPU CUDA core 计算单元来做并行加速。NVIDIA 从 CUDA Toolkit 10 开始也已经封装了 nvJPEG 模块提供 JPEG 编码能力。

需要说明的是,使用 GPU 做 JPEG 编码,与 CPU JPEG 编码存在一定比例的像素差异。确保 JPEG 文件头中各项参数一致的情况下(压缩质量、量化表、Huffman 表均相同),实测像素差异比在 0.5% 左右。由于 JPEG 编码为有损压缩,因此解码后依然存在像素差异,有可能导致模型给出的预测结果存在偏差。例如 OCR 的目标检测模块,分别使用 CPU 和 GPU 编码的 JPEG 图像作为输入,预测得到的检测框坐标值在部分 case 上存在一定偏差,从而有概率导致文字识别结果出现不一致。一种可行的解决方案,是模型训练也使用 GPU JPEG 编码的图片作为输入,保证模型训练和推理的输入一致性,从而确保模型推理效果。

**性能:**实测线上 1000 个广告视频,CUDA 方式 JPEG 编码约有 15~20 倍性能提升,同样清晰度越高性能优势越大:

pYYBAGKHQQuAK0NPAABs-Cws5wQ730.png

IO优化

FFmpeg 使用 GPU 硬解码后,得到的视频帧格式为 AV_PIX_FMT_NV12,通过 NVIDIA 提供的 cudaPointerGetAttributes API 做指针类型检查,为 Host 端内存指针。也就是说调用 NVDEC 模块解码后,默认对视频帧做了一次 device 到 host 的传输。

由于这里的视频帧均为未压缩的原始像素帧,且原始视频的所有 FPS 帧都会做该处理,会占用大量 GPU 与 host 端内存的数据带宽。若有办法做到 GPU 硬解后的视频帧,不默认传回到 host 端,而是直接缓存在显存等待后续计算,则可以无缝对接后续的模型推理或 JPEG 落盘,省去 device 与 host 端的来回两次数据交换时耗,且大幅减轻 GPU 与 CPU 间的数据 IO 吞吐压力。

为此,可使用 FFmpeg 的 hwdevice 相关接口,直接得到显存中的视频帧。这样得到的视频帧格式变为 AV_PIX_FMT_CUDA,且 Y 和 UV plane 的 data linesize 也由 1088 变为 1280,使用时需要注意。此时使用 cudaPointerGetAttributes 检查 frame data 指针类型,已经是 device 端指针,由此打通了全流程异构抽帧的关键一环。

通过 NVIDIA Nsight Systems 抓取到的性能数据可见,cudaMemcpy 由之前的 DtoH & HtoD 来回传输变为一次显存内部的 DtoD,时耗由 173ms x 2 变为 25ms,吞吐也有不少提升。此外,CUDA kernel 计算时间片的连续性也得到不少改善。

**性能:**实测线上 1000 个广告视频,整体性能相较于非硬件缓冲区方式有 25% 左右的提升,GPU 硬解码器 NVDEC 资源利用率提升约 30%。

poYBAGKHQQuAcnfjAACmhcLa1Ok195.png

工程优化

本文以介绍 GPU 全流程抽帧方案为主,过程中为了把性能做到极致也涉及到一些工程优化:

通过显存预分配+复用、AVHWDeviceContext 缓冲区 & JPEG 编码器复用等手段,单次抽帧时耗可再优化百 ms 级别。

将 NVDEC 硬解码、色彩空间转换、JPEG 编码、模型推理等步骤,利用 CUDA 多流,并对每个环节做 Pipeline overlap 并行化处理,可充分释放每个步骤的最大计算性能,进一步提升计算吞吐和资源利用率。

poYBAGKHQQ2ATTGSAABRg-YNdOw164.png

目前有不少算法服务是基于 Python 进行开发&部署,本方案为保障高性能,使用 C++ 开发。通过 pybind11 基于 C++ 封装 Python 抽帧 API,保障算法开发部署的灵活性与效率的同时,确保高性能的抽帧能力。

不落盘方式,对接模型推理之前一般需要先做预处理操作,如果要做到全流程 GPU,需要将预处理改写为 CUDA kernel 调用。这里可以将常用的 CV 类预处理操作封装为 CUDA 基础函数库,也可以使用 NVIDIA 已经封装好的 NPP 模块、DALI 预处理加速框架等方案。

使用效果及影响

全流程时耗对比:

相较于 CPU 8 线程解码,全流程有一倍左右的速度优势,并且由于几乎不占用 PCIe 数据带宽,对模型推理等 device&host 间数据 IO 基本无影响,在吞吐上也有不少提升。

相较于 Python 算法常用的 ffmpeg-python 方式,有数倍性能提升。

pYYBAGKHQQ2AVQzCAABAXflDiCg610.png

视频抽帧优化是视频 AI 推理优化中的重要一环,本方案从 GPU 硬件加速的角度出发,分别针对抽帧各步骤做性能分析&计算优化,解决了中间过程大数据量的原始视频帧 host 与 device 端数据 IO 交换问题,避免 GPU 与 CPU 间的 PCI-E 数据带宽瓶颈,真正做到全流程 GPU 异构抽帧。基于此,可在 GPU 无缝对接后续的模型推理(不落盘)以及 JPEG 编码(落盘)两种主流的抽帧使用场景,是实现全流程 GPU 视频 AI 推理能力的先决条件。同时,充分利用了 GPU 推理环境通常闲置的 NVDEC 解码芯片,对于整体服务时耗、吞吐,以及硬件资源利用率均有不错的提升,降低了视频 AI 推理服务 GPU/CPU 算力成本,在算力紧缺的 AI2.0 时代有着非常重要的意义。

目前该方案已在腾讯广告多媒体 AI 的视频人脸服务落地,解决了其最主要的抽帧性能瓶颈,满足广告流水对于服务的性能要求。更多视频 AI 算法,特别是高 FPS 抽帧场景也在逐步接入优化中。

“目前该方案已在腾讯广告多媒体 AI 的视频人脸服务落地,解决了其最主要的抽帧性能瓶颈,满足广告流水实时处理对于服务的性能要求。更多腾讯内部视频 AI 算法,特别是高 FPS 抽帧场景也在逐步接入优化中。后续,我们还将与英伟达一起,探索视频抽帧与模型推理的最佳结合方式,力求实现视频AI推理的极致性能。”

向乾彪,腾讯广告AI工程架构师,GPU视频抽帧项目负责人

审核编辑:郭婷

  • cpu
    cpu
    +关注

    关注

    68

    文章

    6824

    浏览量

    193453
  • gpu
    gpu
    +关注

    关注

    27

    文章

    2760

    浏览量

    114984
  • AI
    AI
    +关注

    关注

    85

    文章

    20134

    浏览量

    235681
收藏 人收藏

    评论

    相关推荐

    华为强劲AI推理能力助力云天励飞AI算法服务平台性能实现翻倍提升

    2022年5月,基于昇腾AI,云天励飞的深智-AI算法服务平台解决方案与华为Atlas 300I P....
    的头像 华为计算 发表于 07-05 11:11 10次 阅读

    浪潮NF5468A5系统解析

    NF5468A5支持4个电源模组,可以提供1600W~3000W功率的80 PLUS铂金电源模块,效....
    的头像 智能计算芯世界 发表于 07-05 11:06 6次 阅读

    CPU、MPU、MCU和SOC之间的特点和区别

    MPU是Micro Processor Unit的缩写,指微处理器(这里要注意不是微控制器,很多人会....
    的头像 硬件笔记本 发表于 07-05 10:50 11次 阅读

    Think Silicon和RISC-V GPU即将爆发

    无论是业界动态还是RISC-V国际组织相关人员的公开发言,RISC-V都是一款全方位挑战ARM架构的....
    的头像 电子发烧友网 发表于 07-05 10:30 42次 阅读

    宏观算力建设实现芯片规模化

    有的算力芯片,可能可以做到性能狂飙,但较少考虑芯片的通用性易用性,然后芯片销量不高落地规模小,那就无....
    的头像 Imagination Tech 发表于 07-05 10:20 47次 阅读

    算力由性能、规模和利用率三部分组成

    有的算力芯片,可能可以做到性能狂飙,但较少考虑芯片的通用性易用性,然后芯片销量不高落地规模小,那就无....
    的头像 Imagination Tech 发表于 07-05 10:18 13次 阅读

    贸泽开售面向AI视觉IoT应用的Renesas RZ/V2L高精度MPU

    2022年7月4日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 分销商贸泽电子....
    发表于 07-05 10:15 23次 阅读
    贸泽开售面向AI视觉IoT应用的Renesas RZ/V2L高精度MPU

    嵌入式系统检测问题并减轻故障影响

      最重要的是,每个嵌入式系统都是不同的,这就是让这个行业的工作变得有趣的原因。结果是每个设备的自检....
    的头像 星星科技指导员 发表于 07-05 10:11 15次 阅读

    请问使用ROC-RK3308-CC的cpu温度高吗?

    请问使用ROC-RK3308-CC 的cpu温度高吗?一般正常上电后,跑自带的系统时候CPU的温度大概多少啊? ...
    发表于 07-05 09:40 28次 阅读

    为什么反向设计值得研究呢?

    因为实现同样的功能很容易,但是,实现同样的性能很难。有的公司做出的CPU在落后一代工艺的情况下,依然....
    的头像 芯片逆向 发表于 07-05 09:35 100次 阅读

    AI技术日趋成熟,开始走进千行百业

    (文/程文智)提到AI,人们最先想到的可能是相机的美颜功能,其实如今的AI技术可以说不仅已经渗透到人....
    的头像 荷叶塘 发表于 07-05 09:22 212次 阅读
    AI技术日趋成熟,开始走进千行百业

    NVIDIA Merlin GPU推荐系统加速大模型训练和推理

    暌违两年,NVIDIA Merlin 推荐系统公开课将于 7 月 5 日全面上新。本次公开课将由 N....
    的头像 NVIDIA英伟达 发表于 07-05 09:02 86次 阅读

    火山引擎机器学习平台与NVIDIA加深合作

    随着 AI 在医疗健康和生命科学领域应用的不断增加,GPU 算力的需求迅猛增长。火山引擎机器学习平台....
    的头像 NVIDIA英伟达 发表于 07-05 08:59 117次 阅读

    RISC-V GPU离产业爆发仅一步之遥?

    电子发烧友网报道(文/吴子鹏)近日,在德国纽伦堡举行的 Embedded World 2022 大会....
    的头像 Felix分析 发表于 07-05 07:06 236次 阅读
    RISC-V GPU离产业爆发仅一步之遥?

    服务器为什么配大带宽会更好

    香港服务器为什么配大带宽更好?如今很多站长都会倾向于租用香港大带宽服务器,很明显,大带宽服务器的优势....
    的头像 深圳_SEO_青春聆听log 发表于 07-04 16:48 110次 阅读

    改变设计价值观的人工智能机器人原理

    谈到人工智能,它立即被描述为人类的替代品。但真的是这样吗?虽然毫无疑问,人工智能将改变设计框架,但这....
    的头像 格物斯坦机器人 发表于 07-04 16:48 221次 阅读

    WTK6900H语音识别芯片的简单介绍

    智能家居相信小伙伴们都不陌生,通过AI的语音识别技术,让机器也能听懂人类说话,并且通过命令词执行各种....
    的头像 唯创知音电子 发表于 07-04 14:22 111次 阅读

    什么是嵌入式机器人及如何使用它们

      人工智能正在为聊天机器人技术注入新的活力。NLP 等工具允许企业使用聊天机器人来改进支持操作并满....
    的头像 星星科技指导员 发表于 07-04 11:03 64次 阅读

    PT8M2301A可多次编程A/D型8位MCU概述及特性

    PT8M2301A 是一款可多次编程(MTP)A/D 型 8 位 MCU,其包括 2K*16bit ....
    的头像 batai 发表于 07-04 10:38 52次 阅读
    PT8M2301A可多次编程A/D型8位MCU概述及特性

    视觉AI开发面向不同领域的应用技术

    电子发烧友网报道(文/李弯弯)视觉AI是人工智能一个子领域,一般也称为计算机视觉,主要方向为模式识别....
    发表于 07-04 10:26 103次 阅读

    芯动科技风华系列GPU与中望CAD Linux版软件完成兼容性认证

    近日,芯动科技自主研发的风华系列GPU与中望CAD Linux版软件完成兼容性认证,综合性能优越,共....
    的头像 芯动科技Innosilicon 发表于 07-04 10:02 62次 阅读

    MOS 6510/8500 CPU适配器开源分享

    电子发烧友网站提供《MOS 6510/8500 CPU适配器开源分享.zip》资料免费下载
    发表于 07-04 09:47 4次 阅读
    MOS 6510/8500 CPU适配器开源分享

    开放式编程模型为开发人员创建中间地带

      此外,Acoran 编程模型在优化的、特定领域的库中分层,允许开发人员在特定于设备的优化例程之上....
    的头像 星星科技指导员 发表于 07-04 09:27 74次 阅读
    开放式编程模型为开发人员创建中间地带

    嵌入式Linux调试变得更容易

    在评估用户空间性能时,跟踪工具可以更加强大。像大多数嵌入式软件开发人员一样,我开发针对 Linux ....
    的头像 星星科技指导员 发表于 07-04 09:15 79次 阅读
    嵌入式Linux调试变得更容易

    AI产业链中主要的视觉算法企业

    电子发烧友网报道(文/李弯弯)视觉AI是人工智能一个子领域,一般也称为计算机视觉,主要方向为模式识别....
    的头像 Carol Li 发表于 07-04 08:43 534次 阅读
    AI产业链中主要的视觉算法企业

    SPDK Thread模型设计与实现 NVMe-oF的使用案例

    SPDK Thread 模型是SPDK诞生以来十分重要的模块,它的设计确保了spdk应用的无锁化编程....
    的头像 FPGA之家 发表于 07-03 16:20 231次 阅读

    OpenVINO加速多领域AI产业创新发展

    近日,由英特尔举办的2022 OpenVINO DevCon·中国站线上峰会成功落下帷幕。在此次峰会....
    的头像 英特尔中国 发表于 07-03 14:35 341次 阅读

    NVIDIA提供用于AI训练的合成数据生成工具

    提供合成数据生成工具和服务的企业以及开发者现在可以使用 Omniverse Replicator S....
    的头像 NVIDIA英伟达企业解决方案 发表于 07-03 10:06 111次 阅读

    NVIDIA研究人员创建可以疏通计算机网络拥堵的AI模型

    NVIDIA 研究人员创建了可以疏通计算机网络拥堵的 AI 模型,该模型很快就会出现在大众附近的数据....
    的头像 NVIDIA英伟达 发表于 07-03 10:04 110次 阅读

    利用AI技术加强视频内容创作和传播

    芬兰的 MTV Oy 采用由 NVIDIA 技术驱动的 Valossa AI 解决方案自动分析视频内....
    的头像 NVIDIA英伟达 发表于 07-03 09:59 157次 阅读

    广电五舟与华为基于昇腾AI基础软硬件平台打造联合解决方案

    2022年7月1日,广电五舟与华为在广州正式举行“整机伙伴合作协议”签约仪式暨“华为昇腾万里伙伴”授....
    的头像 华为计算 发表于 07-03 09:32 160次 阅读

    智洋创新正式加入华为昇腾万里合作伙伴计划

    2022年6月30日,智洋创新与华为在淄博签署合作协议,正式加入昇腾万里合作伙伴计划。
    的头像 华为计算 发表于 07-03 09:30 180次 阅读

    如何释放可信赖人工智能的最大价值

    IBM商业价值研究院(IBV)研究表明,消费者、公民和员工将人工智能视为帮助解决人类面临的最紧迫挑战....
    的头像 IBM中国 发表于 07-01 17:56 358次 阅读

    维智科技助力品牌营销数智化全面转型升级

    中国领先的产业数字化研究与咨询机构爱分析发布了《2022国央企数字化厂商全景报告》,维智科技凭借出色....
    的头像 WAYZ维智 发表于 07-01 17:53 334次 阅读

    如何使用华为云EI产品开发作品

    AI开发平台ModelArts:面向开发者的一站式AI开发平台,提供海量数据预处理、智能标注、大规模....
    的头像 华为开发者社区 发表于 07-01 16:51 197次 阅读

    华为云正式发布初创计划 实现业务转型升级

    创业者是实践创新的实践者与探索者,是推动社会进步与发展的有生力量。
    的头像 华为开发者社区 发表于 07-01 15:09 146次 阅读

    在开发平台上使用VITIS AI加速AI应用

    在运行量化器时,我们可以使用更大的校准图像、迭代和检测来调整输出,视频输入的准确率约为 96%。我们....
    的头像 星星科技指导员 发表于 07-01 14:24 113次 阅读
    在开发平台上使用VITIS AI加速AI应用

    西门子携手英伟达打造工业元宇宙

    嵌入工业虚拟世界中的逼真的、基于物理的数字双胞胎提供了巨大的潜力,通过提供一个人们可以互动和协作解决....
    发表于 07-01 11:53 415次 阅读

    华为云推出高校圈层活动品牌HCSD 共创共享共赢生态体系

    本次活动由华为云计算公司主办,华为(厦⻔)开发者创新应⽤中⼼、厦⻔⼤学信息学院联合举办,旨在携华为云....
    的头像 华为开发者社区 发表于 07-01 11:47 268次 阅读

    NVIDIA NGC目录中的GPU优化容器

    借助 NVIDIA NGC 目录中的 GPU 优化容器,更快地开发和部署应用。
    的头像 NVIDIA英伟达企业解决方案 发表于 07-01 11:21 173次 阅读

    NVIDIA Isaac Sim 2022.1版本的亮点及功能

    NVIDIA 宣布推出2022.1 版 NVIDIA Isaac Sim。作为一种机器人仿真和合成数....
    的头像 NVIDIA英伟达企业解决方案 发表于 07-01 11:19 194次 阅读

    计算机视觉与AI技术企业虹软科技发布2022第一季度报告

    计算机视觉与AI技术企业虹软科技股份有限公司发布2022第一季度报告,具体内容如下。 一、 主要财务....
    的头像 汽车玩家 发表于 07-01 11:08 333次 阅读

    NVIDIA AI平台在MLPerf基准测试实现飞跃

    NVIDIA AI 仍是唯一能够运行 MLPerf 行业基准测试中所有测试的平台, A100 GPU....
    的头像 NVIDIA英伟达企业解决方案 发表于 07-01 10:52 156次 阅读

    如何用Go重写Node.js服务

    Hasura Storage 是一项开源服务,在 hasura 和任何 s3 兼容的存储服务之上增加....
    的头像 马哥Linux运维 发表于 07-01 10:51 125次 阅读

    MIT的SpAtten架构将注意力机制用于高级NLP

      通用的 AI 加速器、GPU、TPU 和 NPU 即使支持高计算能力也无法实现这些技术,因为这些....
    的头像 星星科技指导员 发表于 07-01 10:43 151次 阅读

    模型有助于实现最大的运营效率

      为了推动行动或结果,非结构化数据通过 DeepStream 等处理模型运行,从而产生结构化数据。....
    的头像 星星科技指导员 发表于 07-01 10:29 180次 阅读

    使用OpenAMP多核框架来满足控制和通信要求

      该框架的一个实例在每个核心上运行。使用Remoteproc提供生命周期管理,其中一个核心被指定为....
    的头像 星星科技指导员 发表于 07-01 10:04 138次 阅读
    使用OpenAMP多核框架来满足控制和通信要求

    带有AT89S52多用途的CPU设计

    描述 多用途 CPU,带 AT89S52 (SMD) 该 CPU 设计用于 7 段 SMD 显示器,具有串行控制。它有一个用于编程的 I...
    发表于 07-01 09:40 2373次 阅读

    小白求助AMD跟ARM有什么关系

    据我所知,两者是没什么关系的, 一个是美国的桌面级CPU生产商, 一个是英国移动平台CPU芯片生产商。 但那天在网上看到...
    发表于 06-30 18:02 3080次 阅读

    ARM芯片是小端还是大端

    ARM芯片是小端还是大端?哪位大佬知道,能否给说明一下。ARM大小端格式是由编译器决定?还是CPU决定? ...
    发表于 06-30 17:59 3471次 阅读

    主要演示BL702/704/706系列mcu低功耗性能

    1、主要演示BL702/704/706系列mcu低功耗性能 低功耗模式: Running : Running 为 CPU 正常运行时的功耗,由客户应用代码...
    发表于 06-28 18:19 5659次 阅读

    更改CPU调度程序和优先级的教程

    描述 更改CPU调度程序和优先级 ...
    发表于 06-28 07:45 61次 阅读

    一个简单的MOS 6510/8500 CPU适配器

    描述 MOS 6510/8500 CPU 适配器 一个简单的适配器,用于连接来自 CPU 的 A5-A8 和 RW 信号,用于 ARM2SID...
    发表于 06-28 07:14 87次 阅读

    学习一下LVGL的款式

    按照官网学习顺序,下学一下LVGL的款式。 先看lv_example_style_1()。代码如下,稍作修改: void lv_example_style_1(void...
    发表于 06-27 11:32 882次 阅读

    香橙派RK3399开发板OrangePi4 LTS在linux上的GPU测试说明

    1、Linux4.4 和 Linux5.10 Debian 系统 GPU 的测试说明 注意,Linux4.4 Debian10 和 Linux5.10 Debian11 系统使用的...
    发表于 06-22 20:17 1505次 阅读
    香橙派RK3399开发板OrangePi4 LTS在linux上的GPU测试说明

    基于RK3399 CPU上电后加载程序的流程介绍

    1、CPU上电后加载程序的流程 芯片上电解复位之后执行的第一段程序,在芯片中称之为Bootrom loader。这部分程序在芯片制造过...
    发表于 06-21 15:28 2728次 阅读

    TMS320VC5501 定点数字信号处理器

    TMS320VC5501(5501)定点数字信号处理器(DSP)基于TMS320C55x™DSP生成CPU处理器内核。 C55x™DSP架构通过增加并行性和全面关注降低功耗来实现高性能和低功耗。 CPU支持内部总线结构,该结构由一个程序总线,三个数据读总线,两个数据写总线以及专用于外设和DMA活动的附加总线组成。这些总线能够在一个周期内执行最多三次数据读取和两次数据写入。并行,DMA控制器可以独立于CPU活动执行数据传输。 C55x™CPU提供两个乘法累加(MAC)单元,每个单元能够进行17位×17位乘法运算。单循环。额外的16位ALU支持中央40位算术/逻辑单元(ALU)。 ALU的使用受指令集控制,提供优化并行活动和功耗的能力。这些资源在C55x CPU的地址单元(AU)和数据单元(DU)中进行管理。 C55x DSP代支持可变字节宽度指令集,以提高代码密度。指令单元(IU)从内部或外部存储器执行32位程序提取,并为程序单元(PU)排队指令。程序单元解码指令,将任务指向AU和DU资源,并管理完全受保护的管道。预测分支功能可避免执行条件指令时的管道刷新。 5501外设...
    发表于 10-09 14:55 508次 阅读
    TMS320VC5501 定点数字信号处理器