C APIs at the SIMT Language Extension Layer

SIMT programming is implemented based on the hardware capabilities of the AI Core. You can use the asc_vf_call API to start the SIMT VF (Vector Function) subtask. Currently, the SIMT language extension layer supports the following types of C APIs:

  • Synchronization Functions: Provides memory management and synchronization APIs, which are used to resolve data races and thread synchronization issues between threads in different cores.
  • Mathematical Functions: Provides a set of function APIs for processing mathematical operations.
  • Precision Conversion: Provides a series of APIs for conversion between different precision types.
  • Comparison Function: Checks whether the data is finite, infinite, or NaN.
  • Atomic Function: Provides a series of APIs for performing atomic operations on the data or specific data in the Unified Buffer or Global Memory.
  • Warp Function: Provides a series of APIs for processing data of 32 threads in a single warp.
  • Type Conversion: Converts precisions based on the data types of the source and destination operands.
  • Vector Type Constructor: Provides APIs related to vector type construction.
  • Load/Store Functions with Cache Hints: Provides APIs related to data loading and caching.
  • printf: Provides APIs used in the SIMT VF debugging scenario.