From 10fb27aefb81f33adce25aef62c5d8d5606efac5 Mon Sep 17 00:00:00 2001 From: zkyseu Date: Sun, 26 Nov 2023 23:15:50 +0800 Subject: [PATCH 1/3] npu_test --- .gitignore | 1 + cmake/caches/cn/cpu.cmake | 1 + .../Transform/Lowering/LoweringAscendUtils.h | 2 +- .../lib/OneFlow/ConvertToLiteExecutable.cpp | 3 ++ .../Transform/Lowering/LoweringAscend.cpp | 28 +++++++++---------- 5 files changed, 20 insertions(+), 15 deletions(-) diff --git a/.gitignore b/.gitignore index 6e26fb149ef..ea8127d11e9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ /build +/build1 /build-* /docs/build/ /docs/build-cn/ diff --git a/cmake/caches/cn/cpu.cmake b/cmake/caches/cn/cpu.cmake index d13fffb7dc1..6fff5d3493e 100644 --- a/cmake/caches/cn/cpu.cmake +++ b/cmake/caches/cn/cpu.cmake @@ -1,3 +1,4 @@ set(BUILD_CUDA NO CACHE BOOL "") +set(BUILD_SHARED_LIBS YES CACHE BOOL "") set(THIRD_PARTY_MIRROR aliyun CACHE STRING "") set(PIP_INDEX_MIRROR "https://pypi.tuna.tsinghua.edu.cn/simple" CACHE STRING "") diff --git a/oneflow/ir/oneflow-lite/include/OneFlow/Transform/Lowering/LoweringAscendUtils.h b/oneflow/ir/oneflow-lite/include/OneFlow/Transform/Lowering/LoweringAscendUtils.h index b2d7544a3a8..5c6fc8cb603 100644 --- a/oneflow/ir/oneflow-lite/include/OneFlow/Transform/Lowering/LoweringAscendUtils.h +++ b/oneflow/ir/oneflow-lite/include/OneFlow/Transform/Lowering/LoweringAscendUtils.h @@ -30,7 +30,7 @@ limitations under the License. // huawei ascend sdk headers #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wignored-qualifiers" -#include "op_proto/built-in/inc/all_ops.h" +#include "built-in/op_proto/inc/all_ops.h" #pragma GCC diagnostic pop namespace mlir { diff --git a/oneflow/ir/oneflow-lite/lib/OneFlow/ConvertToLiteExecutable.cpp b/oneflow/ir/oneflow-lite/lib/OneFlow/ConvertToLiteExecutable.cpp index 7f448ea8fec..6a9fe525f4e 100644 --- a/oneflow/ir/oneflow-lite/lib/OneFlow/ConvertToLiteExecutable.cpp +++ b/oneflow/ir/oneflow-lite/lib/OneFlow/ConvertToLiteExecutable.cpp @@ -116,6 +116,9 @@ static flatbuffers_vec_ref_t createLiteOpAttrs(FlatbufferBuilder& builder, Opera } else if (attrType.value() == ::oneflow::kAtListString) { strAttrType = "strs"; serializeStringsAttr(attrBuilder, attrValue); + } else if (attrType.value() == ::oneflow::kAtBytes) { + strAttrType = "str"; + serializeStringAttr(attrBuilder, attrValue); } else { llvm::errs() << "error attribute type: " << attrType.value() << "\n"; exit(1); diff --git a/oneflow/ir/oneflow-lite/lib/OneFlow/Transform/Lowering/LoweringAscend.cpp b/oneflow/ir/oneflow-lite/lib/OneFlow/Transform/Lowering/LoweringAscend.cpp index d22b13bfabb..1a70ae0139a 100644 --- a/oneflow/ir/oneflow-lite/lib/OneFlow/Transform/Lowering/LoweringAscend.cpp +++ b/oneflow/ir/oneflow-lite/lib/OneFlow/Transform/Lowering/LoweringAscend.cpp @@ -37,7 +37,7 @@ limitations under the License. // huawei ascend sdk headers #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wignored-qualifiers" -#include "op_proto/built-in/inc/all_ops.h" +#include "built-in/op_proto/inc/all_ops.h" #pragma GCC diagnostic pop namespace mlir { @@ -168,7 +168,7 @@ void AscendCompiler::addInputs(llvm::SmallVector& operands) { } void AscendCompiler::lowerOp(VariableOp op, StringRef checkpointDir) { - auto ascendType = convertAscendType(op.data_typeAttr(), op.shapeAttr()); + auto ascendType = convertAscendType(op.getDataTypeAttr(), op.getShapeAttr()); llvm::SmallString<128> inputFilename; llvm::sys::path::native(checkpointDir + "/" + op.getOpName() + "/out", inputFilename); std::string errorMessage; @@ -191,11 +191,11 @@ void AscendCompiler::lowerOp(VariableOp op, StringRef checkpointDir) { void AscendCompiler::lowerOp(Conv2DOp op) { auto conv2DOp = createOp(op.getOpName()); - conv2DOp->set_attr_pads(convertPaddings(op.padding_before())); + conv2DOp->set_attr_pads(convertPaddings(op.getPaddingBefore())); conv2DOp->set_attr_dilations(convertDilations(op.getDilationRate())); conv2DOp->set_attr_strides(convertStrides(op.getStrides())); conv2DOp->set_attr_groups(op.getGroups()); - conv2DOp->set_attr_data_format(convertDataFormat(op.data_format()).data()); + conv2DOp->set_attr_data_format(convertDataFormat(op.getDataFormat()).data()); SET_INPUT(conv2DOp, x, getValue(op.getIn())); SET_INPUT(conv2DOp, filter, getValue(op.getWeight())); @@ -205,10 +205,10 @@ void AscendCompiler::lowerOp(Conv2DOp op) { auto output = AscendValue(conv2DOp, outType, "y"); - if (op._add_to_output()) { + if (op.get_addToOutput()) { auto addOp = createOp(op.getOpName() + "_add_to_output"); SET_INPUT(addOp, x1, output); - SET_INPUT(addOp, x2, getValue(op._add_to_output())); + SET_INPUT(addOp, x2, getValue(op.get_addToOutput())); addOp->update_output_desc_y(outType); output = AscendValue(addOp, outType, "y"); } @@ -229,10 +229,10 @@ void AscendCompiler::lowerOp(NormalizationInferenceOp op) { batchNormOp->update_output_desc_y(outType); auto output = AscendValue(batchNormOp, outType, "y"); - if (op._add_to_output()) { + if (op.get_addToOutput()) { auto addOp = createOp(op.getOpName() + "_add_to_output"); SET_INPUT(addOp, x1, output); - SET_INPUT(addOp, x2, getValue(op._add_to_output())); + SET_INPUT(addOp, x2, getValue(op.get_addToOutput())); addOp->update_output_desc_y(outType); output = AscendValue(addOp, outType, "y"); } @@ -252,7 +252,7 @@ void AscendCompiler::lowerOp(MaxPool2DOp op) { maxPoolOp->set_attr_ksize(convertKernelSize(op.getKernelSize())); maxPoolOp->set_attr_pads(convertPaddings(op.getPadding())); maxPoolOp->set_attr_strides(convertStrides(op.getStride())); - maxPoolOp->set_attr_ceil_mode(op.ceil_mode()); + maxPoolOp->set_attr_ceil_mode(op.getCeilMode()); maxPoolOp->set_attr_padding_mode("CALCULATED"); maxPoolOp->set_attr_global_pooling(false); @@ -267,10 +267,10 @@ void AscendCompiler::lowerOp(AvgPool2DOp op) { avgPoolOp->set_attr_ksize(convertKernelSize(op.getKernelSize())); avgPoolOp->set_attr_pads(convertPaddings(op.getPadding())); avgPoolOp->set_attr_strides(convertStrides(op.getStride())); - avgPoolOp->set_attr_ceil_mode(op.ceil_mode()); + avgPoolOp->set_attr_ceil_mode(op.getCeilMode()); avgPoolOp->set_attr_padding_mode("CALCULATED"); avgPoolOp->set_attr_global_pooling(false); - avgPoolOp->set_attr_exclusive(!op.count_include_pad()); + avgPoolOp->set_attr_exclusive(!op.getCountIncludePad()); SET_INPUT(avgPoolOp, x, getValue(op.getX())); auto outType = convertAscendType(op.getY().getType()); @@ -289,7 +289,7 @@ void AscendCompiler::lowerOp(Add2Op op) { void AscendCompiler::lowerOp(AdaptiveAvgPool2DOp op) { auto adaptiveAvgPoolOp = createOp(op.getOpName()); - ArrayAttr output_size = op.output_size(); + ArrayAttr output_size = op.getOutputSize(); assert(output_size.size() == 2); int64_t s0 = output_size[0].dyn_cast().getSInt(); int64_t s1 = output_size[1].dyn_cast().getSInt(); @@ -311,10 +311,10 @@ void AscendCompiler::lowerOp(MatmulOp op) { matmulOp->update_output_desc_y(outType); auto output = AscendValue(matmulOp, outType, "y"); - if (op._add_to_output()) { + if (op.get_addToOutput()) { auto addOp = createOp(op.getOpName() + "_add_to_output"); SET_INPUT(addOp, x1, output); - SET_INPUT(addOp, x2, getValue(op._add_to_output())); + SET_INPUT(addOp, x2, getValue(op.get_addToOutput())); addOp->update_output_desc_y(outType); output = AscendValue(addOp, outType, "y"); } From 1cf5124f0b6346182556be2e3ada3ffb6b9825d8 Mon Sep 17 00:00:00 2001 From: Kunyang Zhou <118790294+zkyseu@users.noreply.github.com> Date: Mon, 27 Nov 2023 09:55:38 +0800 Subject: [PATCH 2/3] Update .gitignore --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index 912859d0f24..cb311c93225 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ /build -/build1 /build-* /docs/build/ /docs/build-cn/ From 6e3d443f17374f15d9276fdd9a53b52ceb566f70 Mon Sep 17 00:00:00 2001 From: Kunyang Zhou <118790294+zkyseu@users.noreply.github.com> Date: Mon, 27 Nov 2023 09:56:34 +0800 Subject: [PATCH 3/3] Update cpu.cmake --- cmake/caches/cn/cpu.cmake | 1 - 1 file changed, 1 deletion(-) diff --git a/cmake/caches/cn/cpu.cmake b/cmake/caches/cn/cpu.cmake index 6fff5d3493e..d13fffb7dc1 100644 --- a/cmake/caches/cn/cpu.cmake +++ b/cmake/caches/cn/cpu.cmake @@ -1,4 +1,3 @@ set(BUILD_CUDA NO CACHE BOOL "") -set(BUILD_SHARED_LIBS YES CACHE BOOL "") set(THIRD_PARTY_MIRROR aliyun CACHE STRING "") set(PIP_INDEX_MIRROR "https://pypi.tuna.tsinghua.edu.cn/simple" CACHE STRING "")