diff --git a/src/atb/context/context_base.cpp b/src/atb/context/context_base.cpp index e87f837c23e18737bf4c84098666c6344fb6a693..5d994c7ca7bb4878bf313d187912d8e3acf11b0b 100644 --- a/src/atb/context/context_base.cpp +++ b/src/atb/context/context_base.cpp @@ -349,7 +349,7 @@ Status ContextBase::FreeArgsHostBuffer(void *addr) { return hostAllocator_->Deallocate(addr); } -bool ContextBase::GetLaunchWithTilingStatus() +bool ContextBase::GetLaunchWithTilingStatus() const { return mode_ != GRAPH_LAUNCH_MODE; } diff --git a/src/atb/context/context_base.h b/src/atb/context/context_base.h index 9ea71adbd6665c3078cd6a9056292fa17a57c531..6cc54754abb3dd5815968896e93c6e5f6fc4e7a6 100644 --- a/src/atb/context/context_base.h +++ b/src/atb/context/context_base.h @@ -49,7 +49,7 @@ public: void *GetArgsHostBuffer(size_t bufferSize); Status FreeArgsDeviceBuffer(void *addr); Status FreeArgsHostBuffer(void *addr); - bool GetLaunchWithTilingStatus(); + bool GetLaunchWithTilingStatus() const; private: Status CreateCopyStreamAndEvents(); diff --git a/src/atb/operation/operation_base.cpp b/src/atb/operation/operation_base.cpp index 8668f9e5121b1d502720fa50f4132b95237374ef..60e8591a63406fa4dd36c2bdf8b14e6ed7a2516c 100644 --- a/src/atb/operation/operation_base.cpp +++ b/src/atb/operation/operation_base.cpp @@ -784,7 +784,7 @@ Status OperationBase::ExecuteVariantPackOutTensorCheck(const SVector return NO_ERROR; } -Status OperationBase::ExecuteVariantPackCheck(const VariantPack &variantPack) +Status OperationBase::ExecuteVariantPackCheck(const VariantPack &variantPack) const { Status st = NO_ERROR; st = ExecuteVariantPackInTensorCheck(variantPack.inTensors); @@ -1347,7 +1347,7 @@ aclrtStream OperationBase::GetExecuteStream(Context *context) const return streams.at(streamId_); } -Status OperationBase::CopyArgsToDevice(Context *context) +Status OperationBase::CopyArgsToDevice(Context *context) const { Status st = NO_ERROR; if (hostArgsBuffer_ == nullptr) { diff --git a/src/atb/operation/operation_base.h b/src/atb/operation/operation_base.h index 309fc0bf804cba403db7188a6b47e3718e52af03..66227d5430363a7f134812dd353cfdd03def8371 100644 --- a/src/atb/operation/operation_base.h +++ b/src/atb/operation/operation_base.h @@ -87,7 +87,7 @@ private: Context *context); template Status ExecuteVariantPackInTensorCheck(const SVector &inTensors) const; template Status ExecuteVariantPackOutTensorCheck(const SVector &outTensors) const; - Status ExecuteVariantPackCheck(const VariantPack &variantPack); + Status ExecuteVariantPackCheck(const VariantPack &variantPack) const; void InitRunnerVariantPack(const VariantPack &variantPack); Status CopyHostTilingToDevice(aclrtStream stream); Status CopyTilingToDevice(); @@ -116,7 +116,7 @@ private: Status EagerModeLaunch(); Status GraphModeLaunch(); void ProfilingPrepare(); - Status CopyArgsToDevice(Context *context); + Status CopyArgsToDevice(Context *context) const; private: std::string logPrefix_; diff --git a/src/kernels/mixkernels/fused_add_topk_div/tiling/fused_add_topk_div_tiling.cpp b/src/kernels/mixkernels/fused_add_topk_div/tiling/fused_add_topk_div_tiling.cpp index 782bc8f52517d03d13a56aaff52c9bb9ec248e90..897ae44aff66b9a92649ae09be7b44478a217936 100644 --- a/src/kernels/mixkernels/fused_add_topk_div/tiling/fused_add_topk_div_tiling.cpp +++ b/src/kernels/mixkernels/fused_add_topk_div/tiling/fused_add_topk_div_tiling.cpp @@ -74,7 +74,7 @@ namespace AtbOps { void GetTilingKey(TilingData *tilingDataPtr); void GetUsedCore(); void SplitUb(); - void FillTilingData(TilingData *tilingDataPtr); + void FillTilingData(TilingData *tilingDataPtr) const; template inline T1 CeilAlign(T1 a, T2 b) const { @@ -139,7 +139,7 @@ namespace AtbOps { } template - void FusedAddTopkDivTiling::FillTilingData(TilingData *tilingDataPtr) + void FusedAddTopkDivTiling::FillTilingData(TilingData *tilingDataPtr) const { tilingDataPtr->firstDimSize = firstDimSize; tilingDataPtr->secondDimSize = secondDimSize; diff --git a/src/kernels/mixkernels/fusion/fusion_operation.cpp b/src/kernels/mixkernels/fusion/fusion_operation.cpp index 3f61161d63865f82b2e8ba68f0b93629ac76d1e0..5f81251140ec3e422ff2ae840a843ece407d1971 100644 --- a/src/kernels/mixkernels/fusion/fusion_operation.cpp +++ b/src/kernels/mixkernels/fusion/fusion_operation.cpp @@ -210,7 +210,7 @@ public: return; } - void ErasedFusion() + void ErasedFusion() const { static uint8_t erasedFusionKernelBinData[DYNAMICNULLSIZE]; uint32_t counter = 0; @@ -292,7 +292,7 @@ protected: return Status::OkStatus(); } - bool IsSoftLink(const char *path) + bool IsSoftLink(const char *path) const { struct stat fileStat; if (lstat(path, &fileStat) != 0) { diff --git a/src/kernels/mixkernels/mla_preprocess/tiling/mla_preprocess_tiling.cpp b/src/kernels/mixkernels/mla_preprocess/tiling/mla_preprocess_tiling.cpp index 9fe26640a189f3dac3169b9df9a863fbc214789c..4dc0cae28d0231f55384900f5373c70436dd37ce 100644 --- a/src/kernels/mixkernels/mla_preprocess/tiling/mla_preprocess_tiling.cpp +++ b/src/kernels/mixkernels/mla_preprocess/tiling/mla_preprocess_tiling.cpp @@ -96,12 +96,12 @@ public: private: void GetTileSize(); - float GetCost(const uint32_t m0, const uint32_t n0); + float GetCost(const uint32_t m0, const uint32_t n0) const; void UpdateTileSize(const uint32_t m0, const uint32_t n0); void Swizzle(); - uint32_t ComputeL1AbSize(); - uint32_t ComputeK0ForABpingpong(uint32_t l1AbSize); - bool IsLoadAllAmat(uint32_t l1AbSize); + uint32_t ComputeL1AbSize() const; + uint32_t ComputeK0ForABpingpong(uint32_t l1AbSize) const; + bool IsLoadAllAmat(uint32_t l1AbSize) const; uint32_t ComputeK0ForOnlyBpingpong(uint32_t l1AbSize); private: @@ -202,13 +202,13 @@ uint32_t PpMatmulTilingApi::ComputeK0ForOnlyBpingpong(uint32_t l1AbSize) return k0B0 > CONST_512 ? RoundDown(k0B0, CONST_512) : k0B0; } -bool PpMatmulTilingApi::IsLoadAllAmat(uint32_t l1AbSize) +bool PpMatmulTilingApi::IsLoadAllAmat(uint32_t l1AbSize) const { return (coreLoop_ > blockDim_) && enDequant_ && (kLoop_ > 1) && (l1AbSize > RoundUp(m_, CONST_16) * RoundUp(k_, CONST_32) * inDataSize_) && (mLoop_ == 1); } -uint32_t PpMatmulTilingApi::ComputeK0ForABpingpong(uint32_t l1AbSize) +uint32_t PpMatmulTilingApi::ComputeK0ForABpingpong(uint32_t l1AbSize) const { uint32_t k0Max = static_cast(static_cast(l1AbSize / DIM_2) / ((m0_ + n0_) * inDataSize_)); uint32_t tmpK0; @@ -223,7 +223,7 @@ uint32_t PpMatmulTilingApi::ComputeK0ForABpingpong(uint32_t l1AbSize) return tmpK0; } -uint32_t PpMatmulTilingApi::ComputeL1AbSize() +uint32_t PpMatmulTilingApi::ComputeL1AbSize() const { if (enDequant_ && deqOnTheFly_) { return L1_BUFFER_SIZE; @@ -231,7 +231,7 @@ uint32_t PpMatmulTilingApi::ComputeL1AbSize() return enDequant_ ? (L1_BUFFER_SIZE - L1_BIAS_SIZE - L1_SCALE_SIZE) : L1_BUFFER_SIZE; } -float PpMatmulTilingApi::GetCost(const uint32_t m0, const uint32_t n0) +float PpMatmulTilingApi::GetCost(const uint32_t m0, const uint32_t n0) const { float aCoef = 1.0; float bCoef = 1.0; @@ -321,7 +321,7 @@ public: void RopeConcatTiling(const OpParam::MlaPreprocess ¶m, const uint32_t &aicNum); void EinSumQuantTiling(const OpParam::MlaPreprocess ¶m, const uint32_t &aicNum, const TensorDType inDtype); void SetTiling(AtbOps::MlaTilingData *tilingParam); - void SetTilingKey(const Mki::LaunchParam &launchParam, Mki::KernelInfo &kernelInfo); + void SetTilingKey(const Mki::LaunchParam &launchParam, Mki::KernelInfo &kernelInfo) const; void SetMlapoWorkSpace(const TensorDType inDtype, const OpParam::MlaPreprocess ¶m, Mki::KernelInfo &kernelInfo); }; @@ -477,7 +477,7 @@ void MlaPreprocessTiling::SetTiling(AtbOps::MlaTilingData *tilingParam) tilingParam->esqColTail = tilingData.esqColTail; } -void MlaPreprocessTiling::SetTilingKey(const Mki::LaunchParam &launchParam, Mki::KernelInfo &kernelInfo) +void MlaPreprocessTiling::SetTilingKey(const Mki::LaunchParam &launchParam, Mki::KernelInfo &kernelInfo) const { OpParam::MlaPreprocess param = AnyCast(launchParam.GetParam()); TensorFormat formatWeight1 = launchParam.GetInTensor(INDEX_WDQKV).desc.format; diff --git a/src/ops_infer/relay_attention/param.cpp b/src/ops_infer/relay_attention/param.cpp index 5ca38676319c05053fdd56a54ef5502c8609f072..42e4d7c6d338f8a34fb2f08b63f85097ebcbb32c 100644 --- a/src/ops_infer/relay_attention/param.cpp +++ b/src/ops_infer/relay_attention/param.cpp @@ -39,7 +39,7 @@ bool RelayAttentionVariantPackParam::BuildFromTensor(const SVector return true; } -void RelayAttentionVariantPackParam::ReintCastShapeFix(const Mki::Tensor tensor, std::vector &tensorList) +void RelayAttentionVariantPackParam::ReintCastShapeFix(const Mki::Tensor tensor, std::vector &tensorList) const { if (tensor.desc.dims.size() - 1 != tensorList[0].desc.shape.dimNum) { size_t diffDimNum = static_cast(tensorList[0].desc.shape.dimNum); diff --git a/src/ops_infer/relay_attention/param.h b/src/ops_infer/relay_attention/param.h index b8b6c7b9dea54d7a5a7d8eb1c7be01a5e83b8a9b..68bc70392ba4db60fafb6c1fbcbb43391838c842 100644 --- a/src/ops_infer/relay_attention/param.h +++ b/src/ops_infer/relay_attention/param.h @@ -30,7 +30,7 @@ struct RelayAttentionVariantPackParam { std::vector valueShare; bool BuildFromTensor(const SVector &inTensors); bool HostDataCheck(const SVector &inTensors); - void ReintCastShapeFix(const Mki::Tensor tensor, std::vector &tensorList); + void ReintCastShapeFix(const Mki::Tensor tensor, std::vector &tensorList) const; }; } // namespace atb #endif \ No newline at end of file diff --git a/src/torch_atb/graph_node.cpp b/src/torch_atb/graph_node.cpp index fa207305d2e34e24215a63d37e54f2667a2e1424..d356587301a4a5c72f4b7610f02c00487b85fbd7 100644 --- a/src/torch_atb/graph_node.cpp +++ b/src/torch_atb/graph_node.cpp @@ -32,7 +32,7 @@ bool GraphNode::FindOutput(const std::string &id) const return it != outTensorIds.end(); } -void GraphNode::SetStreamId(uint32_t streamId) +void GraphNode::SetStreamId(uint32_t streamId) const { if (!operation) { throw std::runtime_error("Set execute stream id fail, operation is nullptr"); @@ -40,7 +40,7 @@ void GraphNode::SetStreamId(uint32_t streamId) SetExecuteStreamId(operation, streamId); } -uint32_t GraphNode::GetStreamId() +uint32_t GraphNode::GetStreamId() const { if (!operation) { throw std::runtime_error("Get execute stream id fail, operation is nullptr"); diff --git a/src/torch_atb/graph_node.h b/src/torch_atb/graph_node.h index fd5a73dcabcee8e2054383cb6f21c6d25c2f035c..35a1f1f208235fbf169df20c1ad49f6b66edf20e 100644 --- a/src/torch_atb/graph_node.h +++ b/src/torch_atb/graph_node.h @@ -22,8 +22,8 @@ public: void SetOperation(atb::Operation *op); std::string GetOutput(size_t index) const; bool FindOutput(const std::string &id) const; - void SetStreamId(uint32_t streamId); - uint32_t GetStreamId(); + void SetStreamId(uint32_t streamId) const; + uint32_t GetStreamId() const; std::vector inTensorIds; std::vector outTensorIds;