ReinterpretCast
Applicability
Product |
Supported |
|---|---|
Atlas 350 Accelerator Card |
√ |
√ |
|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
Function Usage
Reinterprets the current tensor as a new type specified by the user. The converted tensor has the same address and content as the original tensor, and the tensor size (number of bytes) remains unchanged.
Prototype
1 2 | template <typename CAST_T> __aicore__ inline LocalTensor<CAST_T> ReinterpretCast() const |
Parameters
Parameter |
Description |
|---|---|
CAST_T |
New type specified by the user. |
Returns
Returns the Tensor after reinterpretation.
Restrictions
None
Examples
1 2 3 4 5 6 7 8 9 10 11 12 | // Example // input_local is of the int32_t type and contains 16 elements (64 bytes). for (int32_t i = 0; i < 16; ++i) { inputLocal.SetValue(i, i); // Assign i to the ith position in inputLocal. } // Call ReinterpretCast to reinterpret input_local to the int16_t type. AscendC::LocalTensor<int16_t> interpreTensor = inputLocal.ReinterpretCast<int16_t>(); // The result of this example is as follows. The data of the two is the same and the same address is used in the physical memory. The data is reinterpreted based on different types. // inputLocal:0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 // interpreTensor:0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 |
Parent topic: LocalTensor