下载
中文
注册

原理介绍

AscendCL提供以下几种同步机制:

  • Event的同步等待:调用aclrtSynchronizeEvent接口,阻塞应用程序运行,等待Event完成。
  • Stream内任务的同步等待:调用aclrtSynchronizeStream接口,阻塞应用程序运行,直到指定Stream中的所有任务都完成。
  • Stream间任务的同步等待:调用aclrtStreamWaitEvent接口,阻塞指定Stream的运行,直到指定的Event完成。支持多个Stream等待同一个Event的场景。接口调用流程请参见多Stream场景
  • Device的同步等待:调用aclrtSynchronizeDevice接口,阻塞应用程序运行,直到正在运算中的Device完成运算。多Device场景下,调用该接口等待的是当前Context对应的Device。接口调用流程请参见多Device场景