Overview
The DataCopy APIs provide comprehensive data transfer capabilities. They support various data transfer scenarios, and can perform real-time format conversion, quantization, and activation during the transfer. These APIs enable data transfer between the local memory and global memory, as well as data transfer within the local memory.
The following table lists DataCopy functions and their support for each transfer path.
Function |
Description |
Local Memory -> Global Memory |
Global Memory -> Local Memory |
Local Memory -> Local Memory |
|||
|---|---|---|---|---|---|---|---|
Provides basic data transfer capabilities. The original format and content of data remain unchanged during transfer. Both continuous and discontinuous data transfer are supported. |
√ |
√ |
√ |
||||
Enhances the data transfer capability. Compared with basic data transfer APIs, the enhanced data transfer API adds real-time computation over the CO1 -> CO2 path. |
√ |
√ |
√ |
||||
Supports slice data transfer, which extracts subsets of multi-dimensional tensor data for transfer. |
√ |
√ |
× |
||||
Supports ND-to-NZ format conversion during data transfer. |
× |
√ |
√ |
||||
Supports NZ-to-ND format conversion during data transfer. |
√ |
× |
× |
||||
Supports DN-to-NZ format conversion during data transfer. |
× |
√ |
× |
||||
Supports quantization and ReLU activation during data transfer, as well as NZ-to-ND format conversion on the path from the local memory to global memory. |
√ |
× |
√ |
||||
Supports more flexible configuration of the dimensions and strides for data transfer. |
× |
√ |
× |
||||