有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 小飞飞 于 2020-8-10 16:30 编辑
前言 在过去的几年里,我们目睹了数据的一系列巨大变化,包括数据如何被生成、处理以及进一步利用以获取额外的价值和智能,而这些变化都受到以深度学习和神经网络应用为基础的新兴计算模式所影响。这种深刻的变化始于数据中心,其利用深度学习技术来提供对海量数据的洞察,主要用于分类或识别图像、支持自然语言处理或语音处理,或者理解、生成或成功学习如何玩复杂的策略游戏。这种变化催生了一批专门针对这些类别的问题而设计的高功效计算设备(基于 GP-GPU 和 FPGA),后来还产生了可完全定制的 ASIC,进一步加速并提高了基于深度学习的系统的计算能力。
大数据和快速数据 大数据应用采用专门的 GP-GPU、FPGA 和 ASIC 处理器透过深度学习技术来分析大型数据集,并揭示趋势、模式和关联性,从而实现图像识别、语音识别等功能。因此,大数据是基于过去的信息或常驻在云端的静止数据。大数据分析的一个常用的功能是执行特定任务“训练过的”神经网络,例如识别和标记图像或视频序列中的所有面部,语音识别也展示了神经网络的强大功能。
这种任务最好由专门的引擎(或推理引擎)来执行,这种引擎直接驻留在边缘设备上并由快速数据应用程序(图 1)来引导。通过在边缘设备上处理本地所捕获的数据,快速数据能够利用来自大数据的算法提供实时决策和结果。大数据提供了从“过去发生了什么”到“将来可能会发生什么”所演绎出的洞察(预测分析),而快速数据则提供了能够改善业务决策、运营并减少低效情形的实时行动,所以这一定会影响最终结果。这些方法可以适用于各种边缘和存储设备,例如照相机、智能手机和固态硬盘。
在数据上进行计算 新的工作负载基于两种场景:(1)针对特定工作负载(例如图像或语音识别)训练大型神经网络;以及(2)在边缘设备上应用经过训练的(或“适合的”)神经网络。两种工作负载都需要大规模并行的数据处理,其中包括大矩阵的乘法和卷积。这些计算功能的最佳实施方式需要在大矢量或数据阵列上运行的矢量指令。RISC-V 就是一种非常适合于此类型应用的架构和生态系统,因为它提供了一套由开源软件支持的标准化过程,使得开发人员能够完全自由地采用、修改甚至添加专有矢量指令。图 1 中概述了一些显而易见的 RISC-V 计算架构机会。
移动数据 快速数据和边缘计算的出现产生了一个实际的后果,即:与云端之间来回移动所有数据进行计算分析并不是一件有效率的事。首先,在移动网络和以太网中进行远距离传输时,它涉及到相对较大的数据延迟传输,这对于必须实时操作的图像识别或语音识别应用而言并不是理想的。其次,在边缘设备上进行计算需要更易于伸缩的架构,其中,图像和语音处理或者在 SSD 上进行的内存计算操作都可用一种伸缩的方式来进行。采用这种方式,每一台新增的边缘设备都会带来所需要的增量计算能力,对数据移动方式和时间进行优化是这种架构可伸缩性的一项关键因素。
图 1:大数据、快速数据和 RISC-V 机会
在图 1a 中,云数据中心服务器利用在大型大数据集上训练的深度学习神经网络来执行机器学习的功能。在图 1b 中,边缘设备中的安全摄像机采用经过大数据训练的推理引擎来实时识别图像(快速数据)。在图 1c 中,智能固态硬盘设备采用推理引擎进行数据识别和分类,从而有效地利用了此设备的带宽。图 1 展示了 RISC-V 内核的潜在机会,它可以自由地添加专有的及未来标准化的矢量指令,这些指令对于处理深度学习和推理技术相当有效。
另一个类似且重要的趋势是大数据端和云端上数据的移动及访问方式(图 2)。传统的计算机体系结构(图 2a)采用慢速外围总线,该总线连接到许多其他设备(例如,专用机器学习加速器、图形卡、高速固态硬盘、智能网络控制器,等等)。低速总线会影响设备的利用率,因为它限制了总线本身、主 CPU 以及主要的潜在持久内存之间的通信能力。这些新型计算设备也不可能在它们之间或与主 CPU 共享内存,从而导致在慢速总线上进行徒劳且受限制的数据移动。
关于如何改善不同计算设备(例如 CPU 和计算机及网络加速器)之间的数据移动,以及如何在内存或快速存储中访问数据,出现了几个重要的行业趋势。这些新趋势集中在开放标准化工作上,能够提供更快、更低延迟的串行结构以及更智能的逻辑协议,从而实现对共享内存的一致访问。
新一代以数据为中心的计算 未来的架构将需要部署开放接口,以连接到持久性内存以及接入计算加速器并支持高速缓存一致性的快速总线(例如 TileLink、RapidIO®、OpenCAPI™和 Gen-Z),以期大幅度提高性能,而且使所有设备共享内存并减少不必要的数据移动。
图 2:计算体系结构中的数据移动和访问
在图 2a 中,传统的计算体系结构由于把一条慢速外设总线用于快速存储器及计算加速设备,其能力已达到其极限。在图 2b 中,未来的计算体系结构采用了开放接口,能够为平台上所有的计算资源提供统一并支持高速缓存一致性的访问方式来访问共享持久内存,(这称为以数据为中心的体系结构)。在图 2c 中,所部署的设备能够使用相同的共享内存,从而减少了不必要的数据复制。
CPU 外围核心及网络接口控制器的作用将成为支持数据移动的关键因素。CPU 外围核心组件必须支持密钥内存和永久内存接口(例如 NVDIMM-P),也必须支持驻留在 CPU 附近的内存。还需要实施面向计算加速器、智能网络和远程持久内存的智能快速总线。这种总线上的任何设备(例如 CPU、通用或专用计算加速器、网络适配器、存储器或内存)都可以包含其自己的计算资源并具有访问共享内存的能力(图 2b 和图 2c)。 |