| @@ -123,6 +123,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, int size | |||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? total_size - dst_offset | ? total_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -59,7 +59,7 @@ bool CheckShape(Format format, const ShapeVector &shape) { | |||||
| return CheckShapeValid(shape, kDimSize4D); | return CheckShapeValid(shape, kDimSize4D); | ||||
| default: | default: | ||||
| std::string error = "Trans format between " + FmtToStr(TypeUtils::FormatToSerialString(format)) + | std::string error = "Trans format between " + FmtToStr(TypeUtils::FormatToSerialString(format)) + | ||||
| " and FORMAT_FRACTAL_NZ is not supported."; | |||||
| " and FORMAT_FRACTAL_NZ is not supported."; | |||||
| GE_ERRORLOG_AND_ERRORMSG(ACL_ERROR_GE_FORMAT_INVALID, error.c_str()); | GE_ERRORLOG_AND_ERRORMSG(ACL_ERROR_GE_FORMAT_INVALID, error.c_str()); | ||||
| return false; | return false; | ||||
| } | } | ||||
| @@ -185,6 +185,7 @@ Status TransFormatFromNdToFracNz(const TransArgs &args, TransResult &result, con | |||||
| auto src_offset = (src_h_head + w1_idx * w0) * size; | auto src_offset = (src_h_head + w1_idx * w0) * size; | ||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | ||||
| dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size * w0)); | static_cast<size_t>(size * w0)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -202,6 +203,7 @@ Status TransFormatFromNdToFracNz(const TransArgs &args, TransResult &result, con | |||||
| auto src_offset = (src_h_head + src_w_idx) * size; | auto src_offset = (src_h_head + src_w_idx) * size; | ||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | ||||
| dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -267,6 +269,7 @@ Status TransFormatFromFracNzToNd(const TransArgs &args, TransResult &result, con | |||||
| auto dst_offset = (dst_h_head + w1_idx * w0) * size; | auto dst_offset = (dst_h_head + w1_idx * w0) * size; | ||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | ||||
| dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size * w0)); | static_cast<size_t>(size * w0)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -285,6 +288,7 @@ Status TransFormatFromFracNzToNd(const TransArgs &args, TransResult &result, con | |||||
| auto dst_offset = (dst_h_head + dst_w_idx) * size; | auto dst_offset = (dst_h_head + dst_w_idx) * size; | ||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | ||||
| dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | dst_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -226,6 +226,7 @@ Status TransFormatFromNchwToFz(const TransArgs &args, TransResult &result) { | |||||
| auto protected_size = dst_size - offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - offset | ? dst_size - offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| errno_t ret = EOK; | errno_t ret = EOK; | ||||
| if (need_pad_zero) { | if (need_pad_zero) { | ||||
| ret = memset_s(dst.get() + offset, static_cast<size_t>(protected_size), 0, static_cast<size_t>(size)); | ret = memset_s(dst.get() + offset, static_cast<size_t>(protected_size), 0, static_cast<size_t>(size)); | ||||
| @@ -390,6 +391,7 @@ Status TransFormatHwcnToFz(const TransArgs &args, TransResult &result) { | |||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - dst_offset | ? dst_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto pad_zero = ((c1i * c0 + c0i) >= c) || (n1n0i >= n); | auto pad_zero = ((c1i * c0 + c0i) >= c) || (n1n0i >= n); | ||||
| errno_t ret = EOK; | errno_t ret = EOK; | ||||
| if (pad_zero) { | if (pad_zero) { | ||||
| @@ -474,6 +476,7 @@ Status TransFormatNhwcToFz(const TransArgs &args, TransResult &result) { | |||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - dst_offset | ? dst_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto pad_zero = ((c1i * c0 + c0i) >= c) || (n1n0i >= n); | auto pad_zero = ((c1i * c0 + c0i) >= c) || (n1n0i >= n); | ||||
| errno_t ret = EOK; | errno_t ret = EOK; | ||||
| if (pad_zero) { | if (pad_zero) { | ||||
| @@ -193,6 +193,7 @@ Status TransFormatFromNdToFracZz(const TransArgs &args, TransResult &result, con | |||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - dst_offset | ? dst_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size * w0)); | static_cast<size_t>(size * w0)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -213,6 +214,7 @@ Status TransFormatFromNdToFracZz(const TransArgs &args, TransResult &result, con | |||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - dst_offset | ? dst_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -284,6 +286,7 @@ Status TransFormatFromFracZzToNd(const TransArgs &args, TransResult &result, con | |||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - dst_offset | ? dst_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size * w0)); | static_cast<size_t>(size * w0)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -304,6 +307,7 @@ Status TransFormatFromFracZzToNd(const TransArgs &args, TransResult &result, con | |||||
| auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - dst_offset | ? dst_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -128,6 +128,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, const in | |||||
| auto dst_offset = dst_idx * size; | auto dst_offset = dst_idx * size; | ||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | ||||
| total_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | total_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -130,6 +130,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, const in | |||||
| auto dst_offset = dst_idx * size; | auto dst_offset = dst_idx * size; | ||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | ||||
| total_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | total_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -128,6 +128,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, int size | |||||
| auto dst_offset = dst_idx * size; | auto dst_offset = dst_idx * size; | ||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) ? | ||||
| total_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | total_size - dst_offset : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -149,6 +149,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, const in | |||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? total_size - dst_offset | ? total_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| int64_t c_idx = c0_idx + c1_idx * c0; | int64_t c_idx = c0_idx + c1_idx * c0; | ||||
| int64_t src_idx = h_idx * wcn + w_idx * cn + c_idx * n + n_idx; | int64_t src_idx = h_idx * wcn + w_idx * cn + c_idx * n + n_idx; | ||||
| auto src_offset = src_idx * size; | auto src_offset = src_idx * size; | ||||
| @@ -129,6 +129,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, const in | |||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? total_size - dst_offset | ? total_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -129,6 +129,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, const in | |||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? total_size - dst_offset | ? total_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset, static_cast<size_t>(protected_size), args.data + src_offset, | ||||
| static_cast<size_t>(size)); | static_cast<size_t>(size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -144,6 +144,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, const in | |||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? total_size - dst_offset | ? total_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| int64_t cIdx = c0_idx + c1_idx * c0; | int64_t cIdx = c0_idx + c1_idx * c0; | ||||
| int64_t srcIdx = n_idx * chw + cIdx * hw + h_idx * w + w_idx; | int64_t srcIdx = n_idx * chw + cIdx * hw + h_idx * w + w_idx; | ||||
| auto src_offset = srcIdx * size; | auto src_offset = srcIdx * size; | ||||
| @@ -149,6 +149,7 @@ Status GetDstDataAfterTrans(const TransArgs &args, TransResult &result, const in | |||||
| auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = total_size - dst_offset < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? total_size - dst_offset | ? total_size - dst_offset | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| int64_t c_idx = c0_idx + c1_idx * c0; | int64_t c_idx = c0_idx + c1_idx * c0; | ||||
| int64_t src_idx = n_idx * hwc + h_idx * wc + w_idx * c + c_idx; | int64_t src_idx = n_idx * hwc + h_idx * wc + w_idx * c + c_idx; | ||||
| auto src_offset = src_idx * size; | auto src_offset = src_idx * size; | ||||
| @@ -171,6 +171,7 @@ Status Transpose(const uint8_t *src, const std::vector<int64_t> &src_shape, Data | |||||
| auto protected_size = dst_size - dst_offset_bytes < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | auto protected_size = dst_size - dst_offset_bytes < static_cast<int64_t>(SECUREC_MEM_MAX_LEN) | ||||
| ? dst_size - dst_offset_bytes | ? dst_size - dst_offset_bytes | ||||
| : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | : static_cast<int64_t>(SECUREC_MEM_MAX_LEN); | ||||
| GE_CHECK_GE(protected_size, 0); | |||||
| auto ret = memcpy_s(dst.get() + dst_offset_bytes, static_cast<size_t>(protected_size), src + src_offset, | auto ret = memcpy_s(dst.get() + dst_offset_bytes, static_cast<size_t>(protected_size), src + src_offset, | ||||
| static_cast<size_t>(data_size)); | static_cast<size_t>(data_size)); | ||||
| if (ret != EOK) { | if (ret != EOK) { | ||||
| @@ -569,6 +569,7 @@ Status ModelManager::DataInputTensor(uint32_t model_id, const std::vector<ge::Te | |||||
| uint32_t length = static_cast<uint32_t>(cur_dynamic_dims.size() * sizeof(int32_t)); | uint32_t length = static_cast<uint32_t>(cur_dynamic_dims.size() * sizeof(int32_t)); | ||||
| GE_CHK_BOOL_EXEC(memcpy_s(data.data, length, cur_dynamic_dims.data(), length) == EOK, | GE_CHK_BOOL_EXEC(memcpy_s(data.data, length, cur_dynamic_dims.data(), length) == EOK, | ||||
| REPORT_CALL_ERROR("E19999", "memcpy data failed, size:%u", length); | REPORT_CALL_ERROR("E19999", "memcpy data failed, size:%u", length); | ||||
| delete[] reinterpret_cast<int32_t *>(data.data); | |||||
| return INTERNAL_ERROR, "[Memcpy][Data] failed, size:%u.", length); | return INTERNAL_ERROR, "[Memcpy][Data] failed, size:%u.", length); | ||||
| data.length = length; | data.length = length; | ||||
| input_data.blobs.push_back(data); | input_data.blobs.push_back(data); | ||||
| @@ -1790,7 +1791,8 @@ Status ModelManager::LaunchKernelCheckAicpuOp(std::vector<std::string> &aicpu_op | |||||
| std::vector<char> op_name; | std::vector<char> op_name; | ||||
| op_name.clear(); | op_name.clear(); | ||||
| op_name.resize(kOpNameMaxSize); | op_name.resize(kOpNameMaxSize); | ||||
| GE_CHK_RT(rtMemcpy(op_name.data(), aicpu_info.opLen, reinterpret_cast<void *>(aicpu_info.opType), | |||||
| GE_CHK_RT(rtMemcpy(op_name.data(), aicpu_info.opLen, | |||||
| reinterpret_cast<void *>(static_cast<uintptr_t>(aicpu_info.opType)), | |||||
| aicpu_info.opLen, RT_MEMCPY_DEVICE_TO_HOST)); | aicpu_info.opLen, RT_MEMCPY_DEVICE_TO_HOST)); | ||||
| std::string kernel_type = | std::string kernel_type = | ||||
| (static_cast<OpKernelType>(aicpu_info.kernelsType) == TF_KERNEL) ? "TF_KERNEL" : "CPU_KERNEL"; | (static_cast<OpKernelType>(aicpu_info.kernelsType) == TF_KERNEL) ? "TF_KERNEL" : "CPU_KERNEL"; | ||||
| @@ -329,7 +329,7 @@ void HcclTaskInfo::GetPrivateDefByTaskDef(const domi::TaskDef &task) { | |||||
| // Get privateDef and opsKernelStorePtr from taskDef and save them in taskInfo | // Get privateDef and opsKernelStorePtr from taskDef and save them in taskInfo | ||||
| GELOGI("get custom info in modelTaskDef."); | GELOGI("get custom info in modelTaskDef."); | ||||
| ops_kernel_store_ = nullptr; | ops_kernel_store_ = nullptr; | ||||
| void *ops_kernel_store_name_temp = reinterpret_cast<void *>(task.ops_kernel_store_ptr()); | |||||
| void *ops_kernel_store_name_temp = reinterpret_cast<void *>(static_cast<uintptr_t>(task.ops_kernel_store_ptr())); | |||||
| if (ops_kernel_store_name_temp != nullptr) { | if (ops_kernel_store_name_temp != nullptr) { | ||||
| ops_kernel_store_ = std::move(ops_kernel_store_name_temp); | ops_kernel_store_ = std::move(ops_kernel_store_name_temp); | ||||
| std::string private_def_temp = task.private_def(); | std::string private_def_temp = task.private_def(); | ||||
| @@ -420,7 +420,7 @@ Status KernelExTaskInfo::Distribute() { | |||||
| // xxxxxxxx xxxxxxxx xxxxxxxx xx10xxxx: HOST_ONLY | // xxxxxxxx xxxxxxxx xxxxxxxx xx10xxxx: HOST_ONLY | ||||
| // xxxxxxxx xxxxxxxx xxxxxxxx xx11xxxx: HOST_FIRST | // xxxxxxxx xxxxxxxx xxxxxxxx xx11xxxx: HOST_FIRST | ||||
| if (topic_type_flag_ > 0) { | if (topic_type_flag_ > 0) { | ||||
| dump_flag_ = dump_flag_ | topic_type_flag_; | |||||
| dump_flag_ = dump_flag_ | static_cast<uint32_t>(topic_type_flag_); | |||||
| } | } | ||||
| rtError_t rt_ret = rtKernelLaunchEx(kernel_buf_, kernel_buf_size_, dump_flag_, stream_); | rtError_t rt_ret = rtKernelLaunchEx(kernel_buf_, kernel_buf_size_, dump_flag_, stream_); | ||||
| if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
| @@ -436,7 +436,7 @@ Status KernelTaskInfo::Distribute() { | |||||
| // xxxxxxxx xxxxxxxx xxxxxxxx xx01xxxx: DEVICE_FIRST | // xxxxxxxx xxxxxxxx xxxxxxxx xx01xxxx: DEVICE_FIRST | ||||
| // xxxxxxxx xxxxxxxx xxxxxxxx xx10xxxx: HOST_ONLY | // xxxxxxxx xxxxxxxx xxxxxxxx xx10xxxx: HOST_ONLY | ||||
| // xxxxxxxx xxxxxxxx xxxxxxxx xx11xxxx: HOST_FIRST | // xxxxxxxx xxxxxxxx xxxxxxxx xx11xxxx: HOST_FIRST | ||||
| dump_flag_ = dump_flag_ | topic_type_flag_; | |||||
| dump_flag_ = dump_flag_ | static_cast<uint32_t>(topic_type_flag_); | |||||
| } | } | ||||
| GELOGI("distribute task info kernel_type %d, flag %d", kernel_type_, dump_flag_); | GELOGI("distribute task info kernel_type %d, flag %d", kernel_type_, dump_flag_); | ||||
| // blockDim is reserved parameter, set to 1 | // blockDim is reserved parameter, set to 1 | ||||
| @@ -62,7 +62,8 @@ Status ZeroCopyOffset::InitInputDataInfo(int64_t output_size, void *virtual_addr | |||||
| for (size_t index = 0; index < zero_copy_basic_offset_.size(); ++index) { | for (size_t index = 0; index < zero_copy_basic_offset_.size(); ++index) { | ||||
| if (zero_copy_basic_offset_.at(index) == virtual_addr_offset) { | if (zero_copy_basic_offset_.at(index) == virtual_addr_offset) { | ||||
| out_count++; | out_count++; | ||||
| uint64_t out_offset = reinterpret_cast<uint64_t>(virtual_addr) + zero_copy_relative_offset_.at(index); | |||||
| uint64_t out_offset = static_cast<uint64_t>(reinterpret_cast<uintptr_t>(virtual_addr)) + | |||||
| zero_copy_relative_offset_.at(index); | |||||
| data_info_.emplace_back(output_size, reinterpret_cast<void *>(static_cast<uintptr_t>(out_offset))); | data_info_.emplace_back(output_size, reinterpret_cast<void *>(static_cast<uintptr_t>(out_offset))); | ||||
| relative_offset_.emplace_back(zero_copy_relative_offset_.at(index)); | relative_offset_.emplace_back(zero_copy_relative_offset_.at(index)); | ||||
| GELOGI("[ZCPY] virtual_addr: %p has been l2-fusion to %lu, need copy data_size is %ld.", basic_addr_, | GELOGI("[ZCPY] virtual_addr: %p has been l2-fusion to %lu, need copy data_size is %ld.", basic_addr_, | ||||
| @@ -117,7 +118,8 @@ Status ZeroCopyOffset::InitOutputDataInfo(const vector<int64_t> &input_size_list | |||||
| for (size_t index = 0; index < zero_copy_basic_offset_.size(); ++index) { | for (size_t index = 0; index < zero_copy_basic_offset_.size(); ++index) { | ||||
| if (zero_copy_basic_offset_.at(index) == virtual_addr_offset) { | if (zero_copy_basic_offset_.at(index) == virtual_addr_offset) { | ||||
| in_count++; | in_count++; | ||||
| uint64_t in_offset = reinterpret_cast<uint64_t>(virtual_addr_list[idx]) + zero_copy_relative_offset_.at(index); | |||||
| uint64_t in_offset = static_cast<uint64_t>(reinterpret_cast<uintptr_t>(virtual_addr_list[idx])) + | |||||
| zero_copy_relative_offset_.at(index); | |||||
| int64_t real_data_size = ModelUtils::GetInputSize(op_desc).at(idx); | int64_t real_data_size = ModelUtils::GetInputSize(op_desc).at(idx); | ||||
| data_info_.emplace_back(real_data_size, reinterpret_cast<void *>(static_cast<uintptr_t>(in_offset))); | data_info_.emplace_back(real_data_size, reinterpret_cast<void *>(static_cast<uintptr_t>(in_offset))); | ||||
| relative_offset_.emplace_back(zero_copy_relative_offset_.at(index)); | relative_offset_.emplace_back(zero_copy_relative_offset_.at(index)); | ||||
| @@ -945,7 +945,7 @@ Status HybridModelBuilder::VarNodeToTensor(const NodePtr &var_node, std::unique_ | |||||
| } | } | ||||
| int64_t var_size = CalcVarSizeInBytes(*tensor_desc); | int64_t var_size = CalcVarSizeInBytes(*tensor_desc); | ||||
| // var size is only for checking, will not allocate any memory by it | |||||
| GE_CHECK_GE(var_size, 0); | |||||
| tensor.reset(new(std::nothrow)TensorValue(dev_mem, static_cast<size_t>(var_size))); | tensor.reset(new(std::nothrow)TensorValue(dev_mem, static_cast<size_t>(var_size))); | ||||
| GE_CHECK_NOTNULL(tensor); | GE_CHECK_NOTNULL(tensor); | ||||
| GELOGI("Get var memory addr %p for node %s, size = %ld, mem_type=%u", dev_mem, var_name.c_str(), var_size, mem_type); | GELOGI("Get var memory addr %p for node %s, size = %ld, mem_type=%u", dev_mem, var_name.c_str(), var_size, mem_type); | ||||