|
|
@@ -199,14 +199,6 @@ TEST_F(UtestSingleOpTask, test_aicpu_task_launch_kernel) { |
|
|
|
AiCpuCCTask task; |
|
|
|
rtStream_t stream; |
|
|
|
ASSERT_EQ(rtStreamCreate(&stream, 0), RT_ERROR_NONE); |
|
|
|
auto op_desc = make_shared<OpDesc>("deque", "Deque"); |
|
|
|
ge::AttrUtils::SetBool(op_desc, ATTR_NAME_IS_BLOCKING_OP, false); |
|
|
|
AttrUtils::SetInt(op_desc, ::ge::ATTR_NAME_UNKNOWN_SHAPE_TYPE, ge::DEPEND_COMPUTE); |
|
|
|
GeTensorDesc tensor(GeShape(), FORMAT_NCHW, DT_FLOAT); |
|
|
|
op_desc->AddInputDesc(tensor); |
|
|
|
op_desc->AddInputDesc(tensor); |
|
|
|
op_desc->AddOutputDesc(tensor); |
|
|
|
task.SetOpDesc(op_desc); |
|
|
|
task.num_inputs_ = 2; |
|
|
|
task.num_outputs_ = 1; |
|
|
|
task.input_is_const_ = {true, false}; |
|
|
@@ -214,24 +206,12 @@ TEST_F(UtestSingleOpTask, test_aicpu_task_launch_kernel) { |
|
|
|
uint32_t* addrs[total_addr] = {nullptr, nullptr, nullptr}; |
|
|
|
task.io_addr_ = reinterpret_cast<uintptr_t*>(addrs); |
|
|
|
task.io_addr_num_ = total_addr; |
|
|
|
ge::hybrid::AicpuExtInfo aicpu_ext_info; |
|
|
|
aicpu_ext_info.infoType = aicpu::FWKAdapter::FWK_ADPT_EXT_SHAPE_TYPE; |
|
|
|
aicpu_ext_info.infoLen = sizeof(int32_t); |
|
|
|
int32_t type = ge::DEPEND_COMPUTE; |
|
|
|
memcpy_s(aicpu_ext_info.infoMsg, sizeof(int32_t), &type, sizeof(int32_t)); |
|
|
|
char *ext_mem = (char*)malloc(sizeof(ge::hybrid::AicpuExtInfo) + sizeof(int32_t)); |
|
|
|
memcpy_s(ext_mem, sizeof(ge::hybrid::AicpuExtInfo) + sizeof(int32_t), &aicpu_ext_info, |
|
|
|
sizeof(ge::hybrid::AicpuExtInfo) + sizeof(int32_t)); |
|
|
|
std::string ext_info_str(ext_mem, sizeof(ge::hybrid::AicpuExtInfo) + sizeof(int32_t)); |
|
|
|
vector<DataBuffer> inputs(2, DataBuffer()); |
|
|
|
vector<DataBuffer> outputs(1, DataBuffer()); |
|
|
|
vector<GeTensorDesc> inputs_desc(2, tensor); |
|
|
|
vector<GeTensorDesc> outputs_desc(1, tensor); |
|
|
|
ASSERT_EQ(task.SetExtInfoAndType(ext_info_str, 0), SUCCESS); |
|
|
|
task.unknown_type_ = ge::DEPEND_COMPUTE; |
|
|
|
ASSERT_EQ(task.InitForSummaryAndCopy(), SUCCESS); |
|
|
|
ASSERT_EQ(task.LaunchKernel(inputs_desc, inputs, outputs_desc, outputs, stream), SUCCESS); |
|
|
|
ASSERT_EQ(task.CopyDataToHbm(outputs, stream), SUCCESS); |
|
|
|
} |
|
|
|
|
|
|
|
TEST_F(UtestSingleOpTask, test_aicpu_task_update_io_addr) { |
|
|
|
AiCpuCCTask task; |
|
|
|
task.num_inputs_ = 2; |
|
|
|