开发者
资源

多设备编程总述

多设备编程使用户能够利用多个NPU(Neural-Network Processing Unit)的综合性能和内存等资源,实现超越单个NPU的性能水平。通常,每个物理NPU在Runtime编程界面中被抽象为一个Device,任务下发时需要有Device中的Context进行支撑,因此多设备编程需要管理多个Device及其相应的Context。

一些常见的多NPU编程方法包括:

  • 单个主机线程驱动多个NPU。
  • 多个主机线程,每个线程驱动自己的NPU。
  • 多个单线程主机进程,每个进程驱动自己的NPU。
  • 多个主机进程,每个进程包含多个线程,每个线程驱动自己的NPU。