本技术公开了一种基于异构硬件的AI数据处理加速方法,属于数据处理计算技术领域,具体包括:配置API接口,为硬件设置算子信息库,设置MAP操作的算子信息,加载算子信息库和CPU数据处理流水线,提取流水线中的MAP操作建立IR树,遍历IR树,利用算子信息库可策略搜索方法筛选出可迁移节点,对可迁移节点序列化,建立可迁移节点操作序列并转存入树适配器中,根据负载均衡策略和反序列化,将可迁移节点迁移到不同的异构加速硬件中执行,同时利用树适配器删除IR树中的可迁移节点,将更新后的IR树标记为执行树,CPU按照执行树并行执行MAP操作,本发明能够自动有效整合和利用异构硬件资源进行数据处理加速。
背景技术
AI数据处理流程包括数据收集、存储、预处理、模型训练和推理优化等步骤,现有的AI数据处理加速方案多应用于模型训练阶段,采用调参、改良算法等方法提高数据处理效率。在实际数据处理过程中,数据预处理过程需要的工作量可能常常占到总工作量的一半以上,为了提高数据处理速度,目前有图像处理单元GPU、神经处理单元NPU等异构硬件来加速AI运算。
在现有技术中,数据处理部分通常是使用CPU对数据集进行数据加载和预处理,然后将处理后的数据分批输入GPU、NPU或TPU等加速硬件中进行网络计算。
但是随着多模态领域数据规模的增长,现有技术在面对大量数据时,CPU处理速度会存在瓶颈,并且现有的一些技术,例如TensorFlow提供的tf.data.Dataset模块仅在CPU上进行数据预处理,缺乏对异构硬件的固有支持,同时现有技术在多种数据操作和异构硬件之间的协同方面也存在局限性,例如JAX库能够在GPU和TPU上实现加速计算,但是仅支持静态形状的张量操作,并且仅支持特定图像处理操作。因此本发明提出一种基于异构硬件的AI数据处理加速方法,用以解决现有技术存在的问题。
实现思路