Kirin 9020 series processors
Kirin 9030 series processors
Kirin X90 series processors
true: indicates that idle buffer exists in the queue.
false: No idle buffer exists in the queue.
// Four buffers have been allocated in the current queue. AscendC::TPipe pipe; AscendC::TQueBind<AscendC::TPosition::VECOUT, AscendC::TPosition::GM, 4> que; int num = 4; int len = 1024; pipe.InitBuffer(que, num, len); bool ret = que.HasIdleBuffer(); // AllocTensor is not called, and the return is true. AscendC::LocalTensor<half> tensor1 = que.AllocTensor<half>(); ret = que.HasIdleBuffer(); // One buffer has been allocated by AllocTensor, and the return is true. AscendC::LocalTensor<half> tensor2 = que.AllocTensor<half>(); AscendC::LocalTensor<half> tensor3 = que.AllocTensor<half>(); AscendC::LocalTensor<half> tensor4 = que.AllocTensor<half>(); ret = que.HasIdleBuffer(); // Four buffers have been allocated by AllocTensor. Currently, there is no idle buffer, and the return is false. An error is reported when AllocTensor is called.