From ed40cab8af4f06858d30043cdf76b9dd878fe6fc Mon Sep 17 00:00:00 2001 From: Ch_confuse <1532701447@qq.com> Date: Fri, 6 Sep 2024 14:19:38 +0800 Subject: [PATCH 1/2] update --- .../AclNNInvocation/README.md | 54 + .../AclNNInvocation/build/CMakeCache.txt | 369 +++++ .../CMakeFiles/3.22.1/CMakeCCompiler.cmake | 72 + .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 9024 bytes .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 9048 bytes .../build/CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../3.22.1/CompilerIdC/CMakeCCompilerId.c | 803 +++++++++++ .../build/CMakeFiles/3.22.1/CompilerIdC/a.out | Bin 0 -> 9168 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 9176 bytes .../CMakeDirectoryInformation.cmake | 16 + .../build/CMakeFiles/CMakeOutput.log | 437 ++++++ .../build/CMakeFiles/Makefile.cmake | 122 ++ .../build/CMakeFiles/Makefile2 | 112 ++ .../build/CMakeFiles/TargetDirectories.txt | 7 + .../build/CMakeFiles/cmake.check_cache | 1 + .../execute_add_op.dir/DependInfo.cmake | 22 + .../CMakeFiles/execute_add_op.dir/build.make | 158 +++ .../execute_add_op.dir/cmake_clean.cmake | 17 + .../execute_add_op.dir/common.cpp.o | Bin 0 -> 15344 bytes .../execute_add_op.dir/common.cpp.o.d | 197 +++ .../execute_add_op.dir/compiler_depend.make | 2 + .../execute_add_op.dir/compiler_depend.ts | 2 + .../CMakeFiles/execute_add_op.dir/depend.make | 2 + .../CMakeFiles/execute_add_op.dir/flags.make | 10 + .../CMakeFiles/execute_add_op.dir/link.txt | 1 + .../CMakeFiles/execute_add_op.dir/main.cpp.o | Bin 0 -> 51864 bytes .../execute_add_op.dir/main.cpp.o.d | 197 +++ .../execute_add_op.dir/op_runner.cpp.o | Bin 0 -> 209048 bytes .../execute_add_op.dir/op_runner.cpp.o.d | 182 +++ .../execute_add_op.dir/operator_desc.cpp.o | Bin 0 -> 57816 bytes .../execute_add_op.dir/operator_desc.cpp.o.d | 175 +++ .../execute_add_op.dir/progress.make | 6 + .../build/CMakeFiles/progress.marks | 1 + .../AclNNInvocation/build/Makefile | 311 +++++ .../AclNNInvocation/build/cmake_install.cmake | 74 + .../AclNNInvocation/inc/common.h | 45 + .../AclNNInvocation/inc/op_runner.h | 180 +++ .../AclNNInvocation/inc/operator_desc.h | 57 + .../AclNNInvocation/input/.keep | 0 .../AclNNInvocation/input/input_x.bin | Bin 0 -> 262144 bytes .../AclNNInvocation/input/input_y.bin | Bin 0 -> 262144 bytes .../AclNNInvocation/output/.keep | 0 .../ArithmeticUtilization.csv | 2 +- .../L2Cache.csv | 2 + .../Memory.csv | 2 + .../MemoryL0.csv | 2 +- .../MemoryUB.csv | 2 +- .../OpBasicInfo.csv | 2 + .../PipeUtilization.csv | 2 +- .../ResourceConflictRatio.csv | 2 +- .../dump/DeviceProf1.bin | Bin 0 -> 128 bytes .../dump/DeviceProf2.bin | Bin 0 -> 128 bytes .../dump/DeviceProf3.bin | Bin 0 -> 128 bytes .../dump/DeviceProf4.bin | Bin 0 -> 128 bytes .../dump/DeviceProf5.bin | Bin 0 -> 128 bytes .../dump/DeviceProf6.bin | Bin 0 -> 128 bytes .../dump/DeviceProf7.bin | Bin 0 -> 128 bytes .../dump/duration.bin | Bin 0 -> 128 bytes .../dump/op_basic_info.txt | 0 .../visualize_data.bin | Bin 0 -> 4952 bytes .../AclNNInvocation/output/execute_add_op | Bin 0 -> 165808 bytes .../AclNNInvocation/output/golden.bin | Bin 0 -> 262144 bytes .../AclNNInvocation/output/output_z.bin | Bin 0 -> 262144 bytes Increase_Bedore_pipe/AclNNInvocation/run.sh | 120 ++ .../AclNNInvocation/scripts/acl.json | 1 + .../AclNNInvocation/scripts/gen_data.py | 25 + .../AclNNInvocation/scripts/get_time.py | 31 + .../AclNNInvocation/scripts/verify_result.py | 40 + .../AclNNInvocation/src/CMakeLists.txt | 67 + .../AclNNInvocation/src/common.cpp | 80 ++ .../AclNNInvocation/src/main.cpp | 162 +++ .../AclNNInvocation/src/op_runner.cpp | 453 +++++++ .../AclNNInvocation/src/operator_desc.cpp | 51 + .../Is_increase/CMakeLists.txt | 69 + .../Is_increase/CMakePresets.json | 63 + Increase_Bedore_pipe/Is_increase/build.sh | 37 + .../Is_increase/build_out/CMakeCache.txt | 425 ++++++ .../CMakeFiles/3.22.1/CMakeCCompiler.cmake | 72 + .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 9024 bytes .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 9048 bytes .../CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../3.22.1/CompilerIdC/CMakeCCompilerId.c | 803 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdC/a.out | Bin 0 -> 9168 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 9176 bytes .../CMakeDirectoryInformation.cmake | 16 + .../build_out/CMakeFiles/CMakeOutput.log | 437 ++++++ .../build_out/CMakeFiles/CMakeRuleHashes.txt | 33 + .../build_out/CMakeFiles/Makefile.cmake | 167 +++ .../build_out/CMakeFiles/Makefile2 | 976 ++++++++++++++ .../CMakeFiles/TargetDirectories.txt | 70 + .../build_out/CMakeFiles/cmake.check_cache | 1 + .../gen_version_info.dir/DependInfo.cmake | 18 + .../gen_version_info.dir/build.make | 87 ++ .../gen_version_info.dir/cmake_clean.cmake | 8 + .../gen_version_info.dir/compiler_depend.make | 2 + .../gen_version_info.dir/compiler_depend.ts | 2 + .../gen_version_info.dir/progress.make | 1 + .../modify_vendor.dir/DependInfo.cmake | 24 + .../CMakeFiles/modify_vendor.dir/build.make | 98 ++ .../modify_vendor.dir/cmake_clean.cmake | 10 + .../modify_vendor.dir/compiler_depend.make | 2 + .../modify_vendor.dir/compiler_depend.ts | 2 + .../modify_vendor.dir/progress.make | 2 + .../build_out/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/CPackConfig.cmake | 71 + .../build_out/CPackSourceConfig.cmake | 79 ++ .../Is_increase/build_out/Makefile | 631 +++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../custom_opp_ubuntu_aarch64.run | 972 ++++++++++++++ .../custom_opp_ubuntu_aarch64.run/install.sh | 318 +++++ .../packages/vendors/customize/version.info | 1 + .../custom_opp_ubuntu_aarch64.run/upgrade.sh | 151 +++ .../build_out/autogen/aclnn_add_custom.cpp | 199 +++ .../build_out/autogen}/aclnn_add_custom.h | 0 .../autogen/aic-ascend310b-ops-info.ini | 24 + .../autogen/aic-ascend310p-ops-info.ini | 24 + .../autogen/aic-ascend910-ops-info.ini | 24 + .../autogen/aic-ascend910b-ops-info.ini | 24 + .../autogen/custom_compile_options.ini | 0 .../build_out/autogen/libascend_all_ops.so | Bin 0 -> 988080 bytes .../Is_increase/build_out/autogen/op_proto.cc | 5 + .../Is_increase/build_out/autogen}/op_proto.h | 0 .../Is_increase/build_out/cmake_install.cmake | 81 ++ .../build_out/custom_opp_ubuntu_aarch64.run | 972 ++++++++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../CMakeDirectoryInformation.cmake | 16 + .../framework/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/framework/Makefile | 211 +++ .../build_out/framework/cmake_install.cmake | 49 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_tf_parsers.dir/DependInfo.cmake | 19 + .../CMakeFiles/cust_tf_parsers.dir/build.make | 110 ++ .../cust_tf_parsers.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 225 ++++ .../cust_tf_parsers.dir/compiler_depend.make | 650 +++++++++ .../cust_tf_parsers.dir/compiler_depend.ts | 2 + .../cust_tf_parsers.dir/depend.make | 2 + .../CMakeFiles/cust_tf_parsers.dir/flags.make | 10 + .../CMakeFiles/cust_tf_parsers.dir/link.txt | 1 + .../cust_tf_parsers.dir/progress.make | 3 + .../tensorflow_add_custom_plugin.cc.o | Bin 0 -> 10480 bytes .../tensorflow_add_custom_plugin.cc.o.d | 184 +++ .../tf_plugin/CMakeFiles/progress.marks | 1 + .../build_out/framework/tf_plugin/Makefile | 253 ++++ .../framework/tf_plugin/cmake_install.cmake | 67 + .../tf_plugin}/libcust_tf_parsers.so | Bin 10160 -> 10160 bytes .../build_out/install_manifest.txt | 33 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_op_proto.dir/DependInfo.cmake | 20 + .../__/autogen/op_proto.cc.o | Bin 0 -> 62752 bytes .../__/autogen/op_proto.cc.o.d | 252 ++++ .../cust_op_proto.dir/add_custom.cpp.o | Bin 0 -> 79504 bytes .../cust_op_proto.dir/add_custom.cpp.o.d | 256 ++++ .../CMakeFiles/cust_op_proto.dir/build.make | 126 ++ .../cust_op_proto.dir/cmake_clean.cmake | 13 + .../compiler_depend.internal | 603 +++++++++ .../cust_op_proto.dir/compiler_depend.make | 1167 ++++++++++++++++ .../cust_op_proto.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_op_proto.dir/depend.make | 2 + .../CMakeFiles/cust_op_proto.dir/flags.make | 10 + .../CMakeFiles/cust_op_proto.dir/link.txt | 1 + .../cust_op_proto.dir/progress.make | 4 + .../cust_opapi.dir/DependInfo.cmake | 19 + .../__/autogen/aclnn_add_custom.cpp.o | Bin 0 -> 12032 bytes .../__/autogen/aclnn_add_custom.cpp.o.d | 142 ++ .../CMakeFiles/cust_opapi.dir/build.make | 110 ++ .../cust_opapi.dir/cmake_clean.cmake | 11 + .../cust_opapi.dir/compiler_depend.internal | 170 +++ .../cust_opapi.dir/compiler_depend.make | 499 +++++++ .../cust_opapi.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_opapi.dir/depend.make | 2 + .../CMakeFiles/cust_opapi.dir/flags.make | 10 + .../CMakeFiles/cust_opapi.dir/link.txt | 1 + .../CMakeFiles/cust_opapi.dir/progress.make | 3 + .../cust_optiling.dir/DependInfo.cmake | 19 + .../cust_optiling.dir/add_custom.cpp.o | Bin 0 -> 84056 bytes .../cust_optiling.dir/add_custom.cpp.o.d | 256 ++++ .../CMakeFiles/cust_optiling.dir/build.make | 110 ++ .../cust_optiling.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 305 +++++ .../cust_optiling.dir/compiler_depend.make | 866 ++++++++++++ .../cust_optiling.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_optiling.dir/depend.make | 2 + .../CMakeFiles/cust_optiling.dir/flags.make | 10 + .../CMakeFiles/cust_optiling.dir/link.txt | 1 + .../cust_optiling.dir/progress.make | 3 + .../optiling_compat.dir/DependInfo.cmake | 18 + .../CMakeFiles/optiling_compat.dir/build.make | 87 ++ .../optiling_compat.dir/cmake_clean.cmake | 8 + .../optiling_compat.dir/compiler_depend.make | 2 + .../optiling_compat.dir/compiler_depend.ts | 2 + .../optiling_compat.dir/progress.make | 1 + .../op_host/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/op_host/Makefile | 355 +++++ .../build_out/op_host/cmake_install.cmake | 125 ++ .../build_out/op_host}/libcust_opapi.so | Bin 10360 -> 10360 bytes .../op_host}/libcust_opmaster_rt2.0.so | Bin 96200 -> 96200 bytes .../op_host}/libcust_opsproto_rt2.0.so | Bin 104392 -> 104392 bytes .../CMakeDirectoryInformation.cmake | 16 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310p.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310p.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../ascendc_impl_gen.dir/DependInfo.cmake | 18 + .../ascendc_impl_gen.dir/build.make | 95 ++ .../ascendc_impl_gen.dir/cmake_clean.cmake | 9 + .../ascendc_impl_gen.dir/compiler_depend.make | 2 + .../ascendc_impl_gen.dir/compiler_depend.ts | 2 + .../ascendc_impl_gen.dir/progress.make | 2 + .../CMakeFiles/binary.dir/DependInfo.cmake | 18 + .../CMakeFiles/binary.dir/build.make | 83 ++ .../CMakeFiles/binary.dir/cmake_clean.cmake | 5 + .../binary.dir/compiler_depend.make | 2 + .../CMakeFiles/binary.dir/compiler_depend.ts | 2 + .../CMakeFiles/binary.dir/progress.make | 1 + .../npu_supported_ops.dir/DependInfo.cmake | 18 + .../npu_supported_ops.dir/build.make | 92 ++ .../npu_supported_ops.dir/cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../npu_supported_ops.dir/compiler_depend.ts | 2 + .../npu_supported_ops.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310b.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310p.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310p.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910b.dir/progress.make | 2 + .../op_kernel/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/op_kernel/Makefile | 556 ++++++++ .../binary/ascend310b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 4 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 3064 bytes .../ascend310b/bin}/binary_info_config.json | 0 .../ascend310b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310b/src/AddCustom.py | 0 .../binary/ascend310b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend310b/src/add_custom.cpp | 62 + .../binary/ascend310p/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 5200 bytes .../ascend310p/bin}/binary_info_config.json | 0 .../ascend310p/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310p/src/AddCustom.py | 0 .../binary/ascend310p/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend310p/src/add_custom.cpp | 62 + .../binary/ascend910/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 2632 bytes .../ascend910/bin}/binary_info_config.json | 0 .../ascend910/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910/src/AddCustom.py | 0 .../binary/ascend910/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5346 bytes .../binary/ascend910/src/add_custom.cpp | 62 + .../binary/ascend910b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 4 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5504 -> 5504 bytes .../ascend910b/bin}/binary_info_config.json | 0 .../ascend910b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910b/src/AddCustom.py | 0 .../binary/ascend910b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend910b/src/add_custom.cpp | 62 + .../build_out/op_kernel/cmake_install.cmake | 120 ++ .../build_out/op_kernel/tbe/.impl_timestamp | 0 .../op_kernel/tbe}/dynamic/add_custom.py | 0 .../ascend310b/aic-ascend310b-ops-info.json | 0 .../ascend310p/aic-ascend310p-ops-info.json | 0 .../ascend910/aic-ascend910-ops-info.json | 0 .../ascend910b/aic-ascend910b-ops-info.json | 0 .../ai_core}/npu_supported_ops.json | 0 .../Is_increase/build_out/scripts/install.sh | 318 +++++ .../Is_increase/build_out/scripts/upgrade.sh | 151 +++ .../Is_increase/build_out/version.info | 1 + .../Is_increase/cmake/config.cmake | 25 + .../Is_increase/cmake/func.cmake | 228 ++++ .../Is_increase/cmake/intf.cmake | 26 + .../Is_increase/cmake/makeself.cmake | 17 + .../Is_increase/cmake/util/__init__.py | 8 + .../util/__pycache__/const_var.cpython-39.pyc | Bin 0 -> 1120 bytes .../__pycache__/opdesc_parser.cpython-39.pyc | Bin 0 -> 8220 bytes .../cmake/util/ascendc_bin_param_build.py | 129 ++ .../cmake/util/ascendc_impl_build.py | 446 ++++++ .../cmake/util/ascendc_ops_config.py | 114 ++ .../cmake/util/ascendc_replay_build.py | 65 + .../cmake/util/batch_replay_impl.temp | 117 ++ .../cmake/util/code_channel_infer.py | 115 ++ .../Is_increase/cmake/util/const_var.py | 33 + .../cmake/util/gen_impl_and_mrege_json.sh | 57 + .../Is_increase/cmake/util/gen_ops_filter.sh | 62 + .../cmake/util/gen_version_info.sh | 6 + .../Is_increase/cmake/util/insert_op_info.py | 36 + .../cmake/util/insert_simplified_keys.py | 248 ++++ .../Is_increase/cmake/util/kernel_entry.py | 115 ++ .../Is_increase/cmake/util/kernel_impl.temp | 10 + .../Is_increase/cmake/util/makeself/COPYING | 339 +++++ .../Is_increase/cmake/util/makeself/README.md | 246 ++++ .../Is_increase/cmake/util/makeself/VERSION | 1 + .../cmake/util/makeself/make-release.sh | 9 + .../cmake/util/makeself/makeself-header.sh | 660 +++++++++ .../cmake/util/makeself/makeself.1 | 110 ++ .../cmake/util/makeself/makeself.lsm | 16 + .../cmake/util/makeself/makeself.sh | 822 ++++++++++++ .../cmake/util/makeself/run-tests.sh | 8 + .../cmake/util/merge_aicpu_info_json.sh | 31 + .../Is_increase/cmake/util/opdesc_parser.py | 260 ++++ .../cmake/util/parse_ini_to_json.py | 338 +++++ .../Is_increase/cmake/util/preset_parse.py | 23 + .../Is_increase/cmake/util/replay_codegen.py | 105 ++ .../Is_increase/cmake/util/replay_impl.temp | 120 ++ .../cmake/util/tiling_data_def_build.py | 84 ++ .../Is_increase/framework/CMakeLists.txt | 11 + .../framework/tf_plugin/CMakeLists.txt | 14 + .../tf_plugin/tensorflow_add_custom_plugin.cc | 23 + .../Is_increase/op_host/CMakeLists.txt | 82 ++ .../Is_increase/op_host/add_custom.cpp | 75 ++ .../Is_increase/op_host/add_custom_tiling.h | 22 + .../Is_increase/op_kernel/CMakeLists.txt | 61 + .../Is_increase/op_kernel/add_custom.cpp | 62 + .../output/AddCustom_case_20240821114242.json | 58 + .../Is_increase/scripts/install.sh | 318 +++++ .../Is_increase/scripts/upgrade.sh | 151 +++ .../No_increase/CMakeLists.txt | 69 + .../No_increase/CMakePresets.json | 63 + Increase_Bedore_pipe/No_increase/build.sh | 37 + .../No_increase/build_out/CMakeCache.txt | 425 ++++++ .../CMakeFiles/3.22.1/CMakeCCompiler.cmake | 72 + .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 9024 bytes .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 9048 bytes .../CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../3.22.1/CompilerIdC/CMakeCCompilerId.c | 803 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdC/a.out | Bin 0 -> 9168 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 9176 bytes .../CMakeDirectoryInformation.cmake | 16 + .../build_out/CMakeFiles/CMakeOutput.log | 437 ++++++ .../build_out/CMakeFiles/CMakeRuleHashes.txt | 33 + .../build_out/CMakeFiles/Makefile.cmake | 167 +++ .../build_out/CMakeFiles/Makefile2 | 976 ++++++++++++++ .../CMakeFiles/TargetDirectories.txt | 70 + .../build_out/CMakeFiles/cmake.check_cache | 1 + .../gen_version_info.dir/DependInfo.cmake | 18 + .../gen_version_info.dir/build.make | 87 ++ .../gen_version_info.dir/cmake_clean.cmake | 8 + .../gen_version_info.dir/compiler_depend.make | 2 + .../gen_version_info.dir/compiler_depend.ts | 2 + .../gen_version_info.dir/progress.make | 1 + .../modify_vendor.dir/DependInfo.cmake | 24 + .../CMakeFiles/modify_vendor.dir/build.make | 98 ++ .../modify_vendor.dir/cmake_clean.cmake | 10 + .../modify_vendor.dir/compiler_depend.make | 2 + .../modify_vendor.dir/compiler_depend.ts | 2 + .../modify_vendor.dir/progress.make | 2 + .../build_out/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/CPackConfig.cmake | 71 + .../build_out/CPackSourceConfig.cmake | 79 ++ .../No_increase/build_out/Makefile | 631 +++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../custom_opp_ubuntu_aarch64.run | 953 +++++++++++++ .../custom_opp_ubuntu_aarch64.run/install.sh | 318 +++++ .../packages/vendors/customize/version.info | 1 + .../custom_opp_ubuntu_aarch64.run/upgrade.sh | 151 +++ .../build_out/autogen/aclnn_add_custom.cpp | 199 +++ .../build_out/autogen}/aclnn_add_custom.h | 0 .../autogen/aic-ascend310b-ops-info.ini | 24 + .../autogen/aic-ascend310p-ops-info.ini | 24 + .../autogen/aic-ascend910-ops-info.ini | 24 + .../autogen/aic-ascend910b-ops-info.ini | 24 + .../autogen/custom_compile_options.ini | 0 .../build_out/autogen/libascend_all_ops.so | Bin 0 -> 988080 bytes .../No_increase/build_out/autogen/op_proto.cc | 5 + .../No_increase/build_out/autogen}/op_proto.h | 0 .../No_increase/build_out/cmake_install.cmake | 81 ++ .../build_out/custom_opp_ubuntu_aarch64.run | 953 +++++++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../CMakeDirectoryInformation.cmake | 16 + .../framework/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/framework/Makefile | 211 +++ .../build_out/framework/cmake_install.cmake | 49 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_tf_parsers.dir/DependInfo.cmake | 19 + .../CMakeFiles/cust_tf_parsers.dir/build.make | 110 ++ .../cust_tf_parsers.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 225 ++++ .../cust_tf_parsers.dir/compiler_depend.make | 650 +++++++++ .../cust_tf_parsers.dir/compiler_depend.ts | 2 + .../cust_tf_parsers.dir/depend.make | 2 + .../CMakeFiles/cust_tf_parsers.dir/flags.make | 10 + .../CMakeFiles/cust_tf_parsers.dir/link.txt | 1 + .../cust_tf_parsers.dir/progress.make | 3 + .../tensorflow_add_custom_plugin.cc.o | Bin 0 -> 10480 bytes .../tensorflow_add_custom_plugin.cc.o.d | 184 +++ .../tf_plugin/CMakeFiles/progress.marks | 1 + .../build_out/framework/tf_plugin/Makefile | 253 ++++ .../framework/tf_plugin/cmake_install.cmake | 67 + .../tf_plugin}/libcust_tf_parsers.so | Bin 10160 -> 10160 bytes .../build_out/install_manifest.txt | 33 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_op_proto.dir/DependInfo.cmake | 20 + .../__/autogen/op_proto.cc.o | Bin 0 -> 62752 bytes .../__/autogen/op_proto.cc.o.d | 252 ++++ .../cust_op_proto.dir/add_custom.cpp.o | Bin 0 -> 79504 bytes .../cust_op_proto.dir/add_custom.cpp.o.d | 256 ++++ .../CMakeFiles/cust_op_proto.dir/build.make | 126 ++ .../cust_op_proto.dir/cmake_clean.cmake | 13 + .../compiler_depend.internal | 603 +++++++++ .../cust_op_proto.dir/compiler_depend.make | 1167 ++++++++++++++++ .../cust_op_proto.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_op_proto.dir/depend.make | 2 + .../CMakeFiles/cust_op_proto.dir/flags.make | 10 + .../CMakeFiles/cust_op_proto.dir/link.txt | 1 + .../cust_op_proto.dir/progress.make | 4 + .../cust_opapi.dir/DependInfo.cmake | 19 + .../__/autogen/aclnn_add_custom.cpp.o | Bin 0 -> 12032 bytes .../__/autogen/aclnn_add_custom.cpp.o.d | 142 ++ .../CMakeFiles/cust_opapi.dir/build.make | 110 ++ .../cust_opapi.dir/cmake_clean.cmake | 11 + .../cust_opapi.dir/compiler_depend.internal | 170 +++ .../cust_opapi.dir/compiler_depend.make | 499 +++++++ .../cust_opapi.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_opapi.dir/depend.make | 2 + .../CMakeFiles/cust_opapi.dir/flags.make | 10 + .../CMakeFiles/cust_opapi.dir/link.txt | 1 + .../CMakeFiles/cust_opapi.dir/progress.make | 3 + .../cust_optiling.dir/DependInfo.cmake | 19 + .../cust_optiling.dir/add_custom.cpp.o | Bin 0 -> 84056 bytes .../cust_optiling.dir/add_custom.cpp.o.d | 256 ++++ .../CMakeFiles/cust_optiling.dir/build.make | 110 ++ .../cust_optiling.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 305 +++++ .../cust_optiling.dir/compiler_depend.make | 866 ++++++++++++ .../cust_optiling.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_optiling.dir/depend.make | 2 + .../CMakeFiles/cust_optiling.dir/flags.make | 10 + .../CMakeFiles/cust_optiling.dir/link.txt | 1 + .../cust_optiling.dir/progress.make | 3 + .../optiling_compat.dir/DependInfo.cmake | 18 + .../CMakeFiles/optiling_compat.dir/build.make | 87 ++ .../optiling_compat.dir/cmake_clean.cmake | 8 + .../optiling_compat.dir/compiler_depend.make | 2 + .../optiling_compat.dir/compiler_depend.ts | 2 + .../optiling_compat.dir/progress.make | 1 + .../op_host/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/op_host/Makefile | 355 +++++ .../build_out/op_host/cmake_install.cmake | 125 ++ .../build_out/op_host}/libcust_opapi.so | Bin 10360 -> 10360 bytes .../op_host/libcust_opmaster_rt2.0.so | Bin 96200 -> 96200 bytes .../op_host}/libcust_opsproto_rt2.0.so | Bin 104392 -> 104392 bytes .../CMakeDirectoryInformation.cmake | 16 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310p.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310p.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../ascendc_impl_gen.dir/DependInfo.cmake | 18 + .../ascendc_impl_gen.dir/build.make | 95 ++ .../ascendc_impl_gen.dir/cmake_clean.cmake | 9 + .../ascendc_impl_gen.dir/compiler_depend.make | 2 + .../ascendc_impl_gen.dir/compiler_depend.ts | 2 + .../ascendc_impl_gen.dir/progress.make | 2 + .../CMakeFiles/binary.dir/DependInfo.cmake | 18 + .../CMakeFiles/binary.dir/build.make | 83 ++ .../CMakeFiles/binary.dir/cmake_clean.cmake | 5 + .../binary.dir/compiler_depend.make | 2 + .../CMakeFiles/binary.dir/compiler_depend.ts | 2 + .../CMakeFiles/binary.dir/progress.make | 1 + .../npu_supported_ops.dir/DependInfo.cmake | 18 + .../npu_supported_ops.dir/build.make | 92 ++ .../npu_supported_ops.dir/cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../npu_supported_ops.dir/compiler_depend.ts | 2 + .../npu_supported_ops.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310b.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310p.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310p.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910b.dir/progress.make | 2 + .../op_kernel/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/op_kernel/Makefile | 556 ++++++++ .../binary/ascend310b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 22 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 3456 bytes .../ascend310b/bin}/binary_info_config.json | 0 .../ascend310b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310b/src/AddCustom.py | 0 .../binary/ascend310b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend310b/src}/add_custom.cpp | 29 +- .../binary/ascend310p/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 5200 bytes .../ascend310p/bin}/binary_info_config.json | 0 .../ascend310p/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310p/src/AddCustom.py | 0 .../binary/ascend310p/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend310p/src}/add_custom.cpp | 25 +- .../binary/ascend910/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 2904 bytes .../ascend910/bin}/binary_info_config.json | 0 .../ascend910/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910/src/AddCustom.py | 152 +++ .../binary/ascend910/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5346 bytes .../binary/ascend910/src/add_custom.cpp | 61 + .../binary/ascend910b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 22 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5504 -> 5504 bytes .../ascend910b/bin}/binary_info_config.json | 0 .../ascend910b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910b/src/AddCustom.py | 152 +++ .../binary/ascend910b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend910b/src/add_custom.cpp | 61 + .../build_out/op_kernel/cmake_install.cmake | 120 ++ .../build_out/op_kernel/tbe/.impl_timestamp | 0 .../op_kernel/tbe/dynamic/add_custom.py | 152 +++ .../ascend310b/aic-ascend310b-ops-info.json | 0 .../ascend310p/aic-ascend310p-ops-info.json | 0 .../ascend910/aic-ascend910-ops-info.json | 0 .../ascend910b/aic-ascend910b-ops-info.json | 0 .../ai_core}/npu_supported_ops.json | 0 .../No_increase/build_out/scripts/install.sh | 318 +++++ .../No_increase/build_out/scripts/upgrade.sh | 151 +++ .../No_increase/build_out/version.info | 1 + .../No_increase/cmake/config.cmake | 25 + .../No_increase/cmake/func.cmake | 228 ++++ .../No_increase/cmake/intf.cmake | 26 + .../No_increase/cmake/makeself.cmake | 17 + .../No_increase/cmake/util/__init__.py | 8 + .../util/__pycache__/const_var.cpython-39.pyc | Bin 0 -> 1120 bytes .../__pycache__/opdesc_parser.cpython-39.pyc | Bin 0 -> 8220 bytes .../cmake/util/ascendc_bin_param_build.py | 129 ++ .../cmake/util/ascendc_impl_build.py | 446 ++++++ .../cmake/util/ascendc_ops_config.py | 114 ++ .../cmake/util/ascendc_replay_build.py | 65 + .../cmake/util/batch_replay_impl.temp | 117 ++ .../cmake/util/code_channel_infer.py | 115 ++ .../No_increase/cmake/util/const_var.py | 33 + .../cmake/util/gen_impl_and_mrege_json.sh | 57 + .../No_increase/cmake/util/gen_ops_filter.sh | 62 + .../cmake/util/gen_version_info.sh | 6 + .../No_increase/cmake/util/insert_op_info.py | 36 + .../cmake/util/insert_simplified_keys.py | 248 ++++ .../No_increase/cmake/util/kernel_entry.py | 115 ++ .../No_increase/cmake/util/kernel_impl.temp | 10 + .../No_increase/cmake/util/makeself/COPYING | 339 +++++ .../No_increase/cmake/util/makeself/README.md | 246 ++++ .../No_increase/cmake/util/makeself/VERSION | 1 + .../cmake/util/makeself/make-release.sh | 9 + .../cmake/util/makeself/makeself-header.sh | 660 +++++++++ .../cmake/util/makeself/makeself.1 | 110 ++ .../cmake/util/makeself/makeself.lsm | 16 + .../cmake/util/makeself/makeself.sh | 822 ++++++++++++ .../cmake/util/makeself/run-tests.sh | 8 + .../cmake/util/merge_aicpu_info_json.sh | 31 + .../No_increase/cmake/util/opdesc_parser.py | 260 ++++ .../cmake/util/parse_ini_to_json.py | 338 +++++ .../No_increase/cmake/util/preset_parse.py | 23 + .../No_increase/cmake/util/replay_codegen.py | 105 ++ .../No_increase/cmake/util/replay_impl.temp | 120 ++ .../cmake/util/tiling_data_def_build.py | 84 ++ .../No_increase/framework/CMakeLists.txt | 11 + .../framework/tf_plugin/CMakeLists.txt | 14 + .../tf_plugin/tensorflow_add_custom_plugin.cc | 23 + .../No_increase/op_host/CMakeLists.txt | 82 ++ .../No_increase/op_host/add_custom.cpp | 75 ++ .../No_increase/op_host/add_custom_tiling.h | 22 + .../No_increase/op_kernel/CMakeLists.txt | 61 + .../No_increase/op_kernel/add_custom.cpp | 61 + .../output/AddCustom_case_20240821114242.json | 58 + .../No_increase/scripts/install.sh | 318 +++++ .../No_increase/scripts/upgrade.sh | 151 +++ Increase_Bedore_pipe/README.md | 110 ++ .../AclNNInvocation/build/CMakeCache.txt | 10 +- .../CMakeDirectoryInformation.cmake | 4 +- .../build/CMakeFiles/CMakeOutput.log | 144 +- .../build/CMakeFiles/Makefile.cmake | 2 +- .../build/CMakeFiles/Makefile2 | 10 +- .../build/CMakeFiles/TargetDirectories.txt | 14 +- .../execute_add_op.dir/DependInfo.cmake | 8 +- .../CMakeFiles/execute_add_op.dir/build.make | 62 +- .../execute_add_op.dir/cmake_clean.cmake | 4 +- .../execute_add_op.dir/common.cpp.o.d | 6 +- .../CMakeFiles/execute_add_op.dir/flags.make | 2 +- .../CMakeFiles/execute_add_op.dir/link.txt | 2 +- .../CMakeFiles/execute_add_op.dir/main.cpp.o | Bin 51864 -> 51864 bytes .../execute_add_op.dir/main.cpp.o.d | 14 +- .../execute_add_op.dir/op_runner.cpp.o | Bin 209000 -> 209048 bytes .../execute_add_op.dir/op_runner.cpp.o.d | 14 +- .../execute_add_op.dir/operator_desc.cpp.o.d | 6 +- .../AclNNInvocation/build/Makefile | 8 +- .../AclNNInvocation/build/cmake_install.cmake | 6 +- .../AclNNInvocation/input/input_x.bin | Bin 65536 -> 262144 bytes .../AclNNInvocation/input/input_y.bin | Bin 65536 -> 262144 bytes .../ArithmeticUtilization.csv | 2 + .../L2Cache.csv | 2 +- .../Memory.csv | 2 +- .../MemoryL0.csv | 2 + .../MemoryUB.csv | 2 + .../OpBasicInfo.csv | 2 +- .../PipeUtilization.csv | 2 + .../ResourceConflictRatio.csv | 2 + .../dump/DeviceProf1.bin | Bin 0 -> 128 bytes .../dump/DeviceProf2.bin | Bin 0 -> 128 bytes .../dump/DeviceProf3.bin | Bin 0 -> 128 bytes .../dump/DeviceProf4.bin | Bin 0 -> 128 bytes .../dump/DeviceProf5.bin | Bin 0 -> 128 bytes .../dump/DeviceProf6.bin | Bin 0 -> 128 bytes .../dump/DeviceProf7.bin | Bin 0 -> 128 bytes .../dump/duration.bin | Bin 0 -> 128 bytes .../dump/op_basic_info.txt | 3 + .../visualize_data.bin | Bin 0 -> 4948 bytes .../dump/DeviceProf1.bin | Bin 128 -> 0 bytes .../dump/DeviceProf2.bin | Bin 128 -> 0 bytes .../dump/DeviceProf3.bin | Bin 128 -> 0 bytes .../dump/DeviceProf4.bin | Bin 128 -> 0 bytes .../dump/DeviceProf5.bin | Bin 128 -> 0 bytes .../dump/DeviceProf6.bin | Bin 128 -> 0 bytes .../dump/DeviceProf7.bin | Bin 128 -> 0 bytes .../dump/duration.bin | Bin 128 -> 0 bytes .../visualize_data.bin | Bin 4928 -> 0 bytes .../device_0/data/all_file.complete | 0 .../device_0/data/ffts_profile.data.0.slice_0 | Bin 0 -> 128 bytes .../data/ffts_profile.data.0.slice_0.done | 3 + .../device_0/data/stars_soc.data.0.slice_0 | Bin 0 -> 384 bytes .../data/stars_soc.data.0.slice_0.done | 3 + .../device_0/data/ts_track.data.0.slice_0 | Bin 0 -> 40 bytes .../data/ts_track.data.0.slice_0.complete | 0 .../data/ts_track.data.0.slice_0.done | 3 + .../device_0/dev_start.log.0 | 2 + .../device_0/dev_start.log.0.done | 1 + .../device_0/end_info.0 | 1 + .../device_0/end_info.0.done | 1 + .../device_0/host_start.log.0 | 4 + .../device_0/host_start.log.0.done | 1 + .../device_0/incompatible_features.json | 1 + .../device_0/incompatible_features.json.done | 1 + .../device_0/info.json.0 | 1 + .../device_0/info.json.0.done | 1 + .../device_0/sample.json | 1 + .../device_0/sample.json.done | 1 + .../device_0/sqlite/ai_core_op_summary.db | Bin 0 -> 16384 bytes .../device_0/sqlite/ascend_task.db | Bin 0 -> 8192 bytes .../device_0/sqlite/biu_perf.db | 0 .../device_0/sqlite/freq.db | 0 .../device_0/sqlite/metric_summary.db | Bin 0 -> 8192 bytes .../device_0/sqlite/op_counter.db | Bin 0 -> 16384 bytes .../device_0/sqlite/soc_log.db | Bin 0 -> 8192 bytes .../device_0/sqlite/step_trace.db | Bin 0 -> 8192 bytes .../device_0/start_info.0 | 1 + .../device_0/start_info.0.done | 1 + .../data/aging.additional.tensor_info.slice_0 | Bin 0 -> 256 bytes .../aging.additional.tensor_info.slice_0.done | 3 + .../host/data/aging.api_event.data.slice_0 | Bin 0 -> 1560 bytes .../data/aging.api_event.data.slice_0.done | 3 + .../aging.compact.node_basic_info.slice_0 | Bin 0 -> 64 bytes ...aging.compact.node_basic_info.slice_0.done | 3 + .../data/aging.compact.task_track.slice_0 | Bin 0 -> 448 bytes .../aging.compact.task_track.slice_0.done | 3 + .../host/data/all_file.complete | 0 .../data/unaging.additional.hash_dic.slice_0 | 3 + .../unaging.additional.hash_dic.slice_0.done | 3 + .../unaging.additional.type_info_dic.slice_0 | 426 ++++++ ...ging.additional.type_info_dic.slice_0.done | 3 + .../host/end_info | 1 + .../host/end_info.done | 1 + .../host/host_start.log | 4 + .../host/host_start.log.done | 1 + .../host/incompatible_features.json | 1 + .../host/incompatible_features.json.done | 1 + .../host/info.json | 1 + .../host/info.json.done | 1 + .../host/sample.json | 1 + .../host/sample.json.done | 1 + .../host/sqlite/api_event.db | Bin 0 -> 8192 bytes .../host/sqlite/ge_hash.db | Bin 0 -> 28672 bytes .../host/sqlite/ge_info.db | Bin 0 -> 8192 bytes .../host/sqlite/rts_track.db | Bin 0 -> 8192 bytes .../host/sqlite/runtime.db | Bin 0 -> 8192 bytes .../host/start_info | 1 + .../host/start_info.done | 1 + .../collection_device_0.log | 70 + .../collection_host.log | 18 + .../msprof_analysis_1342968.log | 96 ++ .../mindstudio_profiler_output/README.txt | 36 + .../api_statistic_20240526112057.csv | 16 + .../msprof_20240526112056.json | 1 + .../op_statistic_20240526112057.csv | 2 + .../op_summary_20240526112057.csv | 2 + .../prof_rule_0_20240526112057.json | 1 + .../task_time_20240526112057.csv | 4 + .../AclNNInvocation/output/execute_add_op | Bin 165808 -> 165808 bytes .../AclNNInvocation/output/golden.bin | Bin 65536 -> 262144 bytes .../AclNNInvocation/output/output_z.bin | Bin 65536 -> 262144 bytes .../AclNNInvocation/scripts/gen_data.py | 4 +- .../AclNNInvocation/src/main.cpp | 2 +- .../Is_increase/build_out/CMakeCache.txt | 12 +- .../CMakeDirectoryInformation.cmake | 4 +- .../build_out/CMakeFiles/CMakeOutput.log | 144 +- .../build_out/CMakeFiles/CMakeRuleHashes.txt | 64 +- .../build_out/CMakeFiles/Makefile2 | 184 +-- .../CMakeFiles/TargetDirectories.txt | 140 +- .../gen_version_info.dir/build.make | 8 +- .../modify_vendor.dir/DependInfo.cmake | 2 +- .../CMakeFiles/modify_vendor.dir/build.make | 14 +- .../Is_increase/build_out/CPackConfig.cmake | 18 +- .../build_out/CPackSourceConfig.cmake | 20 +- .../Is_increase/build_out/Makefile | 10 +- .../custom_opp_ubuntu_aarch64.run.json | 2 +- .../custom_opp_ubuntu_aarch64.run | 598 +++++---- .../build_out/autogen/libascend_all_ops.so | Bin 987968 -> 988088 bytes .../Is_increase/build_out/cmake_install.cmake | 18 +- .../build_out/custom_opp_ubuntu_aarch64.run | 598 +++++---- .../custom_opp_ubuntu_aarch64.run.json | 2 +- .../CMakeDirectoryInformation.cmake | 4 +- .../Is_increase/build_out/framework/Makefile | 24 +- .../build_out/framework/cmake_install.cmake | 6 +- .../CMakeDirectoryInformation.cmake | 4 +- .../cust_tf_parsers.dir/DependInfo.cmake | 2 +- .../CMakeFiles/cust_tf_parsers.dir/build.make | 20 +- .../compiler_depend.internal | 2 +- .../tensorflow_add_custom_plugin.cc.o.d | 2 +- .../build_out/framework/tf_plugin/Makefile | 34 +- .../framework/tf_plugin/cmake_install.cmake | 6 +- .../build_out/install_manifest.txt | 66 +- .../CMakeDirectoryInformation.cmake | 4 +- .../cust_op_proto.dir/DependInfo.cmake | 4 +- .../__/autogen/op_proto.cc.o.d | 4 +- .../cust_op_proto.dir/add_custom.cpp.o.d | 4 +- .../CMakeFiles/cust_op_proto.dir/build.make | 28 +- .../compiler_depend.internal | 8 +- .../cust_opapi.dir/DependInfo.cmake | 2 +- .../__/autogen/aclnn_add_custom.cpp.o.d | 4 +- .../CMakeFiles/cust_opapi.dir/build.make | 20 +- .../cust_opapi.dir/compiler_depend.internal | 4 +- .../cust_optiling.dir/DependInfo.cmake | 2 +- .../cust_optiling.dir/add_custom.cpp.o.d | 4 +- .../CMakeFiles/cust_optiling.dir/build.make | 20 +- .../compiler_depend.internal | 4 +- .../CMakeFiles/optiling_compat.dir/build.make | 10 +- .../Is_increase/build_out/op_host/Makefile | 64 +- .../build_out/op_host/cmake_install.cmake | 16 +- .../CMakeDirectoryInformation.cmake | 4 +- .../ascendc_bin_ascend310b.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_bin_ascend310p.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_bin_ascend910.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_bin_ascend910b.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_impl_gen.dir/build.make | 18 +- .../CMakeFiles/binary.dir/build.make | 8 +- .../npu_supported_ops.dir/build.make | 14 +- .../ops_info_gen_ascend310b.dir/build.make | 14 +- .../ops_info_gen_ascend310p.dir/build.make | 14 +- .../ops_info_gen_ascend910.dir/build.make | 14 +- .../ops_info_gen_ascend910b.dir/build.make | 14 +- .../Is_increase/build_out/op_kernel/Makefile | 116 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 3072 -> 3392 bytes .../ascend310b/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5309 -> 5349 bytes .../binary/ascend310b/src/add_custom.cpp | 28 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5200 -> 5200 bytes .../ascend310p/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5309 -> 5349 bytes .../binary/ascend310p/src/add_custom.cpp | 28 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 2480 -> 2856 bytes .../ascend910/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5308 -> 5348 bytes .../binary/ascend910/src/add_custom.cpp | 28 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5504 -> 5504 bytes .../ascend910b/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5309 -> 5349 bytes .../binary/ascend910b/src/add_custom.cpp | 28 +- .../build_out/op_kernel/cmake_install.cmake | 42 +- .../util/__pycache__/const_var.cpython-39.pyc | Bin 1082 -> 1122 bytes .../__pycache__/opdesc_parser.cpython-39.pyc | Bin 8182 -> 8222 bytes .../Is_increase/op_kernel/add_custom.cpp | 28 +- .../No_Increase/build_out/CMakeCache.txt | 12 +- .../CMakeDirectoryInformation.cmake | 4 +- .../build_out/CMakeFiles/CMakeOutput.log | 144 +- .../build_out/CMakeFiles/CMakeRuleHashes.txt | 64 +- .../build_out/CMakeFiles/Makefile2 | 184 +-- .../CMakeFiles/TargetDirectories.txt | 140 +- .../gen_version_info.dir/build.make | 8 +- .../modify_vendor.dir/DependInfo.cmake | 2 +- .../CMakeFiles/modify_vendor.dir/build.make | 14 +- .../No_Increase/build_out/CPackConfig.cmake | 18 +- .../build_out/CPackSourceConfig.cmake | 20 +- .../No_Increase/build_out/Makefile | 10 +- .../custom_opp_ubuntu_aarch64.run.json | 2 +- .../custom_opp_ubuntu_aarch64.run | 611 +++++---- .../ai_core/tbe/op_tiling/liboptiling.so | Bin 96200 -> 0 bytes .../build_out/autogen/libascend_all_ops.so | Bin 987928 -> 988088 bytes .../No_Increase/build_out/cmake_install.cmake | 18 +- .../build_out/custom_opp_ubuntu_aarch64.run | 611 +++++---- .../custom_opp_ubuntu_aarch64.run.json | 2 +- .../CMakeDirectoryInformation.cmake | 4 +- .../No_Increase/build_out/framework/Makefile | 24 +- .../build_out/framework/cmake_install.cmake | 6 +- .../CMakeDirectoryInformation.cmake | 4 +- .../cust_tf_parsers.dir/DependInfo.cmake | 2 +- .../CMakeFiles/cust_tf_parsers.dir/build.make | 20 +- .../compiler_depend.internal | 2 +- .../tensorflow_add_custom_plugin.cc.o.d | 2 +- .../build_out/framework/tf_plugin/Makefile | 34 +- .../framework/tf_plugin/cmake_install.cmake | 6 +- .../build_out/install_manifest.txt | 66 +- .../CMakeDirectoryInformation.cmake | 4 +- .../cust_op_proto.dir/DependInfo.cmake | 4 +- .../__/autogen/op_proto.cc.o.d | 4 +- .../cust_op_proto.dir/add_custom.cpp.o.d | 5 +- .../CMakeFiles/cust_op_proto.dir/build.make | 28 +- .../compiler_depend.internal | 8 +- .../cust_opapi.dir/DependInfo.cmake | 2 +- .../__/autogen/aclnn_add_custom.cpp.o.d | 4 +- .../CMakeFiles/cust_opapi.dir/build.make | 20 +- .../cust_opapi.dir/compiler_depend.internal | 4 +- .../cust_optiling.dir/DependInfo.cmake | 2 +- .../cust_optiling.dir/add_custom.cpp.o.d | 5 +- .../CMakeFiles/cust_optiling.dir/build.make | 20 +- .../compiler_depend.internal | 4 +- .../CMakeFiles/optiling_compat.dir/build.make | 10 +- .../No_Increase/build_out/op_host/Makefile | 64 +- .../build_out/op_host/cmake_install.cmake | 16 +- .../CMakeDirectoryInformation.cmake | 4 +- .../ascendc_bin_ascend310b.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_bin_ascend310p.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_bin_ascend910.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_bin_ascend910b.dir/build.make | 10 +- .../build.make | 10 +- .../build.make | 10 +- .../build.make | 12 +- .../ascendc_impl_gen.dir/build.make | 18 +- .../CMakeFiles/binary.dir/build.make | 8 +- .../npu_supported_ops.dir/build.make | 14 +- .../ops_info_gen_ascend310b.dir/build.make | 14 +- .../ops_info_gen_ascend310p.dir/build.make | 14 +- .../ops_info_gen_ascend910.dir/build.make | 14 +- .../ops_info_gen_ascend910b.dir/build.make | 14 +- .../No_Increase/build_out/op_kernel/Makefile | 116 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 3248 -> 3328 bytes .../ascend310b/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5296 -> 5349 bytes .../binary/ascend310b/src/add_custom.cpp | 21 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5200 -> 5200 bytes .../ascend310p/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5296 -> 5349 bytes .../binary/ascend310p/src/add_custom.cpp | 21 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 2512 -> 2784 bytes .../ascend910/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5295 -> 5348 bytes .../binary/ascend910/src/add_custom.cpp | 21 +- ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 2 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5504 -> 5504 bytes .../ascend910b/gen/AddCustom-add_custom-0.sh | 2 +- .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 5296 -> 5349 bytes .../binary/ascend910b/src/add_custom.cpp | 21 +- .../build_out/op_kernel/cmake_install.cmake | 42 +- .../util/__pycache__/const_var.cpython-39.pyc | Bin 1069 -> 1122 bytes .../__pycache__/opdesc_parser.cpython-39.pyc | Bin 8169 -> 8222 bytes .../No_Increase/op_kernel/add_custom.cpp | 21 +- .../AclNNInvocation/README.md | 54 + .../AclNNInvocation/build/CMakeCache.txt | 369 +++++ .../CMakeFiles/3.22.1/CMakeCCompiler.cmake | 72 + .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 9024 bytes .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 9048 bytes .../build/CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../3.22.1/CompilerIdC/CMakeCCompilerId.c | 803 +++++++++++ .../build/CMakeFiles/3.22.1/CompilerIdC/a.out | Bin 0 -> 9168 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 9176 bytes .../CMakeDirectoryInformation.cmake | 16 + .../build/CMakeFiles/CMakeOutput.log | 437 ++++++ .../build/CMakeFiles/Makefile.cmake | 122 ++ .../build/CMakeFiles/Makefile2 | 112 ++ .../build/CMakeFiles/TargetDirectories.txt | 7 + .../build/CMakeFiles/cmake.check_cache | 1 + .../execute_add_op.dir/DependInfo.cmake | 22 + .../CMakeFiles/execute_add_op.dir/build.make | 158 +++ .../execute_add_op.dir/cmake_clean.cmake | 17 + .../execute_add_op.dir/common.cpp.o | Bin 0 -> 15344 bytes .../execute_add_op.dir/common.cpp.o.d | 197 +++ .../execute_add_op.dir/compiler_depend.make | 2 + .../execute_add_op.dir/compiler_depend.ts | 2 + .../CMakeFiles/execute_add_op.dir/depend.make | 2 + .../CMakeFiles/execute_add_op.dir/flags.make | 10 + .../CMakeFiles/execute_add_op.dir/link.txt | 1 + .../CMakeFiles/execute_add_op.dir/main.cpp.o | Bin 0 -> 51864 bytes .../execute_add_op.dir/main.cpp.o.d | 197 +++ .../execute_add_op.dir/op_runner.cpp.o | Bin 0 -> 209048 bytes .../execute_add_op.dir/op_runner.cpp.o.d | 182 +++ .../execute_add_op.dir/operator_desc.cpp.o | Bin 0 -> 57816 bytes .../execute_add_op.dir/operator_desc.cpp.o.d | 175 +++ .../execute_add_op.dir/progress.make | 6 + .../build/CMakeFiles/progress.marks | 1 + .../AclNNInvocation/build/Makefile | 311 +++++ .../AclNNInvocation/build/cmake_install.cmake | 74 + .../AclNNInvocation/inc/common.h | 45 + .../AclNNInvocation/inc/op_runner.h | 180 +++ .../AclNNInvocation/inc/operator_desc.h | 57 + .../AclNNInvocation/input/.keep | 0 .../AclNNInvocation/input/input_x.bin | Bin 0 -> 262144 bytes .../AclNNInvocation/input/input_y.bin | Bin 0 -> 262144 bytes .../AclNNInvocation/output/.keep | 0 .../ArithmeticUtilization.csv | 2 + .../L2Cache.csv | 2 + .../Memory.csv | 2 + .../MemoryL0.csv | 2 + .../MemoryUB.csv | 2 + .../OpBasicInfo.csv | 2 + .../PipeUtilization.csv | 2 + .../ResourceConflictRatio.csv | 2 + .../dump/DeviceProf1.bin | Bin 0 -> 128 bytes .../dump/DeviceProf2.bin | Bin 0 -> 128 bytes .../dump/DeviceProf3.bin | Bin 0 -> 128 bytes .../dump/DeviceProf4.bin | Bin 0 -> 128 bytes .../dump/DeviceProf5.bin | Bin 0 -> 128 bytes .../dump/DeviceProf6.bin | Bin 0 -> 128 bytes .../dump/DeviceProf7.bin | Bin 0 -> 128 bytes .../dump/duration.bin | Bin 0 -> 128 bytes .../dump/op_basic_info.txt | 3 + .../visualize_data.bin | Bin 0 -> 4952 bytes .../AclNNInvocation/output/execute_add_op | Bin 0 -> 165808 bytes .../AclNNInvocation/output/golden.bin | Bin 0 -> 262144 bytes .../AclNNInvocation/output/output_z.bin | Bin 0 -> 262144 bytes Increase_Hsot_compute/AclNNInvocation/run.sh | 120 ++ .../AclNNInvocation/scripts/acl.json | 1 + .../AclNNInvocation/scripts/gen_data.py | 25 + .../AclNNInvocation/scripts/get_time.py | 31 + .../AclNNInvocation/scripts/verify_result.py | 40 + .../AclNNInvocation/src/CMakeLists.txt | 67 + .../AclNNInvocation/src/common.cpp | 80 ++ .../AclNNInvocation/src/main.cpp | 162 +++ .../AclNNInvocation/src/op_runner.cpp | 453 +++++++ .../AclNNInvocation/src/operator_desc.cpp | 51 + .../Is_increase/CMakeLists.txt | 69 + .../Is_increase/CMakePresets.json | 63 + Increase_Hsot_compute/Is_increase/build.sh | 37 + .../Is_increase/build_out/CMakeCache.txt | 425 ++++++ .../CMakeFiles/3.22.1/CMakeCCompiler.cmake | 72 + .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 9024 bytes .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 9048 bytes .../CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../3.22.1/CompilerIdC/CMakeCCompilerId.c | 803 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdC/a.out | Bin 0 -> 9168 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 9176 bytes .../CMakeDirectoryInformation.cmake | 16 + .../build_out/CMakeFiles/CMakeOutput.log | 437 ++++++ .../build_out/CMakeFiles/CMakeRuleHashes.txt | 33 + .../build_out/CMakeFiles/Makefile.cmake | 167 +++ .../build_out/CMakeFiles/Makefile2 | 976 ++++++++++++++ .../CMakeFiles/TargetDirectories.txt | 70 + .../build_out/CMakeFiles/cmake.check_cache | 1 + .../gen_version_info.dir/DependInfo.cmake | 18 + .../gen_version_info.dir/build.make | 87 ++ .../gen_version_info.dir/cmake_clean.cmake | 8 + .../gen_version_info.dir/compiler_depend.make | 2 + .../gen_version_info.dir/compiler_depend.ts | 2 + .../gen_version_info.dir/progress.make | 1 + .../modify_vendor.dir/DependInfo.cmake | 24 + .../CMakeFiles/modify_vendor.dir/build.make | 98 ++ .../modify_vendor.dir/cmake_clean.cmake | 10 + .../modify_vendor.dir/compiler_depend.make | 2 + .../modify_vendor.dir/compiler_depend.ts | 2 + .../modify_vendor.dir/progress.make | 2 + .../build_out/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/CPackConfig.cmake | 71 + .../build_out/CPackSourceConfig.cmake | 79 ++ .../Is_increase/build_out/Makefile | 631 +++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../custom_opp_ubuntu_aarch64.run | 1040 ++++++++++++++ .../custom_opp_ubuntu_aarch64.run/install.sh | 318 +++++ .../packages/vendors/customize/version.info | 1 + .../custom_opp_ubuntu_aarch64.run/upgrade.sh | 151 +++ .../build_out/autogen/aclnn_add_custom.cpp | 199 +++ .../build_out/autogen}/aclnn_add_custom.h | 0 .../autogen/aic-ascend310b-ops-info.ini | 24 + .../autogen/aic-ascend310p-ops-info.ini | 24 + .../autogen/aic-ascend910-ops-info.ini | 24 + .../autogen/aic-ascend910b-ops-info.ini | 24 + .../autogen/custom_compile_options.ini | 0 .../build_out/autogen/libascend_all_ops.so | Bin 0 -> 1036520 bytes .../Is_increase/build_out/autogen/op_proto.cc | 5 + .../Is_increase/build_out/autogen}/op_proto.h | 0 .../Is_increase/build_out/cmake_install.cmake | 81 ++ .../build_out/custom_opp_ubuntu_aarch64.run | 1040 ++++++++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../CMakeDirectoryInformation.cmake | 16 + .../framework/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/framework/Makefile | 211 +++ .../build_out/framework/cmake_install.cmake | 49 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_tf_parsers.dir/DependInfo.cmake | 19 + .../CMakeFiles/cust_tf_parsers.dir/build.make | 110 ++ .../cust_tf_parsers.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 225 ++++ .../cust_tf_parsers.dir/compiler_depend.make | 650 +++++++++ .../cust_tf_parsers.dir/compiler_depend.ts | 2 + .../cust_tf_parsers.dir/depend.make | 2 + .../CMakeFiles/cust_tf_parsers.dir/flags.make | 10 + .../CMakeFiles/cust_tf_parsers.dir/link.txt | 1 + .../cust_tf_parsers.dir/progress.make | 3 + .../tensorflow_add_custom_plugin.cc.o | Bin 0 -> 10480 bytes .../tensorflow_add_custom_plugin.cc.o.d | 184 +++ .../tf_plugin/CMakeFiles/progress.marks | 1 + .../build_out/framework/tf_plugin/Makefile | 253 ++++ .../framework/tf_plugin/cmake_install.cmake | 67 + .../tf_plugin}/libcust_tf_parsers.so | Bin 10160 -> 10160 bytes .../build_out/install_manifest.txt | 33 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_op_proto.dir/DependInfo.cmake | 20 + .../__/autogen/op_proto.cc.o | Bin 0 -> 62752 bytes .../__/autogen/op_proto.cc.o.d | 252 ++++ .../cust_op_proto.dir/add_custom.cpp.o | Bin 0 -> 80424 bytes .../cust_op_proto.dir/add_custom.cpp.o.d | 263 ++++ .../CMakeFiles/cust_op_proto.dir/build.make | 126 ++ .../cust_op_proto.dir/cmake_clean.cmake | 13 + .../compiler_depend.internal | 612 +++++++++ .../cust_op_proto.dir/compiler_depend.make | 1194 +++++++++++++++++ .../cust_op_proto.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_op_proto.dir/depend.make | 2 + .../CMakeFiles/cust_op_proto.dir/flags.make | 10 + .../CMakeFiles/cust_op_proto.dir/link.txt | 1 + .../cust_op_proto.dir/progress.make | 4 + .../cust_opapi.dir/DependInfo.cmake | 19 + .../__/autogen/aclnn_add_custom.cpp.o | Bin 0 -> 12032 bytes .../__/autogen/aclnn_add_custom.cpp.o.d | 142 ++ .../CMakeFiles/cust_opapi.dir/build.make | 110 ++ .../cust_opapi.dir/cmake_clean.cmake | 11 + .../cust_opapi.dir/compiler_depend.internal | 170 +++ .../cust_opapi.dir/compiler_depend.make | 499 +++++++ .../cust_opapi.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_opapi.dir/depend.make | 2 + .../CMakeFiles/cust_opapi.dir/flags.make | 10 + .../CMakeFiles/cust_opapi.dir/link.txt | 1 + .../CMakeFiles/cust_opapi.dir/progress.make | 3 + .../cust_optiling.dir/DependInfo.cmake | 19 + .../cust_optiling.dir/add_custom.cpp.o | Bin 0 -> 84976 bytes .../cust_optiling.dir/add_custom.cpp.o.d | 263 ++++ .../CMakeFiles/cust_optiling.dir/build.make | 110 ++ .../cust_optiling.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 314 +++++ .../cust_optiling.dir/compiler_depend.make | 893 ++++++++++++ .../cust_optiling.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_optiling.dir/depend.make | 2 + .../CMakeFiles/cust_optiling.dir/flags.make | 10 + .../CMakeFiles/cust_optiling.dir/link.txt | 1 + .../cust_optiling.dir/progress.make | 3 + .../optiling_compat.dir/DependInfo.cmake | 18 + .../CMakeFiles/optiling_compat.dir/build.make | 87 ++ .../optiling_compat.dir/cmake_clean.cmake | 8 + .../optiling_compat.dir/compiler_depend.make | 2 + .../optiling_compat.dir/compiler_depend.ts | 2 + .../optiling_compat.dir/progress.make | 1 + .../op_host/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/op_host/Makefile | 355 +++++ .../build_out/op_host/cmake_install.cmake | 125 ++ .../build_out/op_host}/libcust_opapi.so | Bin 10360 -> 10360 bytes .../op_host/libcust_opmaster_rt2.0.so | Bin 0 -> 128968 bytes .../op_host/libcust_opsproto_rt2.0.so | Bin 0 -> 137160 bytes .../CMakeDirectoryInformation.cmake | 16 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310p.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310p.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../ascendc_impl_gen.dir/DependInfo.cmake | 18 + .../ascendc_impl_gen.dir/build.make | 95 ++ .../ascendc_impl_gen.dir/cmake_clean.cmake | 9 + .../ascendc_impl_gen.dir/compiler_depend.make | 2 + .../ascendc_impl_gen.dir/compiler_depend.ts | 2 + .../ascendc_impl_gen.dir/progress.make | 2 + .../CMakeFiles/binary.dir/DependInfo.cmake | 18 + .../CMakeFiles/binary.dir/build.make | 83 ++ .../CMakeFiles/binary.dir/cmake_clean.cmake | 5 + .../binary.dir/compiler_depend.make | 2 + .../CMakeFiles/binary.dir/compiler_depend.ts | 2 + .../CMakeFiles/binary.dir/progress.make | 1 + .../npu_supported_ops.dir/DependInfo.cmake | 18 + .../npu_supported_ops.dir/build.make | 92 ++ .../npu_supported_ops.dir/cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../npu_supported_ops.dir/compiler_depend.ts | 2 + .../npu_supported_ops.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310b.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310p.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310p.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910b.dir/progress.make | 2 + .../op_kernel/CMakeFiles/progress.marks | 1 + .../Is_increase/build_out/op_kernel/Makefile | 556 ++++++++ .../binary/ascend310b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 22 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 3064 bytes .../ascend310b/bin}/binary_info_config.json | 0 .../ascend310b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310b/src/AddCustom.py | 152 +++ .../binary/ascend310b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5348 bytes .../binary/ascend310b/src/add_custom.cpp | 56 + .../binary/ascend310p/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 5200 bytes .../ascend310p/bin}/binary_info_config.json | 0 .../ascend310p/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310p/src/AddCustom.py | 152 +++ .../binary/ascend310p/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5348 bytes .../binary/ascend310p/src/add_custom.cpp | 56 + .../binary/ascend910/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 2632 bytes .../ascend910/bin}/binary_info_config.json | 0 .../ascend910/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910/src/AddCustom.py | 152 +++ .../binary/ascend910/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend910/src/add_custom.cpp | 56 + .../binary/ascend910b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 22 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 5504 bytes .../ascend910b/bin}/binary_info_config.json | 0 .../ascend910b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910b/src/AddCustom.py | 152 +++ .../binary/ascend910b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5348 bytes .../binary/ascend910b/src/add_custom.cpp | 56 + .../build_out/op_kernel/cmake_install.cmake | 120 ++ .../build_out/op_kernel/tbe/.impl_timestamp | 0 .../op_kernel/tbe/dynamic/add_custom.py | 152 +++ .../ascend310b/aic-ascend310b-ops-info.json | 9 +- .../ascend310p/aic-ascend310p-ops-info.json | 9 +- .../ascend910/aic-ascend910-ops-info.json | 9 +- .../ascend910b/aic-ascend910b-ops-info.json | 9 +- .../ai_core}/npu_supported_ops.json | 0 .../Is_increase/build_out/scripts/install.sh | 318 +++++ .../Is_increase/build_out/scripts/upgrade.sh | 151 +++ .../Is_increase/build_out/version.info | 1 + .../Is_increase/cmake/config.cmake | 25 + .../Is_increase/cmake/func.cmake | 228 ++++ .../Is_increase/cmake/intf.cmake | 26 + .../Is_increase/cmake/makeself.cmake | 17 + .../Is_increase/cmake/util/__init__.py | 8 + .../util/__pycache__/const_var.cpython-39.pyc | Bin 0 -> 1121 bytes .../__pycache__/opdesc_parser.cpython-39.pyc | Bin 0 -> 8221 bytes .../cmake/util/ascendc_bin_param_build.py | 129 ++ .../cmake/util/ascendc_impl_build.py | 446 ++++++ .../cmake/util/ascendc_ops_config.py | 114 ++ .../cmake/util/ascendc_replay_build.py | 65 + .../cmake/util/batch_replay_impl.temp | 117 ++ .../cmake/util/code_channel_infer.py | 115 ++ .../Is_increase/cmake/util/const_var.py | 33 + .../cmake/util/gen_impl_and_mrege_json.sh | 57 + .../Is_increase/cmake/util/gen_ops_filter.sh | 62 + .../cmake/util/gen_version_info.sh | 6 + .../Is_increase/cmake/util/insert_op_info.py | 36 + .../cmake/util/insert_simplified_keys.py | 248 ++++ .../Is_increase/cmake/util/kernel_entry.py | 115 ++ .../Is_increase/cmake/util/kernel_impl.temp | 10 + .../Is_increase/cmake/util/makeself/COPYING | 339 +++++ .../Is_increase/cmake/util/makeself/README.md | 246 ++++ .../Is_increase/cmake/util/makeself/VERSION | 1 + .../cmake/util/makeself/make-release.sh | 9 + .../cmake/util/makeself/makeself-header.sh | 660 +++++++++ .../cmake/util/makeself/makeself.1 | 110 ++ .../cmake/util/makeself/makeself.lsm | 16 + .../cmake/util/makeself/makeself.sh | 822 ++++++++++++ .../cmake/util/makeself/run-tests.sh | 8 + .../cmake/util/merge_aicpu_info_json.sh | 31 + .../Is_increase/cmake/util/opdesc_parser.py | 260 ++++ .../cmake/util/parse_ini_to_json.py | 338 +++++ .../Is_increase/cmake/util/preset_parse.py | 23 + .../Is_increase/cmake/util/replay_codegen.py | 105 ++ .../Is_increase/cmake/util/replay_impl.temp | 120 ++ .../cmake/util/tiling_data_def_build.py | 84 ++ .../Is_increase/framework/CMakeLists.txt | 11 + .../framework/tf_plugin/CMakeLists.txt | 14 + .../tf_plugin/tensorflow_add_custom_plugin.cc | 23 + .../Is_increase/op_host/CMakeLists.txt | 82 ++ .../Is_increase/op_host/add_custom.cpp | 89 ++ .../Is_increase/op_host/add_custom_tiling.h | 26 + .../Is_increase/op_kernel/CMakeLists.txt | 61 + .../Is_increase/op_kernel/add_custom.cpp | 56 + .../output/AddCustom_case_20240821114242.json | 58 + .../Is_increase/scripts/install.sh | 318 +++++ .../Is_increase/scripts/upgrade.sh | 151 +++ .../No_increase/CMakeLists.txt | 69 + .../No_increase/CMakePresets.json | 63 + Increase_Hsot_compute/No_increase/build.sh | 37 + .../No_increase/build_out/CMakeCache.txt | 425 ++++++ .../CMakeFiles/3.22.1/CMakeCCompiler.cmake | 72 + .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 9024 bytes .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 9048 bytes .../CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../3.22.1/CompilerIdC/CMakeCCompilerId.c | 803 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdC/a.out | Bin 0 -> 9168 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 +++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 9176 bytes .../CMakeDirectoryInformation.cmake | 16 + .../build_out/CMakeFiles/CMakeOutput.log | 437 ++++++ .../build_out/CMakeFiles/CMakeRuleHashes.txt | 33 + .../build_out/CMakeFiles/Makefile.cmake | 167 +++ .../build_out/CMakeFiles/Makefile2 | 976 ++++++++++++++ .../CMakeFiles/TargetDirectories.txt | 70 + .../build_out/CMakeFiles/cmake.check_cache | 1 + .../gen_version_info.dir/DependInfo.cmake | 18 + .../gen_version_info.dir/build.make | 87 ++ .../gen_version_info.dir/cmake_clean.cmake | 8 + .../gen_version_info.dir/compiler_depend.make | 2 + .../gen_version_info.dir/compiler_depend.ts | 2 + .../gen_version_info.dir/progress.make | 1 + .../modify_vendor.dir/DependInfo.cmake | 24 + .../CMakeFiles/modify_vendor.dir/build.make | 98 ++ .../modify_vendor.dir/cmake_clean.cmake | 10 + .../modify_vendor.dir/compiler_depend.make | 2 + .../modify_vendor.dir/compiler_depend.ts | 2 + .../modify_vendor.dir/progress.make | 2 + .../build_out/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/CPackConfig.cmake | 71 + .../build_out/CPackSourceConfig.cmake | 79 ++ .../No_increase/build_out/Makefile | 631 +++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../custom_opp_ubuntu_aarch64.run | 1053 +++++++++++++++ .../custom_opp_ubuntu_aarch64.run/install.sh | 318 +++++ .../packages/vendors/customize/version.info | 1 + .../custom_opp_ubuntu_aarch64.run/upgrade.sh | 151 +++ .../build_out/autogen/aclnn_add_custom.cpp | 199 +++ .../build_out/autogen}/aclnn_add_custom.h | 0 .../autogen/aic-ascend310b-ops-info.ini | 24 + .../autogen/aic-ascend310p-ops-info.ini | 24 + .../autogen/aic-ascend910-ops-info.ini | 24 + .../autogen/aic-ascend910b-ops-info.ini | 24 + .../autogen/custom_compile_options.ini | 0 .../build_out/autogen/libascend_all_ops.so | Bin 0 -> 1036520 bytes .../No_increase/build_out/autogen/op_proto.cc | 5 + .../No_increase/build_out/autogen}/op_proto.h | 0 .../No_increase/build_out/cmake_install.cmake | 81 ++ .../build_out/custom_opp_ubuntu_aarch64.run | 1053 +++++++++++++++ .../custom_opp_ubuntu_aarch64.run.json | 26 + .../CMakeDirectoryInformation.cmake | 16 + .../framework/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/framework/Makefile | 211 +++ .../build_out/framework/cmake_install.cmake | 49 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_tf_parsers.dir/DependInfo.cmake | 19 + .../CMakeFiles/cust_tf_parsers.dir/build.make | 110 ++ .../cust_tf_parsers.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 225 ++++ .../cust_tf_parsers.dir/compiler_depend.make | 650 +++++++++ .../cust_tf_parsers.dir/compiler_depend.ts | 2 + .../cust_tf_parsers.dir/depend.make | 2 + .../CMakeFiles/cust_tf_parsers.dir/flags.make | 10 + .../CMakeFiles/cust_tf_parsers.dir/link.txt | 1 + .../cust_tf_parsers.dir/progress.make | 3 + .../tensorflow_add_custom_plugin.cc.o | Bin 0 -> 10480 bytes .../tensorflow_add_custom_plugin.cc.o.d | 184 +++ .../tf_plugin/CMakeFiles/progress.marks | 1 + .../build_out/framework/tf_plugin/Makefile | 253 ++++ .../framework/tf_plugin/cmake_install.cmake | 67 + .../tf_plugin}/libcust_tf_parsers.so | Bin 10160 -> 10160 bytes .../build_out/install_manifest.txt | 33 + .../CMakeDirectoryInformation.cmake | 16 + .../cust_op_proto.dir/DependInfo.cmake | 20 + .../__/autogen/op_proto.cc.o | Bin 0 -> 62752 bytes .../__/autogen/op_proto.cc.o.d | 252 ++++ .../cust_op_proto.dir/add_custom.cpp.o | Bin 0 -> 80424 bytes .../cust_op_proto.dir/add_custom.cpp.o.d | 263 ++++ .../CMakeFiles/cust_op_proto.dir/build.make | 126 ++ .../cust_op_proto.dir/cmake_clean.cmake | 13 + .../compiler_depend.internal | 612 +++++++++ .../cust_op_proto.dir/compiler_depend.make | 1194 +++++++++++++++++ .../cust_op_proto.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_op_proto.dir/depend.make | 2 + .../CMakeFiles/cust_op_proto.dir/flags.make | 10 + .../CMakeFiles/cust_op_proto.dir/link.txt | 1 + .../cust_op_proto.dir/progress.make | 4 + .../cust_opapi.dir/DependInfo.cmake | 19 + .../__/autogen/aclnn_add_custom.cpp.o | Bin 0 -> 12032 bytes .../__/autogen/aclnn_add_custom.cpp.o.d | 142 ++ .../CMakeFiles/cust_opapi.dir/build.make | 110 ++ .../cust_opapi.dir/cmake_clean.cmake | 11 + .../cust_opapi.dir/compiler_depend.internal | 170 +++ .../cust_opapi.dir/compiler_depend.make | 499 +++++++ .../cust_opapi.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_opapi.dir/depend.make | 2 + .../CMakeFiles/cust_opapi.dir/flags.make | 10 + .../CMakeFiles/cust_opapi.dir/link.txt | 1 + .../CMakeFiles/cust_opapi.dir/progress.make | 3 + .../cust_optiling.dir/DependInfo.cmake | 19 + .../cust_optiling.dir/add_custom.cpp.o | Bin 0 -> 84976 bytes .../cust_optiling.dir/add_custom.cpp.o.d | 263 ++++ .../CMakeFiles/cust_optiling.dir/build.make | 110 ++ .../cust_optiling.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 314 +++++ .../cust_optiling.dir/compiler_depend.make | 893 ++++++++++++ .../cust_optiling.dir/compiler_depend.ts | 2 + .../CMakeFiles/cust_optiling.dir/depend.make | 2 + .../CMakeFiles/cust_optiling.dir/flags.make | 10 + .../CMakeFiles/cust_optiling.dir/link.txt | 1 + .../cust_optiling.dir/progress.make | 3 + .../optiling_compat.dir/DependInfo.cmake | 18 + .../CMakeFiles/optiling_compat.dir/build.make | 87 ++ .../optiling_compat.dir/cmake_clean.cmake | 8 + .../optiling_compat.dir/compiler_depend.make | 2 + .../optiling_compat.dir/compiler_depend.ts | 2 + .../optiling_compat.dir/progress.make | 1 + .../op_host/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/op_host/Makefile | 355 +++++ .../build_out/op_host/cmake_install.cmake | 125 ++ .../build_out/op_host}/libcust_opapi.so | Bin 10360 -> 10360 bytes .../op_host/libcust_opmaster_rt2.0.so | Bin 0 -> 128968 bytes .../op_host/libcust_opsproto_rt2.0.so | Bin 0 -> 137160 bytes .../CMakeDirectoryInformation.cmake | 16 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend310p.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend310p.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../ascendc_bin_ascend910b.dir/build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ascendc_bin_ascend910b.dir/progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 87 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../DependInfo.cmake | 18 + .../build.make | 88 ++ .../cmake_clean.cmake | 8 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../progress.make | 1 + .../ascendc_impl_gen.dir/DependInfo.cmake | 18 + .../ascendc_impl_gen.dir/build.make | 95 ++ .../ascendc_impl_gen.dir/cmake_clean.cmake | 9 + .../ascendc_impl_gen.dir/compiler_depend.make | 2 + .../ascendc_impl_gen.dir/compiler_depend.ts | 2 + .../ascendc_impl_gen.dir/progress.make | 2 + .../CMakeFiles/binary.dir/DependInfo.cmake | 18 + .../CMakeFiles/binary.dir/build.make | 83 ++ .../CMakeFiles/binary.dir/cmake_clean.cmake | 5 + .../binary.dir/compiler_depend.make | 2 + .../CMakeFiles/binary.dir/compiler_depend.ts | 2 + .../CMakeFiles/binary.dir/progress.make | 1 + .../npu_supported_ops.dir/DependInfo.cmake | 18 + .../npu_supported_ops.dir/build.make | 92 ++ .../npu_supported_ops.dir/cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../npu_supported_ops.dir/compiler_depend.ts | 2 + .../npu_supported_ops.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310b.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend310p.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend310p.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910.dir/progress.make | 2 + .../DependInfo.cmake | 18 + .../ops_info_gen_ascend910b.dir/build.make | 92 ++ .../cmake_clean.cmake | 9 + .../compiler_depend.make | 2 + .../compiler_depend.ts | 2 + .../ops_info_gen_ascend910b.dir/progress.make | 2 + .../op_kernel/CMakeFiles/progress.marks | 1 + .../No_increase/build_out/op_kernel/Makefile | 556 ++++++++ .../binary/ascend310b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 22 +- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 3064 bytes .../ascend310b/bin}/binary_info_config.json | 30 - .../ascend310b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310b/src/AddCustom.py | 152 +++ .../binary/ascend310b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5348 bytes .../binary/ascend310b/src/add_custom.cpp | 108 ++ .../binary/ascend310p/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 5200 bytes .../ascend310p/bin/binary_info_config.json | 18 + .../ascend310p/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend310p/src/AddCustom.py | 152 +++ .../binary/ascend310p/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5348 bytes .../binary/ascend310p/src/add_custom.cpp | 108 ++ .../binary/ascend910/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 79 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 0 -> 2792 bytes .../ascend910/bin/binary_info_config.json | 18 + .../ascend910/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910/src/AddCustom.py | 152 +++ .../binary/ascend910/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5347 bytes .../binary/ascend910/src/add_custom.cpp | 108 ++ .../binary/ascend910b/bin}/add_custom.json | 0 ...stom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json | 77 ++ ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5504 -> 5504 bytes .../ascend910b/bin}/binary_info_config.json | 30 - .../ascend910b/gen/AddCustom-add_custom-0.sh | 14 + ...e04ee05ab491cc5ae9c3d5c9ee8950b_param.json | 42 + .../binary/ascend910b/src/AddCustom.py | 152 +++ .../binary/ascend910b/src/CMakeLists.txt | 61 + .../src/__pycache__/AddCustom.cpython-39.pyc | Bin 0 -> 5348 bytes .../binary/ascend910b/src/add_custom.cpp | 108 ++ .../build_out/op_kernel/cmake_install.cmake | 120 ++ .../build_out/op_kernel/tbe/.impl_timestamp | 0 .../op_kernel/tbe/dynamic/add_custom.py | 152 +++ .../ascend310b/aic-ascend310b-ops-info.json | 9 +- .../ascend310p/aic-ascend310p-ops-info.json | 9 +- .../ascend910/aic-ascend910-ops-info.json | 9 +- .../ascend910b/aic-ascend910b-ops-info.json | 9 +- .../ai_core}/npu_supported_ops.json | 0 .../No_increase/build_out/scripts/install.sh | 318 +++++ .../No_increase/build_out/scripts/upgrade.sh | 151 +++ .../No_increase/build_out/version.info | 1 + .../No_increase/cmake/config.cmake | 25 + .../No_increase/cmake/func.cmake | 228 ++++ .../No_increase/cmake/intf.cmake | 26 + .../No_increase/cmake/makeself.cmake | 17 + .../No_increase/cmake/util/__init__.py | 8 + .../util/__pycache__/const_var.cpython-39.pyc | Bin 0 -> 1121 bytes .../__pycache__/opdesc_parser.cpython-39.pyc | Bin 0 -> 8221 bytes .../cmake/util/ascendc_bin_param_build.py | 129 ++ .../cmake/util/ascendc_impl_build.py | 446 ++++++ .../cmake/util/ascendc_ops_config.py | 114 ++ .../cmake/util/ascendc_replay_build.py | 65 + .../cmake/util/batch_replay_impl.temp | 117 ++ .../cmake/util/code_channel_infer.py | 115 ++ .../No_increase/cmake/util/const_var.py | 33 + .../cmake/util/gen_impl_and_mrege_json.sh | 57 + .../No_increase/cmake/util/gen_ops_filter.sh | 62 + .../cmake/util/gen_version_info.sh | 6 + .../No_increase/cmake/util/insert_op_info.py | 36 + .../cmake/util/insert_simplified_keys.py | 248 ++++ .../No_increase/cmake/util/kernel_entry.py | 115 ++ .../No_increase/cmake/util/kernel_impl.temp | 10 + .../No_increase/cmake/util/makeself/COPYING | 339 +++++ .../No_increase/cmake/util/makeself/README.md | 246 ++++ .../No_increase/cmake/util/makeself/VERSION | 1 + .../cmake/util/makeself/make-release.sh | 9 + .../cmake/util/makeself/makeself-header.sh | 660 +++++++++ .../cmake/util/makeself/makeself.1 | 110 ++ .../cmake/util/makeself/makeself.lsm | 16 + .../cmake/util/makeself/makeself.sh | 822 ++++++++++++ .../cmake/util/makeself/run-tests.sh | 8 + .../cmake/util/merge_aicpu_info_json.sh | 31 + .../No_increase/cmake/util/opdesc_parser.py | 260 ++++ .../cmake/util/parse_ini_to_json.py | 338 +++++ .../No_increase/cmake/util/preset_parse.py | 23 + .../No_increase/cmake/util/replay_codegen.py | 105 ++ .../No_increase/cmake/util/replay_impl.temp | 120 ++ .../cmake/util/tiling_data_def_build.py | 84 ++ .../No_increase/framework/CMakeLists.txt | 11 + .../framework/tf_plugin/CMakeLists.txt | 14 + .../tf_plugin/tensorflow_add_custom_plugin.cc | 23 + .../No_increase/op_host/CMakeLists.txt | 82 ++ .../No_increase/op_host/add_custom.cpp | 87 ++ .../No_increase/op_host/add_custom_tiling.h | 26 + .../No_increase/op_kernel/CMakeLists.txt | 61 + .../No_increase/op_kernel/add_custom.cpp | 109 ++ .../output/AddCustom_case_20240821114242.json | 58 + .../No_increase/scripts/install.sh | 318 +++++ .../No_increase/scripts/upgrade.sh | 151 +++ Increase_Hsot_compute/README.md | 110 ++ .../ascend310b/aic-ascend310b-ops-info.json | 52 - .../ascend910b/aic-ascend910b-ops-info.json | 52 - .../tbe/customize_impl/dynamic/add_custom.cpp | 135 -- .../kernel/config/ascend310b/add_custom.json | 184 --- .../config/ascend310b/binary_info_config.json | 48 - .../kernel/config/ascend910b/add_custom.json | 184 --- .../config/ascend910b/binary_info_config.json | 48 - .../linux/aarch64/libcust_opmaster_rt2.0.so | Bin 128968 -> 0 bytes .../ai_core/tbe/op_tiling/liboptiling.so | Bin 128968 -> 0 bytes .../linux/aarch64/libcust_opsproto_rt2.0.so | Bin 141256 -> 0 bytes .../ascend310b/aic-ascend310b-ops-info.json | 52 - .../ascend910b/aic-ascend910b-ops-info.json | 52 - .../tbe/customize_impl/dynamic/add_custom.cpp | 135 -- .../kernel/config/ascend310b/add_custom.json | 184 --- .../kernel/config/ascend910b/add_custom.json | 184 --- .../config/ascend910b/binary_info_config.json | 48 - .../linux/aarch64/libcust_opmaster_rt2.0.so | Bin 128968 -> 0 bytes .../ai_core/tbe/op_tiling/liboptiling.so | Bin 128968 -> 0 bytes .../linux/aarch64/libcust_opsproto_rt2.0.so | Bin 141256 -> 0 bytes .../tensorflow/libcust_tf_parsers.so | Bin 10160 -> 0 bytes .../tensorflow/npu_supported_ops.json | 6 - .../op_api/include/aclnn_add_custom.h | 49 - .../tbe/customize_impl/dynamic/add_custom.cpp | 108 -- .../linux/aarch64/libcust_opmaster_rt2.0.so | Bin 100296 -> 0 bytes .../ai_core/tbe/op_tiling/liboptiling.so | Bin 100296 -> 0 bytes .../linux/aarch64/libcust_opsproto_rt2.0.so | Bin 108488 -> 0 bytes .../tensorflow/libcust_tf_parsers.so | Bin 10160 -> 0 bytes .../tensorflow/npu_supported_ops.json | 6 - .../op_api/include/aclnn_add_custom.h | 49 - .../tbe/customize_impl/dynamic/add_custom.cpp | 108 -- .../linux/aarch64/libcust_opmaster_rt2.0.so | Bin 100296 -> 0 bytes .../ai_core/tbe/op_tiling/liboptiling.so | Bin 100296 -> 0 bytes .../linux/aarch64/libcust_opsproto_rt2.0.so | Bin 108488 -> 0 bytes .../3.22.0/CMakeDetermineCompilerABI_C.bin | Bin .../3.22.0/CMakeDetermineCompilerABI_CXX.bin | Bin .../build/CMakeFiles/3.22.0/CompilerIdC/a.out | Bin .../CMakeFiles/3.22.0/CompilerIdCXX/a.out | Bin .../AclNNInvocation/output/execute_add_op | Bin .../AddCustom/CMakeLists.txt | 0 .../AddCustom/build.sh | 0 .../3.22.0/CMakeDetermineCompilerABI_C.bin | Bin .../3.22.0/CMakeDetermineCompilerABI_CXX.bin | Bin .../CMakeFiles/3.22.0/CompilerIdC/a.out | Bin .../CMakeFiles/3.22.0/CompilerIdCXX/a.out | Bin .../custom_opp_hce_aarch64.run | 0 .../custom_opp_hce_aarch64.run/install.sh | 0 .../tensorflow/libcust_tf_parsers.so | Bin 67784 -> 0 bytes .../tensorflow/npu_supported_ops.json | 6 - .../op_api/include/aclnn_add_custom.h | 49 - .../customize/op_api/lib/libcust_opapi.so | Bin 68072 -> 0 bytes .../ascend310b/aic-ascend310b-ops-info.json | 52 - .../ascend910b/aic-ascend910b-ops-info.json | 52 - .../tbe/customize_impl/dynamic/add_custom.cpp | 135 -- ...dCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o | Bin 5048 -> 0 bytes ...dCustom_402e355eb717124771cfc7dbebfe946c.o | Bin 5048 -> 0 bytes ...dCustom_ccd748392d99d04b8205210970fde2b9.o | Bin 5048 -> 0 bytes ...dCustom_ed9fc09970baaf94d89a7a5a66099e58.o | Bin 7640 -> 0 bytes ...stom_ed9fc09970baaf94d89a7a5a66099e58.json | 77 -- ...dCustom_ed9fc09970baaf94d89a7a5a66099e58.o | Bin 5504 -> 0 bytes .../kernel/config/ascend310b/add_custom.json | 184 --- .../config/ascend310b/binary_info_config.json | 48 - .../kernel/config/ascend910b/add_custom.json | 184 --- .../linux/aarch64/libcust_opmaster_rt2.0.so | Bin 133344 -> 0 bytes .../ai_core/tbe/op_tiling/liboptiling.so | 1 - .../vendors/customize/op_proto/inc/op_proto.h | 17 - .../linux/aarch64/libcust_opsproto_rt2.0.so | Bin 198880 -> 0 bytes .../custom_opp_hce_aarch64.run/upgrade.sh | 0 .../build_out/autogen/libascend_all_ops.so | Bin .../build_out/custom_opp_hce_aarch64.run | 0 .../framework/tf_plugin/libcust_tf_parsers.so | Bin .../build_out/op_host/libcust_opapi.so | Bin .../op_host/libcust_opmaster_rt2.0.so | Bin .../op_host/libcust_opsproto_rt2.0.so | Bin .../build_out/op_host/liboptiling.so | 1 - .../binary/ascend310b/src/CMakeLists.txt | 0 .../binary/ascend910b/src/CMakeLists.txt | 0 .../AddCustom/build_out/scripts/install.sh | 0 .../AddCustom/build_out/scripts/upgrade.sh | 0 .../AddCustom/cmake/func.cmake | 0 .../AddCustom/cmake/intf.cmake | 0 .../AddCustom/cmake/makeself.cmake | 0 .../AddCustom/cmake/util/__init__.py | 0 .../cmake/util/ascendc_bin_param_build.py | 0 .../cmake/util/ascendc_impl_build.py | 0 .../cmake/util/ascendc_ops_config.py | 0 .../cmake/util/ascendc_replay_build.py | 0 .../cmake/util/batch_replay_impl.temp | 0 .../cmake/util/code_channel_infer.py | 0 .../AddCustom/cmake/util/const_var.py | 0 .../cmake/util/gen_impl_and_mrege_json.sh | 0 .../AddCustom/cmake/util/gen_ops_filter.sh | 0 .../AddCustom/cmake/util/gen_version_info.sh | 0 .../AddCustom/cmake/util/insert_op_info.py | 0 .../cmake/util/insert_simplified_keys.py | 0 .../AddCustom/cmake/util/kernel_entry.py | 0 .../AddCustom/cmake/util/kernel_impl.temp | 0 .../AddCustom/cmake/util/makeself/COPYING | 0 .../AddCustom/cmake/util/makeself/README.md | 0 .../AddCustom/cmake/util/makeself/VERSION | 0 .../cmake/util/makeself/make-release.sh | 0 .../cmake/util/makeself/makeself-header.sh | 0 .../AddCustom/cmake/util/makeself/makeself.1 | 0 .../cmake/util/makeself/makeself.lsm | 0 .../AddCustom/cmake/util/makeself/makeself.sh | 0 .../cmake/util/makeself/run-tests.sh | 0 .../cmake/util/merge_aicpu_info_json.sh | 0 .../AddCustom/cmake/util/opdesc_parser.py | 0 .../AddCustom/cmake/util/parse_ini_to_json.py | 0 .../AddCustom/cmake/util/preset_parse.py | 0 .../AddCustom/cmake/util/replay_codegen.py | 0 .../AddCustom/cmake/util/replay_impl.temp | 0 .../cmake/util/tiling_data_def_build.py | 0 .../AddCustom/framework/CMakeLists.txt | 0 .../AddCustom/op_host/CMakeLists.txt | 0 .../AddCustom/op_kernel/CMakeLists.txt | 0 .../AddCustom/scripts/install.sh | 0 .../AddCustom/scripts/upgrade.sh | 0 2051 files changed, 122354 insertions(+), 5603 deletions(-) create mode 100644 Increase_Bedore_pipe/AclNNInvocation/README.md create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeCache.txt create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCCompiler.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/a.out create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeOutput.log create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile2 create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/cmake.check_cache create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/depend.make create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o.d create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/progress.make create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/Makefile create mode 100644 Increase_Bedore_pipe/AclNNInvocation/build/cmake_install.cmake create mode 100644 Increase_Bedore_pipe/AclNNInvocation/inc/common.h create mode 100644 Increase_Bedore_pipe/AclNNInvocation/inc/op_runner.h create mode 100644 Increase_Bedore_pipe/AclNNInvocation/inc/operator_desc.h create mode 100644 Increase_Bedore_pipe/AclNNInvocation/input/.keep create mode 100644 Increase_Bedore_pipe/AclNNInvocation/input/input_x.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/input/input_y.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/.keep rename {Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC => Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB}/ArithmeticUtilization.csv (85%) create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/L2Cache.csv create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/Memory.csv rename {Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC => Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB}/MemoryL0.csv (79%) rename {Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC => Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB}/MemoryUB.csv (80%) create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/OpBasicInfo.csv rename {Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC => Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB}/PipeUtilization.csv (71%) rename {Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC => Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB}/ResourceConflictRatio.csv (86%) create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf1.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf2.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf3.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf4.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf5.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf6.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf7.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/duration.bin rename {Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC => Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB}/dump/op_basic_info.txt (100%) create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/visualize_data.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/execute_add_op create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/golden.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/output/output_z.bin create mode 100644 Increase_Bedore_pipe/AclNNInvocation/run.sh create mode 100644 Increase_Bedore_pipe/AclNNInvocation/scripts/acl.json create mode 100644 Increase_Bedore_pipe/AclNNInvocation/scripts/gen_data.py create mode 100644 Increase_Bedore_pipe/AclNNInvocation/scripts/get_time.py create mode 100644 Increase_Bedore_pipe/AclNNInvocation/scripts/verify_result.py create mode 100644 Increase_Bedore_pipe/AclNNInvocation/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/AclNNInvocation/src/common.cpp create mode 100644 Increase_Bedore_pipe/AclNNInvocation/src/main.cpp create mode 100644 Increase_Bedore_pipe/AclNNInvocation/src/op_runner.cpp create mode 100644 Increase_Bedore_pipe/AclNNInvocation/src/operator_desc.cpp create mode 100644 Increase_Bedore_pipe/Is_increase/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/CMakePresets.json create mode 100644 Increase_Bedore_pipe/Is_increase/build.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeCache.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeOutput.log create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeRuleHashes.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile2 create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/TargetDirectories.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/cmake.check_cache create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CPackConfig.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/Makefile create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include => Increase_Bedore_pipe/Is_increase/build_out/autogen}/aclnn_add_custom.h (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310b-ops-info.ini create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310p-ops-info.ini create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910-ops-info.ini create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910b-ops-info.ini create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/custom_compile_options.ini create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/libascend_all_ops.so create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc => Increase_Bedore_pipe/Is_increase/build_out/autogen}/op_proto.h (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/cmake_install.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/Makefile create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/cmake_install.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/Makefile create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/cmake_install.cmake rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin}/libcust_tf_parsers.so (76%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/install_manifest.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/Makefile create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_host/cmake_install.cmake rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib => Increase_Bedore_pipe/Is_increase/build_out/op_host}/libcust_opapi.so (86%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64 => Increase_Bedore_pipe/Is_increase/build_out/op_host}/libcust_opmaster_rt2.0.so (98%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64 => Increase_Bedore_pipe/Is_increase/build_out/op_host}/libcust_opsproto_rt2.0.so (98%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/progress.make create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/Makefile rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/bin}/add_custom.json (100%) rename {Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/bin}/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json (94%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json rename Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/src/AddCustom.py (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin}/add_custom.json (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json rename Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/src/AddCustom.py (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/src/add_custom.cpp rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910 => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin}/add_custom.json (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910 => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json rename Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/src/AddCustom.py (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/src/add_custom.cpp rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin}/add_custom.json (100%) rename {Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin}/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json (94%) rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_ccd748392d99d04b8205210970fde2b9.o => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o (30%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json rename Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/src/AddCustom.py (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/src/add_custom.cpp create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/cmake_install.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/.impl_timestamp rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe}/dynamic/add_custom.py (100%) rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310b/aic-ascend310b-ops-info.json (100%) rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310p/aic-ascend310p-ops-info.json (100%) rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910/aic-ascend910-ops-info.json (100%) rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910b/aic-ascend910b-ops-info.json (100%) rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/npu_supported_ops.json (100%) create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/scripts/install.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/scripts/upgrade.sh create mode 100644 Increase_Bedore_pipe/Is_increase/build_out/version.info create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/config.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/func.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/intf.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/makeself.cmake create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/__init__.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/__pycache__/const_var.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_bin_param_build.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_impl_build.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_ops_config.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_replay_build.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/batch_replay_impl.temp create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/code_channel_infer.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/const_var.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/gen_impl_and_mrege_json.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/gen_ops_filter.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/gen_version_info.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/insert_op_info.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/insert_simplified_keys.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/kernel_entry.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/kernel_impl.temp create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/COPYING create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/README.md create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/VERSION create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/make-release.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself-header.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.1 create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.lsm create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/makeself/run-tests.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/merge_aicpu_info_json.sh create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/opdesc_parser.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/parse_ini_to_json.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/preset_parse.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/replay_codegen.py create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/replay_impl.temp create mode 100644 Increase_Bedore_pipe/Is_increase/cmake/util/tiling_data_def_build.py create mode 100644 Increase_Bedore_pipe/Is_increase/framework/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/framework/tf_plugin/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc create mode 100644 Increase_Bedore_pipe/Is_increase/op_host/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp create mode 100644 Increase_Bedore_pipe/Is_increase/op_host/add_custom_tiling.h create mode 100644 Increase_Bedore_pipe/Is_increase/op_kernel/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/Is_increase/op_kernel/add_custom.cpp create mode 100644 Increase_Bedore_pipe/Is_increase/output/AddCustom_case_20240821114242.json create mode 100644 Increase_Bedore_pipe/Is_increase/scripts/install.sh create mode 100644 Increase_Bedore_pipe/Is_increase/scripts/upgrade.sh create mode 100644 Increase_Bedore_pipe/No_increase/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/CMakePresets.json create mode 100644 Increase_Bedore_pipe/No_increase/build.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeCache.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeOutput.log create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeRuleHashes.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile2 create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/TargetDirectories.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/cmake.check_cache create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CPackConfig.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/Makefile create mode 100644 Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info create mode 100644 Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include => Increase_Bedore_pipe/No_increase/build_out/autogen}/aclnn_add_custom.h (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310b-ops-info.ini create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310p-ops-info.ini create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910-ops-info.ini create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910b-ops-info.ini create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/custom_compile_options.ini create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/libascend_all_ops.so create mode 100644 Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc => Increase_Bedore_pipe/No_increase/build_out/autogen}/op_proto.h (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/cmake_install.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/Makefile create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/cmake_install.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/Makefile create mode 100644 Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/cmake_install.cmake rename {Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin}/libcust_tf_parsers.so (76%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/install_manifest.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/Makefile create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_host/cmake_install.cmake rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib => Increase_Bedore_pipe/No_increase/build_out/op_host}/libcust_opapi.so (86%) rename Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so => Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opmaster_rt2.0.so (98%) rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64 => Increase_Bedore_pipe/No_increase/build_out/op_host}/libcust_opsproto_rt2.0.so (98%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/progress.make create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/progress.marks create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/Makefile rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin}/add_custom.json (100%) rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.json => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json (70%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json rename Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/AddCustom.py (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/__pycache__/AddCustom.cpython-39.pyc rename {Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src}/add_custom.cpp (63%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin}/add_custom.json (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/AddCustom.py (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/__pycache__/AddCustom.cpython-39.pyc rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src}/add_custom.cpp (63%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910 => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin}/add_custom.json (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910 => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/src/AddCustom.py create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/src/add_custom.cpp rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin}/add_custom.json (100%) rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.json => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json (71%) rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.o => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o (30%) rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin}/binary_info_config.json (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/AddCustom.py create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/add_custom.cpp create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/cmake_install.cmake create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/.impl_timestamp create mode 100644 Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/dynamic/add_custom.py rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310b/aic-ascend310b-ops-info.json (100%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310p/aic-ascend310p-ops-info.json (100%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910/aic-ascend910-ops-info.json (100%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910b/aic-ascend910b-ops-info.json (100%) rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/npu_supported_ops.json (100%) create mode 100644 Increase_Bedore_pipe/No_increase/build_out/scripts/install.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/scripts/upgrade.sh create mode 100644 Increase_Bedore_pipe/No_increase/build_out/version.info create mode 100644 Increase_Bedore_pipe/No_increase/cmake/config.cmake create mode 100644 Increase_Bedore_pipe/No_increase/cmake/func.cmake create mode 100644 Increase_Bedore_pipe/No_increase/cmake/intf.cmake create mode 100644 Increase_Bedore_pipe/No_increase/cmake/makeself.cmake create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/__init__.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/__pycache__/const_var.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/ascendc_bin_param_build.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/ascendc_impl_build.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/ascendc_ops_config.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/ascendc_replay_build.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/batch_replay_impl.temp create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/code_channel_infer.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/const_var.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/gen_impl_and_mrege_json.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/gen_ops_filter.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/gen_version_info.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/insert_op_info.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/insert_simplified_keys.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/kernel_entry.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/kernel_impl.temp create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/COPYING create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/README.md create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/VERSION create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/make-release.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself-header.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.1 create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.lsm create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/makeself/run-tests.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/merge_aicpu_info_json.sh create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/opdesc_parser.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/parse_ini_to_json.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/preset_parse.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/replay_codegen.py create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/replay_impl.temp create mode 100644 Increase_Bedore_pipe/No_increase/cmake/util/tiling_data_def_build.py create mode 100644 Increase_Bedore_pipe/No_increase/framework/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/framework/tf_plugin/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc create mode 100644 Increase_Bedore_pipe/No_increase/op_host/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp create mode 100644 Increase_Bedore_pipe/No_increase/op_host/add_custom_tiling.h create mode 100644 Increase_Bedore_pipe/No_increase/op_kernel/CMakeLists.txt create mode 100644 Increase_Bedore_pipe/No_increase/op_kernel/add_custom.cpp create mode 100644 Increase_Bedore_pipe/No_increase/output/AddCustom_case_20240821114242.json create mode 100644 Increase_Bedore_pipe/No_increase/scripts/install.sh create mode 100644 Increase_Bedore_pipe/No_increase/scripts/upgrade.sh create mode 100644 Increase_Bedore_pipe/README.md create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/ArithmeticUtilization.csv rename Increase_DataCopy_case/AclNNInvocation/output/{OPPROF_20240827171423_EXIUBCRAVAHHZJVC => OPPROF_20240526112018_BUFDXPBXSWWUBGFG}/L2Cache.csv (82%) rename Increase_DataCopy_case/AclNNInvocation/output/{OPPROF_20240827171423_EXIUBCRAVAHHZJVC => OPPROF_20240526112018_BUFDXPBXSWWUBGFG}/Memory.csv (78%) create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/MemoryL0.csv create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/MemoryUB.csv rename Increase_DataCopy_case/AclNNInvocation/output/{OPPROF_20240827171423_EXIUBCRAVAHHZJVC => OPPROF_20240526112018_BUFDXPBXSWWUBGFG}/OpBasicInfo.csv (48%) create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/PipeUtilization.csv create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/ResourceConflictRatio.csv create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/DeviceProf1.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/DeviceProf2.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/DeviceProf3.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/DeviceProf4.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/DeviceProf5.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/DeviceProf6.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/DeviceProf7.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/duration.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/dump/op_basic_info.txt create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240526112018_BUFDXPBXSWWUBGFG/visualize_data.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/DeviceProf1.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/DeviceProf2.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/DeviceProf3.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/DeviceProf4.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/DeviceProf5.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/DeviceProf6.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/DeviceProf7.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/dump/duration.bin delete mode 100644 Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/visualize_data.bin create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/all_file.complete create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/ffts_profile.data.0.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/ffts_profile.data.0.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/stars_soc.data.0.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/stars_soc.data.0.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/ts_track.data.0.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/ts_track.data.0.slice_0.complete create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/data/ts_track.data.0.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/dev_start.log.0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/dev_start.log.0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/end_info.0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/end_info.0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/host_start.log.0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/host_start.log.0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/incompatible_features.json create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/incompatible_features.json.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/info.json.0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/info.json.0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sample.json create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sample.json.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/ai_core_op_summary.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/ascend_task.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/biu_perf.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/freq.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/metric_summary.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/op_counter.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/soc_log.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/sqlite/step_trace.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/start_info.0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/device_0/start_info.0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.additional.tensor_info.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.additional.tensor_info.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.api_event.data.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.api_event.data.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.compact.node_basic_info.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.compact.node_basic_info.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.compact.task_track.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/aging.compact.task_track.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/all_file.complete create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/unaging.additional.hash_dic.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/unaging.additional.hash_dic.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/unaging.additional.type_info_dic.slice_0 create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/data/unaging.additional.type_info_dic.slice_0.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/end_info create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/end_info.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/host_start.log create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/host_start.log.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/incompatible_features.json create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/incompatible_features.json.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/info.json create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/info.json.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/sample.json create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/sample.json.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/sqlite/api_event.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/sqlite/ge_hash.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/sqlite/ge_info.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/sqlite/rts_track.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/sqlite/runtime.db create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/start_info create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/host/start_info.done create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_log/collection_device_0.log create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_log/collection_host.log create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_log/msprof_analysis_1342968.log create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_output/README.txt create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_output/api_statistic_20240526112057.csv create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_output/msprof_20240526112056.json create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_output/op_statistic_20240526112057.csv create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_output/op_summary_20240526112057.csv create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_output/prof_rule_0_20240526112057.json create mode 100644 Increase_DataCopy_case/AclNNInvocation/output/PROF_000001_20240526112051220_ODBQQCERHMJNJOAC/mindstudio_profiler_output/task_time_20240526112057.csv delete mode 100644 Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so create mode 100644 Increase_Hsot_compute/AclNNInvocation/README.md create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeCache.txt create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCCompiler.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/a.out create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/CMakeOutput.log create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/Makefile.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/Makefile2 create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/cmake.check_cache create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/depend.make create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o.d create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/progress.make create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/Makefile create mode 100644 Increase_Hsot_compute/AclNNInvocation/build/cmake_install.cmake create mode 100644 Increase_Hsot_compute/AclNNInvocation/inc/common.h create mode 100644 Increase_Hsot_compute/AclNNInvocation/inc/op_runner.h create mode 100644 Increase_Hsot_compute/AclNNInvocation/inc/operator_desc.h create mode 100644 Increase_Hsot_compute/AclNNInvocation/input/.keep create mode 100644 Increase_Hsot_compute/AclNNInvocation/input/input_x.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/input/input_y.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/.keep create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ArithmeticUtilization.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/L2Cache.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/Memory.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryL0.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryUB.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/OpBasicInfo.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/PipeUtilization.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ResourceConflictRatio.csv create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf1.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf2.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf3.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf4.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf5.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf6.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf7.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/duration.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/op_basic_info.txt create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/visualize_data.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/execute_add_op create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/golden.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/output/output_z.bin create mode 100644 Increase_Hsot_compute/AclNNInvocation/run.sh create mode 100644 Increase_Hsot_compute/AclNNInvocation/scripts/acl.json create mode 100644 Increase_Hsot_compute/AclNNInvocation/scripts/gen_data.py create mode 100644 Increase_Hsot_compute/AclNNInvocation/scripts/get_time.py create mode 100644 Increase_Hsot_compute/AclNNInvocation/scripts/verify_result.py create mode 100644 Increase_Hsot_compute/AclNNInvocation/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/AclNNInvocation/src/common.cpp create mode 100644 Increase_Hsot_compute/AclNNInvocation/src/main.cpp create mode 100644 Increase_Hsot_compute/AclNNInvocation/src/op_runner.cpp create mode 100644 Increase_Hsot_compute/AclNNInvocation/src/operator_desc.cpp create mode 100644 Increase_Hsot_compute/Is_increase/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/CMakePresets.json create mode 100644 Increase_Hsot_compute/Is_increase/build.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeCache.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/CMakeOutput.log create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/CMakeRuleHashes.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/Makefile.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/Makefile2 create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/TargetDirectories.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/cmake.check_cache create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/gen_version_info.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/modify_vendor.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CPackConfig.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/CPackSourceConfig.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/Makefile create mode 100644 Increase_Hsot_compute/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Hsot_compute/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info create mode 100644 Increase_Hsot_compute/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/aclnn_add_custom.cpp rename {Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include => Increase_Hsot_compute/Is_increase/build_out/autogen}/aclnn_add_custom.h (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/aic-ascend310b-ops-info.ini create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/aic-ascend310p-ops-info.ini create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/aic-ascend910-ops-info.ini create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/aic-ascend910b-ops-info.ini create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/custom_compile_options.ini create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/libascend_all_ops.so create mode 100644 Increase_Hsot_compute/Is_increase/build_out/autogen/op_proto.cc rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc => Increase_Hsot_compute/Is_increase/build_out/autogen}/op_proto.h (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/cmake_install.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Hsot_compute/Is_increase/build_out/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/Makefile create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/cmake_install.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/Makefile create mode 100644 Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin/cmake_install.cmake rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Hsot_compute/Is_increase/build_out/framework/tf_plugin}/libcust_tf_parsers.so (76%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/install_manifest.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/Makefile create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/cmake_install.cmake rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib => Increase_Hsot_compute/Is_increase/build_out/op_host}/libcust_opapi.so (86%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/libcust_opmaster_rt2.0.so create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_host/libcust_opsproto_rt2.0.so create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/progress.make create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/Makefile rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/bin}/add_custom.json (100%) rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_ccd748392d99d04b8205210970fde2b9.json => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json (70%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/bin}/binary_info_config.json (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/src/AddCustom.py create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/bin}/add_custom.json (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/bin}/binary_info_config.json (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/src/AddCustom.py create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend310p/src/add_custom.cpp rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910 => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/bin}/add_custom.json (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910 => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/bin}/binary_info_config.json (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/src/AddCustom.py create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910/src/add_custom.cpp rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/bin}/add_custom.json (100%) rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_ccd748392d99d04b8205210970fde2b9.json => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json (71%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/bin}/binary_info_config.json (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/src/AddCustom.py create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/binary/ascend910b/src/add_custom.cpp create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/cmake_install.cmake create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/tbe/.impl_timestamp create mode 100644 Increase_Hsot_compute/Is_increase/build_out/op_kernel/tbe/dynamic/add_custom.py rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310b/aic-ascend310b-ops-info.json (83%) rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310p/aic-ascend310p-ops-info.json (83%) rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910/aic-ascend910-ops-info.json (83%) rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910b/aic-ascend910b-ops-info.json (83%) rename {Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Hsot_compute/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/npu_supported_ops.json (100%) create mode 100644 Increase_Hsot_compute/Is_increase/build_out/scripts/install.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/scripts/upgrade.sh create mode 100644 Increase_Hsot_compute/Is_increase/build_out/version.info create mode 100644 Increase_Hsot_compute/Is_increase/cmake/config.cmake create mode 100644 Increase_Hsot_compute/Is_increase/cmake/func.cmake create mode 100644 Increase_Hsot_compute/Is_increase/cmake/intf.cmake create mode 100644 Increase_Hsot_compute/Is_increase/cmake/makeself.cmake create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/__init__.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/__pycache__/const_var.cpython-39.pyc create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/ascendc_bin_param_build.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/ascendc_impl_build.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/ascendc_ops_config.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/ascendc_replay_build.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/batch_replay_impl.temp create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/code_channel_infer.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/const_var.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/gen_impl_and_mrege_json.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/gen_ops_filter.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/gen_version_info.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/insert_op_info.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/insert_simplified_keys.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/kernel_entry.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/kernel_impl.temp create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/COPYING create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/README.md create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/VERSION create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/make-release.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/makeself-header.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/makeself.1 create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/makeself.lsm create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/makeself.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/makeself/run-tests.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/merge_aicpu_info_json.sh create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/opdesc_parser.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/parse_ini_to_json.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/preset_parse.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/replay_codegen.py create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/replay_impl.temp create mode 100644 Increase_Hsot_compute/Is_increase/cmake/util/tiling_data_def_build.py create mode 100644 Increase_Hsot_compute/Is_increase/framework/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/framework/tf_plugin/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc create mode 100644 Increase_Hsot_compute/Is_increase/op_host/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/op_host/add_custom.cpp create mode 100644 Increase_Hsot_compute/Is_increase/op_host/add_custom_tiling.h create mode 100644 Increase_Hsot_compute/Is_increase/op_kernel/CMakeLists.txt create mode 100644 Increase_Hsot_compute/Is_increase/op_kernel/add_custom.cpp create mode 100644 Increase_Hsot_compute/Is_increase/output/AddCustom_case_20240821114242.json create mode 100644 Increase_Hsot_compute/Is_increase/scripts/install.sh create mode 100644 Increase_Hsot_compute/Is_increase/scripts/upgrade.sh create mode 100644 Increase_Hsot_compute/No_increase/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/CMakePresets.json create mode 100644 Increase_Hsot_compute/No_increase/build.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeCache.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/CMakeOutput.log create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/CMakeRuleHashes.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/Makefile.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/Makefile2 create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/TargetDirectories.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/cmake.check_cache create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/gen_version_info.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/modify_vendor.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/No_increase/build_out/CPackConfig.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/CPackSourceConfig.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/Makefile create mode 100644 Increase_Hsot_compute/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Hsot_compute/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info create mode 100644 Increase_Hsot_compute/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/aclnn_add_custom.cpp rename {Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include => Increase_Hsot_compute/No_increase/build_out/autogen}/aclnn_add_custom.h (100%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/aic-ascend310b-ops-info.ini create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/aic-ascend310p-ops-info.ini create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/aic-ascend910-ops-info.ini create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/aic-ascend910b-ops-info.ini create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/custom_compile_options.ini create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/libascend_all_ops.so create mode 100644 Increase_Hsot_compute/No_increase/build_out/autogen/op_proto.cc rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc => Increase_Hsot_compute/No_increase/build_out/autogen}/op_proto.h (100%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/cmake_install.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/custom_opp_ubuntu_aarch64.run create mode 100644 Increase_Hsot_compute/No_increase/build_out/custom_opp_ubuntu_aarch64.run.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/Makefile create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/cmake_install.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/Makefile create mode 100644 Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin/cmake_install.cmake rename {Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Hsot_compute/No_increase/build_out/framework/tf_plugin}/libcust_tf_parsers.so (76%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/install_manifest.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/Makefile create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/cmake_install.cmake rename {Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib => Increase_Hsot_compute/No_increase/build_out/op_host}/libcust_opapi.so (86%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/libcust_opmaster_rt2.0.so create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_host/libcust_opsproto_rt2.0.so create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/binary.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/DependInfo.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/cmake_clean.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/compiler_depend.ts create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/progress.make create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/CMakeFiles/progress.marks create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/Makefile rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/bin}/add_custom.json (100%) rename Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_ed9fc09970baaf94d89a7a5a66099e58.json => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json (70%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o rename {Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/bin}/binary_info_config.json (30%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/src/AddCustom.py create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/bin}/add_custom.json (100%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/bin/binary_info_config.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/src/AddCustom.py create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend310p/src/add_custom.cpp rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910 => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/bin}/add_custom.json (100%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/bin/binary_info_config.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/src/AddCustom.py create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910/src/add_custom.cpp rename {Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/bin}/add_custom.json (100%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json rename {Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/bin}/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o (32%) rename {Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b => Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/bin}/binary_info_config.json (30%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom-add_custom-0.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/src/AddCustom.py create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/src/__pycache__/AddCustom.cpython-39.pyc create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/binary/ascend910b/src/add_custom.cpp create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/cmake_install.cmake create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/tbe/.impl_timestamp create mode 100644 Increase_Hsot_compute/No_increase/build_out/op_kernel/tbe/dynamic/add_custom.py rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310b/aic-ascend310b-ops-info.json (83%) rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend310p/aic-ascend310p-ops-info.json (83%) rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910/aic-ascend910-ops-info.json (83%) rename {Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config => Increase_Hsot_compute/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/ascend910b/aic-ascend910b-ops-info.json (83%) rename {Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow => Increase_Hsot_compute/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core}/npu_supported_ops.json (100%) create mode 100644 Increase_Hsot_compute/No_increase/build_out/scripts/install.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/scripts/upgrade.sh create mode 100644 Increase_Hsot_compute/No_increase/build_out/version.info create mode 100644 Increase_Hsot_compute/No_increase/cmake/config.cmake create mode 100644 Increase_Hsot_compute/No_increase/cmake/func.cmake create mode 100644 Increase_Hsot_compute/No_increase/cmake/intf.cmake create mode 100644 Increase_Hsot_compute/No_increase/cmake/makeself.cmake create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/__init__.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/__pycache__/const_var.cpython-39.pyc create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/ascendc_bin_param_build.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/ascendc_impl_build.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/ascendc_ops_config.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/ascendc_replay_build.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/batch_replay_impl.temp create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/code_channel_infer.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/const_var.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/gen_impl_and_mrege_json.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/gen_ops_filter.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/gen_version_info.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/insert_op_info.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/insert_simplified_keys.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/kernel_entry.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/kernel_impl.temp create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/COPYING create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/README.md create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/VERSION create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/make-release.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/makeself-header.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/makeself.1 create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/makeself.lsm create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/makeself.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/makeself/run-tests.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/merge_aicpu_info_json.sh create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/opdesc_parser.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/parse_ini_to_json.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/preset_parse.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/replay_codegen.py create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/replay_impl.temp create mode 100644 Increase_Hsot_compute/No_increase/cmake/util/tiling_data_def_build.py create mode 100644 Increase_Hsot_compute/No_increase/framework/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/framework/tf_plugin/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc create mode 100644 Increase_Hsot_compute/No_increase/op_host/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/op_host/add_custom.cpp create mode 100644 Increase_Hsot_compute/No_increase/op_host/add_custom_tiling.h create mode 100644 Increase_Hsot_compute/No_increase/op_kernel/CMakeLists.txt create mode 100644 Increase_Hsot_compute/No_increase/op_kernel/add_custom.cpp create mode 100644 Increase_Hsot_compute/No_increase/output/AddCustom_case_20240821114242.json create mode 100644 Increase_Hsot_compute/No_increase/scripts/install.sh create mode 100644 Increase_Hsot_compute/No_increase/scripts/upgrade.sh create mode 100644 Increase_Hsot_compute/README.md delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/add_custom.json delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/binary_info_config.json delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/binary_info_config.json delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so delete mode 100644 Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/add_custom.json delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/binary_info_config.json delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so delete mode 100644 Increase_UB_case/No_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so delete mode 100644 Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so delete mode 100644 Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json delete mode 100644 Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h delete mode 100644 Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp delete mode 100644 Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so delete mode 100644 Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so delete mode 100644 Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so delete mode 100644 Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so delete mode 100644 Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json delete mode 100644 Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h delete mode 100644 Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp delete mode 100644 Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so delete mode 100644 Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so delete mode 100644 Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so mode change 100755 => 100644 Increase_the_number_of_aicore/AclNNInvocation/build/CMakeFiles/3.22.0/CMakeDetermineCompilerABI_C.bin mode change 100755 => 100644 Increase_the_number_of_aicore/AclNNInvocation/build/CMakeFiles/3.22.0/CMakeDetermineCompilerABI_CXX.bin mode change 100755 => 100644 Increase_the_number_of_aicore/AclNNInvocation/build/CMakeFiles/3.22.0/CompilerIdC/a.out mode change 100755 => 100644 Increase_the_number_of_aicore/AclNNInvocation/build/CMakeFiles/3.22.0/CompilerIdCXX/a.out mode change 100755 => 100644 Increase_the_number_of_aicore/AclNNInvocation/output/execute_add_op mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/CMakeLists.txt mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/CMakeFiles/3.22.0/CMakeDetermineCompilerABI_C.bin mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/CMakeFiles/3.22.0/CMakeDetermineCompilerABI_CXX.bin mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/CMakeFiles/3.22.0/CompilerIdC/a.out mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/CMakeFiles/3.22.0/CompilerIdCXX/a.out mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/custom_opp_hce_aarch64.run mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/install.sh delete mode 100755 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h delete mode 100755 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_api/lib/libcust_opapi.so delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.o delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_ccd748392d99d04b8205210970fde2b9.o delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_ed9fc09970baaf94d89a7a5a66099e58.o delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_ed9fc09970baaf94d89a7a5a66099e58.json delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_ed9fc09970baaf94d89a7a5a66099e58.o delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/add_custom.json delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/binary_info_config.json delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json delete mode 100755 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so delete mode 120000 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so delete mode 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_proto/inc/op_proto.h delete mode 100755 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/upgrade.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/autogen/libascend_all_ops.so mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/custom_opp_hce_aarch64.run mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/framework/tf_plugin/libcust_tf_parsers.so mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/op_host/libcust_opapi.so mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/op_host/libcust_opmaster_rt2.0.so mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/op_host/libcust_opsproto_rt2.0.so delete mode 120000 Increase_the_number_of_aicore/AddCustom/build_out/op_host/liboptiling.so mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/scripts/install.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/build_out/scripts/upgrade.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/func.cmake mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/intf.cmake mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/makeself.cmake mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/__init__.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/ascendc_bin_param_build.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/ascendc_impl_build.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/ascendc_ops_config.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/ascendc_replay_build.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/batch_replay_impl.temp mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/code_channel_infer.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/const_var.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/gen_impl_and_mrege_json.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/gen_ops_filter.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/gen_version_info.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/insert_op_info.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/insert_simplified_keys.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/kernel_entry.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/kernel_impl.temp mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/COPYING mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/README.md mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/VERSION mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/make-release.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/makeself-header.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/makeself.1 mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/makeself.lsm mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/makeself.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/makeself/run-tests.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/merge_aicpu_info_json.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/opdesc_parser.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/parse_ini_to_json.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/preset_parse.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/replay_codegen.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/replay_impl.temp mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/cmake/util/tiling_data_def_build.py mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/framework/CMakeLists.txt mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/op_host/CMakeLists.txt mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/op_kernel/CMakeLists.txt mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/scripts/install.sh mode change 100755 => 100644 Increase_the_number_of_aicore/AddCustom/scripts/upgrade.sh diff --git a/Increase_Bedore_pipe/AclNNInvocation/README.md b/Increase_Bedore_pipe/AclNNInvocation/README.md new file mode 100644 index 0000000..b8167d8 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/README.md @@ -0,0 +1,54 @@ +## 目录结构介绍 +``` +├── AclNNInvocation //通过aclnn调用的方式调用AddCustom算子 +│ ├── inc // 头文件目录 +│ │ ├── common.h // 声明公共方法类,用于读取二进制文件 +│ │ ├── op_runner.h // 算子描述声明文件,包含算子输入/输出,算子类型以及输入描述与输出描述 +│ │ └── operator_desc.h // 算子运行相关信息声明文件,包含算子输入/输出个数,输入/输出大小等 +│ ├── input // 存放脚本生成的输入数据目录 +│ ├── output // 存放算子运行输出数据和真实数据的目录 +│ ├── scripts +│ │ ├── acl.json // acl配置文件 +│ │ ├── gen_data.py // 输入数据和真值数据生成脚本 +│ │ └── verify_result.py // 真值对比文件 +│ ├── src +│ │ ├── CMakeLists.txt // 编译规则文件 +│ │ ├── common.cpp // 公共函数,读取二进制文件函数的实现文件 +│ │ ├── main.cpp // 单算子调用应用的入口 +│ │ ├── op_runner.cpp // 单算子调用主体流程实现文件 +│ │ └── operator_desc.cpp // 构造算子的输入与输出描述 +│ └── run.sh // 执行命令脚本 +``` +## 代码实现介绍 +完成自定义算子的开发部署后,可以通过单算子调用的方式来验证单算子的功能。src/main.cpp代码为单算子API执行方式。单算子API执行是基于C语言的API执行算子,无需提供单算子描述文件进行离线模型的转换,直接调用单算子API接口。 + +自定义算子编译部署后,会自动生成单算子API,可以直接在应用程序中调用。算子API的形式一般定义为“两段式接口”,形如: + ```cpp + // 获取算子使用的workspace空间大小 + aclnnStatus aclnnAddCustomGetWorkspaceSize(const aclTensor *x, const aclTensor *y, const alcTensor *out, uint64_t workspaceSize, aclOpExecutor **executor); + // 执行算子 + aclnnStatus aclnnAddCustom(void *workspace, int64_t workspaceSize, aclOpExecutor **executor, aclrtStream stream); + ``` +其中aclnnAddCustomGetWorkspaceSize为第一段接口,主要用于计算本次API调用计算过程中需要多少的workspace内存。获取到本次API计算需要的workspace大小之后,按照workspaceSize大小申请Device侧内存,然后调用第二段接口aclnnAddCustom执行计算。具体参考[AscendCL单算子调用](https://hiascend.com/document/redirect/CannCommunityAscendCInVorkSingleOp)>单算子API执行 章节。 + +## 运行样例算子 +### 1. 编译算子工程 +运行此样例前,请参考[编译算子工程](../README.md#operatorcompile)完成前期准备。 +### 2. aclnn调用样例运行 + + - 进入到样例目录 + 以命令行方式下载样例代码,master分支为例。 + ```bash + cd ${git_clone_path}/samples/operator/AddCustomSample/FrameworkLaunch/AclNNInvocation + ``` + - 样例执行 + + 样例执行过程中会自动生成测试数据,然后编译与运行aclnn样例,最后检验运行结果。具体过程可参见run.sh脚本。 + + ```bash + bash run.sh + ``` +## 更新说明 +| 时间 | 更新事项 | +| ---------- | ------------ | +| 2024/05/22 | 新增本readme | \ No newline at end of file diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeCache.txt b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeCache.txt new file mode 100644 index 0000000..dd86c0a --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeCache.txt @@ -0,0 +1,369 @@ +# This is the CMakeCache file. +# For build in directory: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11 + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=acl_execute_add + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Value Computed by CMake +acl_execute_add_BINARY_DIR:STATIC=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build + +//Value Computed by CMake +acl_execute_add_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +acl_execute_add_SOURCE_DIR:STATIC=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=22 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_AR +CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB +CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 + diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCCompiler.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCCompiler.cmake new file mode 100644 index 0000000..0c0b1de --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCCompiler.cmake @@ -0,0 +1,72 @@ +set(CMAKE_C_COMPILER "/usr/bin/cc") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "GNU") +set(CMAKE_C_COMPILER_VERSION "11.4.0") +set(CMAKE_C_COMPILER_VERSION_INTERNAL "") +set(CMAKE_C_COMPILER_WRAPPER "") +set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23") +set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes") +set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros") +set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert") +set(CMAKE_C17_COMPILE_FEATURES "c_std_17") +set(CMAKE_C23_COMPILE_FEATURES "c_std_23") + +set(CMAKE_C_PLATFORM_ID "Linux") +set(CMAKE_C_SIMULATE_ID "") +set(CMAKE_C_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_C_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-11") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCC 1) +set(CMAKE_C_COMPILER_LOADED 1) +set(CMAKE_C_COMPILER_WORKS TRUE) +set(CMAKE_C_ABI_COMPILED TRUE) + +set(CMAKE_C_COMPILER_ENV_VAR "CC") + +set(CMAKE_C_COMPILER_ID_RUN 1) +set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) +set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_C_LINKER_PREFERENCE 10) + +# Save compiler ABI information. +set(CMAKE_C_SIZEOF_DATA_PTR "8") +set(CMAKE_C_COMPILER_ABI "ELF") +set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_C_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") + +if(CMAKE_C_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_C_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") +endif() + +if(CMAKE_C_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") +endif() + +set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include") +set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s") +set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..f59b84f --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake @@ -0,0 +1,83 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "11.4.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-11") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/11;/usr/include/aarch64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin new file mode 100644 index 0000000000000000000000000000000000000000..dfdc241f48036b01323e7889d7e41cfab5b12a27 GIT binary patch literal 9024 zcmeHNZ){Xq6+bhtEU*RIA`7fwJN)^8>oVJ7mjzs9rvDpDLAGmR(0zT=nYJU-88Y*V zEo`K_nz&|H)5=B~bxmV5VK*`116d(4+THk}iGDygA~8UKWC>>1SX|wuN_YI7_s*HV zc{4?0qMx|Qn{)5){JH1dd+vSr-1bCkS6eU;AT0*{jGWd3E)o$&WTQ$DMQ9f-$L~hk zKrB{)Cn9V=y(6ZTE)zKel=XH6UBFK_h@4XOkm(ZPl_MLMyQorf-^Tf6Unf_({K=KB zMWrL+$Cyyn<0k8!7QNG=r*u{vQ>yRB@5WD$*z?mC@VF>tSuO|Ow&PsiC5HU;Nk@uE zsp@?WdNO4qac@#B?1R$ZV&gI>{wvjacr2BSJ(h}ZPbJgCBik)2+c&tgF`UbU8{GF^ z1N%J3?cGmPr1Iete?9R1KR@49f8{$L{PY|7(By9Rn|)w=EW?H6mpU~UXP)*a@P9-M zs-&?pL1NHabXshYeOO(_Y6q}T8Jx8@m%-z}LS=B4EoVQsh&-8Q--u=QC(~9cc`Sh@ z2D;D8*;dvzhpc3ptXL*%6QexbJE^^^v#HtK5pH;*Q2k^hnVmiR%y=T37)a*qM7C#N zb1IWg^jNVJ+Z-6mq{XJ`ik20W_X%Pa40!?+q;0@8eojq%7hz}64#Cbk?I3+xbaj0h z5~$TO!Beu16rYyhovm``NAWcxzf9&$acy4``2g%o7f#RDJh(R$Zh3I;db#7lbq%wj zGlB8gy`k@<8PdvHq49K&n$T3 zMB_CV+vlo(^qGlJuN_W;-9FvES9= zdE21Zt{aiL8(V1NCj1#gzjUX4&H%51`T6{*Sv(H@xAwUR(b-%1{5tkm{Q>U`MQGwV z&`qFwiQbvUHi-84rgz)tEa=P{f!7G{!FqoAO+>%meD}m#(G}0Vxan^6x%9*a}4ICazVDoevH6?gIYEwYmuK zK;<>z(^TEWb?|A#8Y#;Uh3?4@OobM;&watC2_0vR7jLZay5!Q?-L`*E4m(Gt-;5uz zvxn+;eTnhz&i!q%J@%-X$Yv7pL)p$Iv%R~uv!y#q4&Tv>joJw_lf|}isH?N5r>oU$ z?QZFec0O zfO4sJ2?dTFq>7Q+z=jod4z?b63icYAA6;6@a*yIU4XmCq6viTWeg#awgCVrphgo19 zpcGvddZprrM$^e)_th(JtzwAvM(}KeAG%kpLHi{!2q@Ig}(<_wsWiEPFTIV(?B!?}MwYXw)if9Boy!?-#Swtwe+>&0Gvf$wPI+~e?Tg+C{4{f>zF|2dhG_g{=^ zUb>hgdY<<4^*r6)+`K2W?djNX+8z!yG=v+&_1hbUoo2&VckBq)H-21TzlG8^=M0+H zd$|VADw+=$;|6ISUW`{1;;-t?lIZrChvzc$uI;!^N-!87JbioSuRzbJ(3y52D*L7)} z@P5cys>V-96yXU<={UP~YUm~3__%oKIP-p5&L6ek=$pq7-sbr4$D@Le`Q+VkTT8l+K+GvU_~miX@0h^! zWmE#5c+lu_?UcshQAfTMe?{!;_fqYT_@Rrb(#930ks z`^+ie)t-1$m7f5w!8q%D={ew% z{=W}A^?f__(f_D_x{E>A2XzgKYo zKL1(ZY)9kP$+cnU0C4u-FaJg0A@0amjHbMi^=0jbaE7+ValeU+3e&a*XzK_8 zP6F<;QYrH*3G1-gpJpu0Sk}(j!~Ol?K3cdbHSHm@kMBxzuoKUi1F1~RN||vxlg*jd zFbrmfj-(QHA|9?UFTt0$Nz=+^E!?)G?d&M^XRV=x86O@R8ik6dWkS*}5^dgR9Zobi zqmN`Nk&QNW!ntI+KVvT3&6u&|01U^IR=R|hO4@cRQN+bqpwqU4(S6Q!j)@E3mM?Ti z_jNV{#?`yo+9BMImV;!rckOSAcA5Lz+Ma6dF?*s-xCMfs?-n|ux6c3esyUX+6>gfH z7x7$9!LIkRyI>So*=8bc*%mot2{E>US7zr;X1FHND89)y!VGWcNOgFFR&J2O@zFHwxzx_OoTG_sE}2OeHB9ib ziIl|(Qah5eDatoR?yY!5P6VnlC8Tyj9qatk#)s!NZ?a)z`d2=~fo<6y5I>+KGx+ zU(b(9Lnk zqOY`XXC3S-*8p2Mm|(JwErqv~`UHOA@-h+9$pPxx@v_fm~LuV_U2 se?c7J`^pwP>W{8VPG8h_ul|e(JnJ*A{i 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 J5oGGs{};RSnOy(? literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeSystem.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeSystem.cmake new file mode 100644 index 0000000..e7ba5ca --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-5.10.0+") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "5.10.0+") +set(CMAKE_HOST_SYSTEM_PROCESSOR "aarch64") + + + +set(CMAKE_SYSTEM "Linux-5.10.0+") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "5.10.0+") +set(CMAKE_SYSTEM_PROCESSOR "aarch64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c new file mode 100644 index 0000000..41b99d7 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c @@ -0,0 +1,803 @@ +#ifdef __cplusplus +# error "A C++ compiler has been selected for C." +#endif + +#if defined(__18CXX) +# define ID_VOID_MAIN +#endif +#if defined(__CLASSIC_C__) +/* cv-qualifiers did not exist in K&R C */ +# define const +# define volatile +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_C) +# define COMPILER_ID "SunPro" +# if __SUNPRO_C >= 0x5100 + /* __SUNPRO_C = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# endif + +#elif defined(__HP_cc) +# define COMPILER_ID "HP" + /* __HP_cc = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) + +#elif defined(__DECC) +# define COMPILER_ID "Compaq" + /* __DECC_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) + +#elif defined(__IBMC__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TINYC__) +# define COMPILER_ID "TinyCC" + +#elif defined(__BCC__) +# define COMPILER_ID "Bruce" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + +#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC) +# define COMPILER_ID "SDCC" +# if defined(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR) +# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH) +# else + /* SDCC = VRP */ +# define COMPILER_VERSION_MAJOR DEC(SDCC/100) +# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) +# define COMPILER_VERSION_PATCH DEC(SDCC % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if !defined(__STDC__) && !defined(__clang__) +# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) +# define C_VERSION "90" +# else +# define C_VERSION +# endif +#elif __STDC_VERSION__ > 201710L +# define C_VERSION "23" +#elif __STDC_VERSION__ >= 201710L +# define C_VERSION "17" +#elif __STDC_VERSION__ >= 201000L +# define C_VERSION "11" +#elif __STDC_VERSION__ >= 199901L +# define C_VERSION "99" +#else +# define C_VERSION "90" +#endif +const char* info_language_standard_default = + "INFO" ":" "standard_default[" C_VERSION "]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +# if defined(__CLASSIC_C__) +int main(argc, argv) int argc; char *argv[]; +# else +int main(int argc, char* argv[]) +# endif +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/a.out b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/a.out new file mode 100644 index 0000000000000000000000000000000000000000..e8a72558d96dcc6624712e8c2160f02c6c9e0f9f GIT binary patch literal 9168 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 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out new file mode 100644 index 0000000000000000000000000000000000000000..47c74a11ebba8f57647130a4389f88befac42ec5 GIT binary patch literal 9176 zcmeHNYiwLc6+XM`wodbKTtZq%NH&ij;gO9ULh6>%tY2}A94DkMDn#Y_+Pn5{yWX{S z?-nOP#DyYJwM90KsHs%2pg-IKQjtPQq^hJLZOOKC{EN?Nc4xR7LPUCb%y%Ah?#!9FGsiyO-M2R!3K2?#eo4}ryw)OdWt?5F6((_NqhXEJ2TNISc+t^?6b!MgI z&#bf-L1)#EIi=8(rs&P7-kj=zE~sOmct3eJc?Q&8kajUo3aH3RIryfRkb2iL)2yMl zS(ref_XXC|DN~6nlhw*Tr2Q>5E-CdN6!WknlOEcUNo>!gv&D(+uA3iD?cNnDm%RVkjX)J)^exS7R84f>R8>!ShNl<+MDa(3C5yzaFMNNzp#WnInMBe>x`tcZYF&+ z$xR;UVW;4^dCwVh(^+zda(RygmEqn^J$=0$ozBi!>&=zwr+1OlJFwqLB=gD9biqsJ z2ljVna@pj7JCqTdqhq$d$ELr>VHcsDik&p=FnvyS zvA!Z2s8c$@v$~Fe#}!{_vhxG{gyM}lZ@|%B9l)n_0p1kA=M|3z@QaFX3*e2q{#pX~ zHpS1XpCNuPeKqsO^FG`kf`9el{&jlMhpQ{b&NGUK*|@9=lv6(3Z~u%B_uGHjhhuGt zt&P#hA1@#K)l-)vH2o=}6PJ&@Fn1>6ytcsD6wy@kYdxjaKe~N78s7Mt$l@`)KQZq` z%QNlQxqZRczQFD99;0jcZ*hCGZR0&a#qP&w^7k9~c{4&!pO3^#7q-y!TkO{)`#~3b zN)hHY@N>Rge(Y_24E|nEDNc0qjdJ-$@f-dz?-`n>>HC>(V!DUuZ)bQL=JwR4w|h!1 z>nub3Xd`rUjJojxC-Qh6htHu`az4pF=`-!yqTO7swag>Pa0C+0WCPxCIhd>(RxSC=F9 zEi}7%+Sp1Bw$-&Wdv!a;uQOMd6Ce4VrZG>5JH#CO!@EmZ2=(^wJ#g!AZfrcAN#+mp zm*H*$SL4oo$$TN5%N}kqrL{F?D=oWFX;C$+H=c35kz9W4aG!jw49oN*U#-Jd(zJP( z%_iJ@f;Y|)x0vw`x87W3CpqCIv(j;)B5|PqZVIi7e723Rq1zg&KX=|QG1FYkaoUJ=?bMd=j!!@#`O^K5#{6jg?kjv7#~$W z&SC4d4gTNXFXsfBvD6{i|%>kHrnd+p&4y7PVJi*ERsd#Y{A-2(T2KR3c>0^FOc@d!<5+*RWZm3XbjuOY-~HGVB2 zo~!Ze2=iQxHxlBb8ec|;!)pBcO1xI%OWjXb5azX7eq|*eQ;n~xtoLfXiN1|M_c0>; zJ9~XXvZlpH7 zcU8+{H7}ylTLZmQUPNrozD{kN$i6AJS;S9N71~}de2Kt4auLa^{*A?xoq*nrV_#+{5^4UtB?Jg7M90_~@+4#{+i0Yw)!-`_=auzad<^ zPJg(Bou8>xc9wh@U?_|8McEke_xw< z7Lfk}zJ+lax8OMZ-1NJ+e@dK5*`{_7&#<$52|Kqd9^C&w&-e|zei7&9j>`5Ah`+#9kk8`Y;Zo(D$Rzb0hcom#wx*kk;b2bc3h8x zYmRMM8$6&CR<@BvUFa5mp}zVTpQ+s8p?^v%pl4N1j)QWS zhdxf|UsN3WxMzVPPoQRM#_uc4kUKc^aUTQ4HxB+o4)k8umpeV$xVKfPb}atOJi~v5 z=_prZOrbxh0}P5h1Nw(P-v0sB?@)utTYwHKF8Y!i3F?1`G4Tt>ZRB}C(GQE5qVAzd z4|2_~k9#HPU`5haBq!`IC%EC)pHxRc7li36abI1kkMrZ#M_vkaO+Y^A|E%g`{Bdpp zeJ-Gn@dG>;(8s+O^fm}84fg+RKp*#G&?f`>!T!%MU()B5JeS^!@pty1JldeYW!)y9 zKJMGIn&^WZimwb!7f3{_FXCMx5f3vZV40ebBd< zL3!!RU+lewsKpO*9r~XP;L!I|#GYR?rTxF6 q4oDuglOOnlbt(5L`0m$l)5PqP0psWwvdv5ApVJS|KOv|zsQ+)$W7-S= literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..f1584fe --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeOutput.log b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeOutput.log new file mode 100644 index 0000000..4694f91 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/CMakeOutput.log @@ -0,0 +1,437 @@ +The system is: Linux - 5.10.0+ - aarch64 +Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. +Compiler: /usr/bin/cc +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" + +The C compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/a.out" + +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out" + +Detecting C compiler ABI info compiled with the following output: +Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_86000/fast && /usr/bin/gmake -f CMakeFiles/cmTC_86000.dir/build.make CMakeFiles/cmTC_86000.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o +/usr/bin/cc -v -o CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_86000.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_86000.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/cc9ody5K.s +GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/lib/gcc/aarch64-linux-gnu/11/include + /usr/local/include + /usr/include/aarch64-linux-gnu + /usr/include +End of search list. +GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_86000.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o /tmp/cc9ody5K.s +GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.' +Linking C executable cmTC_86000 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_86000.dir/link.txt --verbose=1 +/usr/bin/cc -v CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o -o cmTC_86000 +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_86000' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_86000.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccccIlxs.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_86000 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_86000' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_86000.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' + + + +Parsed C implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/lib/gcc/aarch64-linux-gnu/11/include] + add: [/usr/local/include] + add: [/usr/include/aarch64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/lib/gcc/aarch64-linux-gnu/11/include] ==> [/usr/lib/gcc/aarch64-linux-gnu/11/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/aarch64-linux-gnu] ==> [/usr/include/aarch64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include] + + +Parsed C implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_86000/fast && /usr/bin/gmake -f CMakeFiles/cmTC_86000.dir/build.make CMakeFiles/cmTC_86000.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp'] + ignore line: [Building C object CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_86000.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_86000.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/cc9ody5K.s] + ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/aarch64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_86000.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o /tmp/cc9ody5K.s] + ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.'] + ignore line: [Linking C executable cmTC_86000] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_86000.dir/link.txt --verbose=1] + ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o -o cmTC_86000 ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_86000' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_86000.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccccIlxs.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_86000 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccccIlxs.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib/ld-linux-aarch64.so.1] ==> ignore + arg [-X] ==> ignore + arg [-EL] ==> ignore + arg [-maarch64linux] ==> ignore + arg [--fix-cortex-a53-843419] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_86000] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] + arg [-L/lib/aarch64-linux-gnu] ==> dir [/lib/aarch64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] + arg [CMakeFiles/cmTC_86000.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [-lc] ==> lib [c] + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> [/usr/lib/aarch64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> [/usr/lib/aarch64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> [/usr/lib/aarch64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11] ==> [/usr/lib/gcc/aarch64-linux-gnu/11] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/aarch64-linux-gnu] ==> [/lib/aarch64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> [/usr/lib] + implicit libs: [gcc;gcc_s;c;gcc;gcc_s] + implicit objs: [/usr/lib/aarch64-linux-gnu/Scrt1.o;/usr/lib/aarch64-linux-gnu/crti.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o;/usr/lib/aarch64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib] + implicit fwks: [] + + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c6a6e/fast && /usr/bin/gmake -f CMakeFiles/cmTC_c6a6e.dir/build.make CMakeFiles/cmTC_c6a6e.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -v -o CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_c6a6e.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_c6a6e.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccaV1pr9.s +GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring duplicate directory "/usr/include/aarch64-linux-gnu/c++/11" +ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/include/c++/11 + /usr/include/aarch64-linux-gnu/c++/11 + /usr/include/c++/11/backward + /usr/lib/gcc/aarch64-linux-gnu/11/include + /usr/local/include + /usr/include/aarch64-linux-gnu + /usr/include +End of search list. +GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 3e6e780af1232722b47e0979fda82402 +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_c6a6e.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccaV1pr9.s +GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.' +Linking CXX executable cmTC_c6a6e +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c6a6e.dir/link.txt --verbose=1 +/usr/bin/c++ -v CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_c6a6e +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_c6a6e' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_c6a6e.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccdu1nae.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_c6a6e /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_c6a6e' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_c6a6e.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' + + + +Parsed CXX implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/include/c++/11] + add: [/usr/include/aarch64-linux-gnu/c++/11] + add: [/usr/include/c++/11/backward] + add: [/usr/lib/gcc/aarch64-linux-gnu/11/include] + add: [/usr/local/include] + add: [/usr/include/aarch64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/include/c++/11] ==> [/usr/include/c++/11] + collapse include dir [/usr/include/aarch64-linux-gnu/c++/11] ==> [/usr/include/aarch64-linux-gnu/c++/11] + collapse include dir [/usr/include/c++/11/backward] ==> [/usr/include/c++/11/backward] + collapse include dir [/usr/lib/gcc/aarch64-linux-gnu/11/include] ==> [/usr/lib/gcc/aarch64-linux-gnu/11/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/aarch64-linux-gnu] ==> [/usr/include/aarch64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/include/c++/11;/usr/include/aarch64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include] + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c6a6e/fast && /usr/bin/gmake -f CMakeFiles/cmTC_c6a6e.dir/build.make CMakeFiles/cmTC_c6a6e.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_c6a6e.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_c6a6e.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccaV1pr9.s] + ignore line: [GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring duplicate directory "/usr/include/aarch64-linux-gnu/c++/11"] + ignore line: [ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/include/c++/11] + ignore line: [ /usr/include/aarch64-linux-gnu/c++/11] + ignore line: [ /usr/include/c++/11/backward] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/aarch64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 3e6e780af1232722b47e0979fda82402] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_c6a6e.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccaV1pr9.s] + ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.'] + ignore line: [Linking CXX executable cmTC_c6a6e] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c6a6e.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_c6a6e ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_c6a6e' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_c6a6e.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccdu1nae.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_c6a6e /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccdu1nae.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib/ld-linux-aarch64.so.1] ==> ignore + arg [-X] ==> ignore + arg [-EL] ==> ignore + arg [-maarch64linux] ==> ignore + arg [--fix-cortex-a53-843419] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_c6a6e] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] + arg [-L/lib/aarch64-linux-gnu] ==> dir [/lib/aarch64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] + arg [CMakeFiles/cmTC_c6a6e.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> [/usr/lib/aarch64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> [/usr/lib/aarch64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> [/usr/lib/aarch64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11] ==> [/usr/lib/gcc/aarch64-linux-gnu/11] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/aarch64-linux-gnu] ==> [/lib/aarch64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit objs: [/usr/lib/aarch64-linux-gnu/Scrt1.o;/usr/lib/aarch64-linux-gnu/crti.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o;/usr/lib/aarch64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib] + implicit fwks: [] + + diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..1b3b308 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile.cmake @@ -0,0 +1,122 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/CMakeLists.txt" + "/usr/share/cmake-3.22/Modules/CMakeCCompiler.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c" + "/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCXXCompiler.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp" + "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCompilerIdDetection.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCXXCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompileFeatures.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerABI.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerId.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeFindBinUtils.cmake" + "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseImplicitIncludeInfo.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseImplicitLinkInfo.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseLibraryArchitecture.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystem.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCXXCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCompilerCommon.cmake" + "/usr/share/cmake-3.22/Modules/CMakeUnixFindMake.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ARMClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Bruce-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Compaq-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-FindBinUtils.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/HP-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/NVHPC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SDCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SunPro-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/TI-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XL-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XLClang-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/zOS-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Internal/FeatureTesting.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-Determine-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/execute_add_op.dir/DependInfo.cmake" + ) diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile2 b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile2 new file mode 100644 index 0000000..145a58e --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/Makefile2 @@ -0,0 +1,112 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: CMakeFiles/execute_add_op.dir/all +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/execute_add_op.dir/clean +.PHONY : clean + +#============================================================================= +# Target rules for target CMakeFiles/execute_add_op.dir + +# All Build rule for target. +CMakeFiles/execute_add_op.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=1,2,3,4,5 "Built target execute_add_op" +.PHONY : CMakeFiles/execute_add_op.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/execute_add_op.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles 5 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/execute_add_op.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles 0 +.PHONY : CMakeFiles/execute_add_op.dir/rule + +# Convenience name for target. +execute_add_op: CMakeFiles/execute_add_op.dir/rule +.PHONY : execute_add_op + +# clean rule for target. +CMakeFiles/execute_add_op.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/clean +.PHONY : CMakeFiles/execute_add_op.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..175ba47 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,7 @@ +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/install/strip.dir diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/cmake.check_cache b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake new file mode 100644 index 0000000..882d690 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake @@ -0,0 +1,22 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp" "CMakeFiles/execute_add_op.dir/common.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/common.cpp.o.d" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp" "CMakeFiles/execute_add_op.dir/main.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/main.cpp.o.d" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp" "CMakeFiles/execute_add_op.dir/op_runner.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp" "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make new file mode 100644 index 0000000..1e4d13a --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make @@ -0,0 +1,158 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build + +# Include any dependencies generated for this target. +include CMakeFiles/execute_add_op.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include CMakeFiles/execute_add_op.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/execute_add_op.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/execute_add_op.dir/flags.make + +CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: CMakeFiles/execute_add_op.dir/flags.make +CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp +CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/operator_desc.cpp.o -MF CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d -o CMakeFiles/execute_add_op.dir/operator_desc.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp + +CMakeFiles/execute_add_op.dir/operator_desc.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/operator_desc.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp > CMakeFiles/execute_add_op.dir/operator_desc.cpp.i + +CMakeFiles/execute_add_op.dir/operator_desc.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/operator_desc.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp -o CMakeFiles/execute_add_op.dir/operator_desc.cpp.s + +CMakeFiles/execute_add_op.dir/op_runner.cpp.o: CMakeFiles/execute_add_op.dir/flags.make +CMakeFiles/execute_add_op.dir/op_runner.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp +CMakeFiles/execute_add_op.dir/op_runner.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/execute_add_op.dir/op_runner.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/op_runner.cpp.o -MF CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d -o CMakeFiles/execute_add_op.dir/op_runner.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp + +CMakeFiles/execute_add_op.dir/op_runner.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/op_runner.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp > CMakeFiles/execute_add_op.dir/op_runner.cpp.i + +CMakeFiles/execute_add_op.dir/op_runner.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/op_runner.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp -o CMakeFiles/execute_add_op.dir/op_runner.cpp.s + +CMakeFiles/execute_add_op.dir/main.cpp.o: CMakeFiles/execute_add_op.dir/flags.make +CMakeFiles/execute_add_op.dir/main.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp +CMakeFiles/execute_add_op.dir/main.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/execute_add_op.dir/main.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/main.cpp.o -MF CMakeFiles/execute_add_op.dir/main.cpp.o.d -o CMakeFiles/execute_add_op.dir/main.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp + +CMakeFiles/execute_add_op.dir/main.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/main.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp > CMakeFiles/execute_add_op.dir/main.cpp.i + +CMakeFiles/execute_add_op.dir/main.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/main.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp -o CMakeFiles/execute_add_op.dir/main.cpp.s + +CMakeFiles/execute_add_op.dir/common.cpp.o: CMakeFiles/execute_add_op.dir/flags.make +CMakeFiles/execute_add_op.dir/common.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp +CMakeFiles/execute_add_op.dir/common.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/execute_add_op.dir/common.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/common.cpp.o -MF CMakeFiles/execute_add_op.dir/common.cpp.o.d -o CMakeFiles/execute_add_op.dir/common.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp + +CMakeFiles/execute_add_op.dir/common.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/common.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp > CMakeFiles/execute_add_op.dir/common.cpp.i + +CMakeFiles/execute_add_op.dir/common.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/common.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp -o CMakeFiles/execute_add_op.dir/common.cpp.s + +# Object files for target execute_add_op +execute_add_op_OBJECTS = \ +"CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" \ +"CMakeFiles/execute_add_op.dir/op_runner.cpp.o" \ +"CMakeFiles/execute_add_op.dir/main.cpp.o" \ +"CMakeFiles/execute_add_op.dir/common.cpp.o" + +# External object files for target execute_add_op +execute_add_op_EXTERNAL_OBJECTS = + +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/operator_desc.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/op_runner.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/main.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/common.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/build.make +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Linking CXX executable /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/execute_add_op.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/execute_add_op.dir/build: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op +.PHONY : CMakeFiles/execute_add_op.dir/build + +CMakeFiles/execute_add_op.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/execute_add_op.dir/cmake_clean.cmake +.PHONY : CMakeFiles/execute_add_op.dir/clean + +CMakeFiles/execute_add_op.dir/depend: + cd /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/execute_add_op.dir/depend + diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake new file mode 100644 index 0000000..3dcafd3 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake @@ -0,0 +1,17 @@ +file(REMOVE_RECURSE + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op.pdb" + "CMakeFiles/execute_add_op.dir/common.cpp.o" + "CMakeFiles/execute_add_op.dir/common.cpp.o.d" + "CMakeFiles/execute_add_op.dir/main.cpp.o" + "CMakeFiles/execute_add_op.dir/main.cpp.o.d" + "CMakeFiles/execute_add_op.dir/op_runner.cpp.o" + "CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d" + "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" + "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/execute_add_op.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..e292b2a7f49eeb370eb8e90574647627c8968a6a GIT binary patch literal 15344 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d new file mode 100644 index 0000000..6650d42 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d @@ -0,0 +1,197 @@ +CMakeFiles/execute_add_op.dir/common.cpp.o: \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp \ + /usr/include/stdc-predef.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h \ + /usr/include/c++/11/cstdio \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/include/c++/11/iomanip /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/memoryfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/c++/11/bits/ios_base.h /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/cctype \ + /usr/include/ctype.h /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/string /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h /usr/include/c++/11/cstdint \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/alloca.h /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/c++/11/bits/std_abs.h /usr/include/c++/11/cerrno \ + /usr/include/errno.h /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/typeinfo /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/locale /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/streambuf /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/locale_facets_nonio.h /usr/include/c++/11/ctime \ + /usr/include/aarch64-linux-gnu/c++/11/bits/time_members.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/messages_members.h \ + /usr/include/libintl.h /usr/include/c++/11/bits/codecvt.h \ + /usr/include/c++/11/bits/locale_facets_nonio.tcc \ + /usr/include/c++/11/bits/locale_conv.h \ + /usr/include/c++/11/bits/unique_ptr.h /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h /usr/include/c++/11/tuple \ + /usr/include/c++/11/array /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_rt.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/error_codes/rt_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/error_codes/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_op.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_mdl.h \ + /usr/include/fcntl.h /usr/include/aarch64-linux-gnu/bits/fcntl.h \ + /usr/include/aarch64-linux-gnu/bits/fcntl-linux.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_iovec.h \ + /usr/include/linux/falloc.h /usr/include/aarch64-linux-gnu/bits/stat.h \ + /usr/include/aarch64-linux-gnu/bits/struct_stat.h \ + /usr/include/aarch64-linux-gnu/sys/stat.h \ + /usr/include/aarch64-linux-gnu/bits/statx.h /usr/include/linux/stat.h \ + /usr/include/linux/types.h /usr/include/aarch64-linux-gnu/asm/types.h \ + /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \ + /usr/include/aarch64-linux-gnu/asm/bitsperlong.h \ + /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \ + /usr/include/linux/stddef.h \ + /usr/include/aarch64-linux-gnu/asm/posix_types.h \ + /usr/include/asm-generic/posix_types.h \ + /usr/include/aarch64-linux-gnu/bits/statx-generic.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_statx_timestamp.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_statx.h \ + /usr/include/unistd.h /usr/include/aarch64-linux-gnu/bits/posix_opt.h \ + /usr/include/aarch64-linux-gnu/bits/environments.h \ + /usr/include/aarch64-linux-gnu/bits/confname.h \ + /usr/include/aarch64-linux-gnu/bits/getopt_posix.h \ + /usr/include/aarch64-linux-gnu/bits/getopt_core.h \ + /usr/include/aarch64-linux-gnu/bits/unistd_ext.h \ + /usr/include/linux/close_range.h /usr/include/c++/11/fstream \ + /usr/include/aarch64-linux-gnu/c++/11/bits/basic_file.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++io.h \ + /usr/include/c++/11/bits/fstream.tcc diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.make b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.make new file mode 100644 index 0000000..9c98d42 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty compiler generated dependencies file for execute_add_op. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.ts b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.ts new file mode 100644 index 0000000..e7ad1aa --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for execute_add_op. diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/depend.make b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/depend.make new file mode 100644 index 0000000..802adaf --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for execute_add_op. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make new file mode 100644 index 0000000..2151d9f --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/runtime/include -I/usr/local/Ascend/ascend-toolkit/latest/atc/include -I/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc -I/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/include + +CXX_FLAGS = -std=c++11 + diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt new file mode 100644 index 0000000..6463248 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ CMakeFiles/execute_add_op.dir/operator_desc.cpp.o CMakeFiles/execute_add_op.dir/op_runner.cpp.o CMakeFiles/execute_add_op.dir/main.cpp.o CMakeFiles/execute_add_op.dir/common.cpp.o -o /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -L/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/lib -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64:/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/lib: -lascendcl -lcust_opapi -lacl_op_compiler -lnnopbase -lstdc++ diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..47894777ca214f8f769f984333e10291321c2f2c GIT binary patch literal 51864 zcmcJY51dt1wfN7>9Tk<7l#-I-iu5F-ab_4`Fsk`?VQ$Qy>)bntiXDcz7iM(+IdcaF z!9*jaqyiaJ3y_QojaU5oQDIS0T2ar}^Jmoa_n!K@{CU5h?@7NXeFY_tx7OZkox9FH zXV2WRPv^s#bI$jywb$Bfuf5N|dk%NU8W$E96*)W=Ip1;eTTC5i%H#R$R|~qxE`N#%O&ZEf>MEf!5=&{0OZthGiqIH_@`0mMySM(E1Iq zY^C)iEK{`JM$09zyph(I!ty3sznPY|z;YR_-%87m($aS7X#D|NZieNjY5g;_ z{46cEz;Y|CKS;}MupFWFhhX_RT7MLlpNIMEx~HBv8*#S2mMnVWKQDLAycU`8Bw#42 z`b-hbN9Q@P-0-|pvf=sMb

bx%c_pZ0Ag_qiE~v5$DM^*q3`+nH@O_%Uq;r>+wj@ zlSdb%JVdtq_pE?fZAB#-B z_UH$y|K_sOqLE*-ZCnQ*R1A*I({ZSEieAMyR2Ms`Nscr5HSmq=#r42=@cL^||6-P- zI`KXg6R7)Z$r^}x^_jElezxaO#Qlxe78gT&ufSLb+u_{Ruus@-$ePmZL@QgVMlHkY6pGCe8U;r zyf(7oc`QeBU02K z)I}UGD&LD2+41Kq$Kt1yt3Ob&ICr-*U;Bf;RX>IPO>>+(au+=IPG_of8Ll4!TkLa0 zwKKN2mWTMLHkG-n#tE<7d|rgrGt3^=jqQyUqa4`D-CaE&{ahZRHyy@3GZ!‹=q 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

3Y8 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

`lu48)W-! z|E2M-RIq>ENpk$^SwCw0n{D_~{7PuCXAX?t8wCBE75&w$ALYM6h2O_~o4+|@%pcc( zUsdc+3icl_*#B=ue~|U9|26%8D*9EdZ|$e}ohay6pDf3(WJ#bH6~7x5emV1_#?Li| zFU7xw?Z@%+WWoN&6#c5Df&C5EaeQ{;w^h;K`q#s9j6UX(|0WCi&nfyFSihS2_T=jC zR`ly=vtbU5->HKBg{R2z+sXP-<7b`WOaAX+ee8c_g8p@i{)CpG#Zlwu)rx+fp#N4u zf2*Qj!}?ME|FFrj{}wSn6*MFN*Nxu+#r}S_zmA!dKc@@!rxg8u)-TH|2QOUxxrR@e zJO7Oe{yRg^|Cpjb98>>BMZe^4LH=U?R0#S%QuOz;zU5mtP+Rdh;Z1V zH-5($zU2QD+mGWP{Z>K=*Ju5Do}xbx(|;`re<$;+BJ96W;ZJy9K#a=2HA?$?h4{Tg zX#Y19{VLXvvj1y}{suvx`iSfQlin=Hzk~G~BK$YW@TK?vFt6ITX`mLL49IR9T^5`>i8`wvQ)pR`0iyY?Su_>%t? zvHiCFWdCfz{&y()RjhB`E;wBMl?uNhCcjg$f34vE3k3TgSM=AiepLQ{MbY0R=+6`M zPkW0Tzd_b-DDYl!{7*G}DSlg7AM^hrL4Td1pUeirHvZNOH-0xL`gQ*(&i|C4|3^hX z#rjeCKjW>k|5{@5+ZBE<^OLsWe0JOaKEs#%-@xs+{-gd=FSP$|MSm0PoAfF;T>T#_ z{Gpiq?<@BA3GusBu>ZKzWdDz{epLUNX!w%<`UU;V1pQt`zie6HwuS=l75ASHDEfn} zkNxLzL4TK`zn1lF{H+;o{C=Y7r}h{3pZ5s*v!=-Y-^%(?{ij#q4>Lb1|2|;&Qv6y3 z`x^xNzpCi(XZ@sg9G_kPJ*w#UvcB~{^}j0w{bv>Z(zZY_s{KcvF8jYaCjaGzFZpjk z@Lxu-|9nNih4rKQ-#ZljAwhqspubVk-^BV25%IfS(cjJb*#BAu{k@8QqCF6{@waBU z`SZM@-$5TXn#1-V%AYF*{j;aa@h@k6%h&XK6n-7^yDgE=uKitxFXhi#w!fcwWPh7r z|NV;oHr9{2{_%psAC77NZx#E?|2Ob|1K9t5!TvX$A^X3kBOoqjzCF4AOB%l9zdk{~ zOVDpr^f$47RQ@ei^ha6W<`2bhxuCyJ(I000sOx7pDEcMzVYfL@f2E-RV?}@5`vZ?h z$eZ${y-i)nv@;Y;~5#P&A?ZpeLqiGJ&_g#T^* z`kO3?qPpg(E49RJm<&nGLNi*^1V=Eds`Uy6T<^)Y`xF6dvN z=#R4SL=-cx-S*$8@W(9=h*9>_?_^8%?`QiPSf9q9TLk-`Q1p9PKPrD8Q}h?n%~IxQ z$o&oa&w4@sUyA+?){n~HzbpD%Ss%yW+XVeLRm%A@Zbe|YdAs0nxW!`WpoO zHbuXR^(Pgm7w1o_qCX<&e@f8*tfF7f`c)D7k1PCj%%2#+|GUE96qA3#3^{&}Fux^2 z|2V^!;%9%6AM@uEBtja`F~URo0uP!KchxB0AOYNU2`@f_o z2zyliJf-j_F+VDQo-lkVehq^C4+!>GRmt|(v3^wkOgDTZ)8 z_&qWC&nx_O%#X^SXANI!f1l9)hlTbpohAE!UrhTSQurmSg8YlhpU)Y-WPiV4|09C^ zZ+x3lJ=;O#T*y-^2W<{JBqQ|4yO(^sIoA zAguX$fqo~JR%-6`gWWOhf3L#d$NZ@LxyBtoKPK2esOTrJ3K|-fKVMb!OXy~M zbCd?vPn(ccua{oRUwuh9M{1^p)!{gIgMe@xLI659Wipnv$;vj4|@Ac(S!pN+X2|9>m` zyM^{YE$Giy^yjhuBrD8kSN}Z2m*QXcG9zXV%>Qo-`d2IZEiv1_O3|-oed|BU|L+L; zTNV8Q)=%bI5&m)8|3yWAE$iF;C+UAr&_DVea{Px`zaf;)y>j)(8@}ZKt*p<}cy9dp zzMx;H=$Ee!gp(2a=PUZ<^k5%zVEcb4=s%?Br&zxsS4;TEZU5&K{RY;@_WwxG->2vg z#BBec6#bn-`+p+nUviET|CsH6m*GqCFBup3AKU*^LH{;Izx;!N&y%6+bFWm5O zvOdQD=Yswp75x?FPSGC_+W!kd|HNw9{{yUV$1iJ!+y2=Ke~9@}>%Vq|zl-@% z>!0@-z7+qmmk05;_S5+DYoYyjEBYl@Cvu172mcDR>}xuIt6KJ7GA2K9uFS7uew6>t zRQU6lALYLa!0`!tamizoX8R{l6`y|Bf_#$$yIk z|GgmiZ?2+060`lQ6@KEHAWNh2_p=JWl=)Hl_br7#h51qW_oU%V{_7C@H~O;T{nr6S ze^Jc#mz^)izaysorx?Cu|60NRzY6v@DEb>?>R+ztZxZzXCg|U*=nuuzze~~ID(L@1 z(0^Xh-xpK=Sw(+X(Eq2Pe?pBM|735_f0~0+{x8KEkK+uVuxe8`9wUPOzXbhW!#~Ur z-RlQydV|`UgH!%5Y2on!!zawuw-ws{PxIf4g8r!COZp?dfl4!qnb)L+#|wr}n5$pP z4MP3@2>O@T%KG!J4OF7^FEM;czg*Bi%=n;$jkk7fV|`w(=9@Oa`pG;Jys&%=e@W4= zWBocVNd7-u(0^9ZA7=dtR*288{x1~$KGw(e=gS5C7g?XTOL?{3tbb%430}DRrSD86 zUSr-eRTmti%y-M%f7|mhhM$XH0XvZx6yjGR*#8#8Kg@95`0bC-w{nxMzSDnq3i?M1 z`WLgl^|P%v@uA?AJO7cbblCHInIE9x-zm%wk>Hi(S-gw+j`@jl=I@_uO9p4_cZ;^! z_FI6@qul<669Rzp_ccQM$sSjm7-jbby!~r~^U=gNfwua#{~cl8Hg6Rj$?~A3Co~nl X<+lH5^R~oKy(zG2jcFeqF8}`l$(Y)$ literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d new file mode 100644 index 0000000..793432f --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d @@ -0,0 +1,182 @@ +CMakeFiles/execute_add_op.dir/op_runner.cpp.o: \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp \ + /usr/include/stdc-predef.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/op_runner.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_rt.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/error_codes/rt_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/error_codes/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_op.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_mdl.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/aclnn/acl_meta.h \ + /usr/include/c++/11/cstdint \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/cstdlib /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/endian.h /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/alloca.h /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_base.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h \ + /usr/include/c++/11/cstdio /usr/include/stdio.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/c++/11/iomanip /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/memoryfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/c++/11/bits/ios_base.h /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/cctype \ + /usr/include/ctype.h /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/string /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cerrno \ + /usr/include/errno.h /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/typeinfo /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/locale /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/streambuf /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/locale_facets_nonio.h /usr/include/c++/11/ctime \ + /usr/include/aarch64-linux-gnu/c++/11/bits/time_members.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/messages_members.h \ + /usr/include/libintl.h /usr/include/c++/11/bits/codecvt.h \ + /usr/include/c++/11/bits/locale_facets_nonio.tcc \ + /usr/include/c++/11/bits/locale_conv.h \ + /usr/include/c++/11/bits/unique_ptr.h /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h /usr/include/c++/11/tuple \ + /usr/include/c++/11/array /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/operator_desc.h \ + /usr/include/c++/11/cassert /usr/include/assert.h \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/atc/include/acl/acl_op_compiler.h \ + /usr/local/Ascend/ascend-toolkit/latest/atc/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/atc/include/acl/acl_op.h \ + /usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/include/aclnn_add_custom.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..cde5de165348f831660abd3cc4b5a07e8cacda83 GIT binary patch literal 57816 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 CA-u)_ literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d new file mode 100644 index 0000000..cfc45b1 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d @@ -0,0 +1,175 @@ +CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp \ + /usr/include/stdc-predef.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/operator_desc.h \ + /usr/include/c++/11/string \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/postypes.h /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/c++/11/cstdint \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/cctype /usr/include/ctype.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/alloca.h /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/c++/11/bits/std_abs.h /usr/include/c++/11/cstdio \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/c++/11/cerrno /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/basic_string.tcc /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_rt.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/error_codes/rt_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/error_codes/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_op.h \ + /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_mdl.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h \ + /usr/include/c++/11/iomanip /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/typeinfo /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/locale /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/streambuf /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/locale_facets_nonio.h /usr/include/c++/11/ctime \ + /usr/include/aarch64-linux-gnu/c++/11/bits/time_members.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/messages_members.h \ + /usr/include/libintl.h /usr/include/c++/11/bits/codecvt.h \ + /usr/include/c++/11/bits/locale_facets_nonio.tcc \ + /usr/include/c++/11/bits/locale_conv.h \ + /usr/include/c++/11/bits/unique_ptr.h /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h /usr/include/c++/11/tuple \ + /usr/include/c++/11/array /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/progress.make b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/progress.make new file mode 100644 index 0000000..33e6bff --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/progress.make @@ -0,0 +1,6 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 +CMAKE_PROGRESS_3 = 3 +CMAKE_PROGRESS_4 = 4 +CMAKE_PROGRESS_5 = 5 + diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/progress.marks b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/progress.marks new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/CMakeFiles/progress.marks @@ -0,0 +1 @@ +5 diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/Makefile b/Increase_Bedore_pipe/AclNNInvocation/build/Makefile new file mode 100644 index 0000000..cf78733 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/Makefile @@ -0,0 +1,311 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named execute_add_op + +# Build rule for target. +execute_add_op: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 execute_add_op +.PHONY : execute_add_op + +# fast build rule for target. +execute_add_op/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/build +.PHONY : execute_add_op/fast + +common.o: common.cpp.o +.PHONY : common.o + +# target to build an object file +common.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/common.cpp.o +.PHONY : common.cpp.o + +common.i: common.cpp.i +.PHONY : common.i + +# target to preprocess a source file +common.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/common.cpp.i +.PHONY : common.cpp.i + +common.s: common.cpp.s +.PHONY : common.s + +# target to generate assembly for a file +common.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/common.cpp.s +.PHONY : common.cpp.s + +main.o: main.cpp.o +.PHONY : main.o + +# target to build an object file +main.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/main.cpp.o +.PHONY : main.cpp.o + +main.i: main.cpp.i +.PHONY : main.i + +# target to preprocess a source file +main.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/main.cpp.i +.PHONY : main.cpp.i + +main.s: main.cpp.s +.PHONY : main.s + +# target to generate assembly for a file +main.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/main.cpp.s +.PHONY : main.cpp.s + +op_runner.o: op_runner.cpp.o +.PHONY : op_runner.o + +# target to build an object file +op_runner.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/op_runner.cpp.o +.PHONY : op_runner.cpp.o + +op_runner.i: op_runner.cpp.i +.PHONY : op_runner.i + +# target to preprocess a source file +op_runner.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/op_runner.cpp.i +.PHONY : op_runner.cpp.i + +op_runner.s: op_runner.cpp.s +.PHONY : op_runner.s + +# target to generate assembly for a file +op_runner.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/op_runner.cpp.s +.PHONY : op_runner.cpp.s + +operator_desc.o: operator_desc.cpp.o +.PHONY : operator_desc.o + +# target to build an object file +operator_desc.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/operator_desc.cpp.o +.PHONY : operator_desc.cpp.o + +operator_desc.i: operator_desc.cpp.i +.PHONY : operator_desc.i + +# target to preprocess a source file +operator_desc.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/operator_desc.cpp.i +.PHONY : operator_desc.cpp.i + +operator_desc.s: operator_desc.cpp.s +.PHONY : operator_desc.s + +# target to generate assembly for a file +operator_desc.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/operator_desc.cpp.s +.PHONY : operator_desc.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... rebuild_cache" + @echo "... execute_add_op" + @echo "... common.o" + @echo "... common.i" + @echo "... common.s" + @echo "... main.o" + @echo "... main.i" + @echo "... main.s" + @echo "... op_runner.o" + @echo "... op_runner.i" + @echo "... op_runner.s" + @echo "... operator_desc.o" + @echo "... operator_desc.i" + @echo "... operator_desc.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/AclNNInvocation/build/cmake_install.cmake b/Increase_Bedore_pipe/AclNNInvocation/build/cmake_install.cmake new file mode 100644 index 0000000..027ce20 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/build/cmake_install.cmake @@ -0,0 +1,74 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/../output" TYPE EXECUTABLE FILES "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/lib:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op") + endif() + endif() +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/Increase_Bedore_pipe/AclNNInvocation/inc/common.h b/Increase_Bedore_pipe/AclNNInvocation/inc/common.h new file mode 100644 index 0000000..11bb4ae --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/inc/common.h @@ -0,0 +1,45 @@ +/** + * @file common.h + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#ifndef COMMON_H +#define COMMON_H + +#include +#include +#include +#include +#include + +#include "acl/acl.h" + +#define SUCCESS 0 +#define FAILED 1 + +#define INFO_LOG(fmt, args...) fprintf(stdout, "[INFO] " fmt "\n", ##args) +#define WARN_LOG(fmt, args...) fprintf(stdout, "[WARN] " fmt "\n", ##args) +#define ERROR_LOG(fmt, args...) fprintf(stderr, "[ERROR] " fmt "\n", ##args) + +/** + * @brief Read data from file + * @param [in] filePath: file path + * @param [out] fileSize: file size + * @return read result + */ +bool ReadFile(const std::string &filePath, size_t fileSize, void *buffer, size_t bufferSize); + +/** + * @brief Write data to file + * @param [in] filePath: file path + * @param [in] buffer: data to write to file + * @param [in] size: size to write + * @return write result + */ +bool WriteFile(const std::string &filePath, const void *buffer, size_t size); + +#endif // COMMON_H diff --git a/Increase_Bedore_pipe/AclNNInvocation/inc/op_runner.h b/Increase_Bedore_pipe/AclNNInvocation/inc/op_runner.h new file mode 100644 index 0000000..66b6ea2 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/inc/op_runner.h @@ -0,0 +1,180 @@ +/** + * @file op_runner.h + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#ifndef OP_RUNNER_H +#define OP_RUNNER_H + +#include "acl/acl.h" +#include "aclnn/acl_meta.h" +#include "common.h" +#include "operator_desc.h" + +/** + * Op Runner + */ +class OpRunner { +public: + /** + * @brief Constructor + * @param [in] opDesc: op description + */ + explicit OpRunner(OperatorDesc *opDesc); + + /** + * @brief Destructor + */ + virtual ~OpRunner(); + + /** + * @brief Init op runner + */ + bool Init(); + + /** + * @brief Get number of inputs + * @return number of inputs + */ + const size_t NumInputs(); + + /** + * @brief Get number of outputs + * @return number of outputs + */ + const size_t NumOutputs(); + + /** + * @brief Get input size by index + * @param [in] index: input index + * @return size of the input + */ + const size_t GetInputSize(size_t index) const; + const size_t GetInputNumDims(size_t index) const; + aclDataType GetInputDataType(size_t index) const; + aclFormat GetInputFormat(size_t index) const; + + /** + * @brief Get output size by index + * @param [in] index: output index + * @return size of the output + */ + size_t GetOutputSize(size_t index) const; + const size_t GetOutputNumDims(size_t index) const; + aclDataType GetOutputDataType(size_t index) const; + aclFormat GetOutputFormat(size_t index) const; + + /** + * @brief Get input element count by index + * @param i[in] ndex: input index + * @return element count of the input + */ + size_t GetInputElementCount(size_t index) const; + + /** + * @brief Get output element count by index + * @param [in] index: output index + * @return element count of the output + */ + size_t GetOutputElementCount(size_t index) const; + + /** + * @brief Get input shape by index + * @param [in] index: input index + * @return shape of the output + */ + std::vector GetInputShape(size_t index) const; + + /** + * @brief Get output shape by index + * @param [in] index: output index + * @return shape of the output + */ + std::vector GetOutputShape(size_t index) const; + + /** + * @brief Get input buffer(host memory) by index + * @tparam T: data type + * @param [in] index: input index + * @return host address of the input + */ + template T *GetInputBuffer(size_t index) + { + if (index >= numInputs_) { + ERROR_LOG("index out of range. index = %zu, numInputs = %zu", index, numInputs_); + return nullptr; + } + return reinterpret_cast(hostInputs_[index]); + } + + /** + * @brief Get output buffer(host memory) by index + * @tparam T: data type + * @param [in] index: output index + * @return host address of the output + */ + template const T *GetOutputBuffer(size_t index) + { + if (index >= numOutputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return nullptr; + } + + return reinterpret_cast(hostOutputs_[index]); + } + + /** + * @brief Print readable input by index + * @param [in] index: input index + * @param [in] elementsPerRow: number of elements per row + */ + void PrintInput(size_t index, size_t elementsPerRow = 16); + + /** + * @brief Print readable output by index + * @param [in] index: output index + * @param [in] elementsPerRow: number of elements per row + */ + void PrintOutput(size_t index, size_t elementsPerRow = 16); + + /** + * @brief Compile static op + * @return compile result + */ + bool CompileStaticOp(); + + /** + * @brief Compile dynamic op + * @return compile result + */ + bool CompileDynamicOp(); + + /** + * @brief Run op + * @return run result + */ + bool RunOp(); + +private: + size_t numInputs_; + size_t numOutputs_; + + std::vector inputBuffers_; + std::vector outputBuffers_; + + std::vector devInputs_; + std::vector devOutputs_; + + std::vector hostInputs_; + std::vector hostOutputs_; + + std::vector inputTensor_; + std::vector outputTensor_; + OperatorDesc *opDesc_; +}; + +#endif // OP_RUNNER_H diff --git a/Increase_Bedore_pipe/AclNNInvocation/inc/operator_desc.h b/Increase_Bedore_pipe/AclNNInvocation/inc/operator_desc.h new file mode 100644 index 0000000..6d8ee09 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/inc/operator_desc.h @@ -0,0 +1,57 @@ +/** + * @file operator_desc.h + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#ifndef OPERATOR_DESC_H +#define OPERATOR_DESC_H + +#include +#include + +#include "acl/acl.h" + +/** + * Op description + */ +struct OperatorDesc { + /** + * Constructor + */ + explicit OperatorDesc(); + + /** + * Destructor + */ + virtual ~OperatorDesc(); + + /** + * Add an input tensor description + * @param [in] dataType: data type + * @param [in] numDims: number of dims + * @param [in] dims: dims + * @param [in] format: format + * @return OperatorDesc + */ + OperatorDesc &AddInputTensorDesc(aclDataType dataType, int numDims, const int64_t *dims, aclFormat format); + + /** + * Add an output tensor description + * @param [in] dataType: data type + * @param [in] numDims: number of dims + * @param [in] dims: dims + * @param [in] format: format + * @return OperatorDesc + */ + OperatorDesc &AddOutputTensorDesc(aclDataType dataType, int numDims, const int64_t *dims, aclFormat format); + + std::string opType; + std::vector inputDesc; + std::vector outputDesc; +}; + +#endif // OPERATOR_DESC_H diff --git a/Increase_Bedore_pipe/AclNNInvocation/input/.keep b/Increase_Bedore_pipe/AclNNInvocation/input/.keep new file mode 100644 index 0000000..e69de29 diff --git a/Increase_Bedore_pipe/AclNNInvocation/input/input_x.bin b/Increase_Bedore_pipe/AclNNInvocation/input/input_x.bin new file mode 100644 index 0000000000000000000000000000000000000000..66081f5724e0c3a347d238f3ed0cf9b3f34b35ff GIT binary patch literal 262144 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

)lvuS4$m+tM% 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 { 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/input/input_y.bin b/Increase_Bedore_pipe/AclNNInvocation/input/input_y.bin new file mode 100644 index 0000000000000000000000000000000000000000..e2a0a4f6b586cb40517ddbefda08080bd80fd558 GIT binary patch literal 262144 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

J&l?J_WSNY*aYvvsqjO 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/.keep b/Increase_Bedore_pipe/AclNNInvocation/output/.keep new file mode 100644 index 0000000..e69de29 diff --git a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/ArithmeticUtilization.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ArithmeticUtilization.csv similarity index 85% rename from Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/ArithmeticUtilization.csv rename to Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ArithmeticUtilization.csv index 51c3b2a..fb3711d 100644 --- a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/ArithmeticUtilization.csv +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ArithmeticUtilization.csv @@ -1,2 +1,2 @@ block_id,sub_block_id,aic_time(us),aic_total_cycles,aic_cube_ratio,aic_cube_fp16_ratio,aic_cube_int8_ratio,aic_cube_fops,aic_cube_total_instr_number,aic_cube_fp_instr_number,aic_cube_int_instr_number,aiv_time(us),aiv_total_cycles,aiv_vec_ratio,aiv_vec_fp32_ratio,aiv_vec_fp16_ratio,aiv_vec_int32_ratio,aiv_vec_int16_ratio,aiv_vec_misc_ratio,aiv_vec_fops, -0,cube0,2.973856,3640,0.000000,0.000000,0.000000,0,0,0,0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A, +0,cube0,6.205883,7596,0.000000,0.000000,0.000000,0,0,0,0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A, diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/L2Cache.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/L2Cache.csv new file mode 100644 index 0000000..111fa6d --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/L2Cache.csv @@ -0,0 +1,2 @@ +block_id,sub_block_id,aic_time(us),aic_total_cycles,aic_write_cache_hit,aic_write_cache_miss_allocate,aic_r0_read_cache_hit,aic_r0_read_cache_miss_allocate,aic_r1_read_cache_hit,aic_r1_read_cache_miss_allocate,aic_write_hit_rate(%),aic_read_hit_rate(%),aic_total_hit_rate(%),aiv_time(us),aiv_total_cycles,aiv_write_cache_hit,aiv_write_cache_miss_allocate,aiv_r0_read_cache_hit,aiv_r0_read_cache_miss_allocate,aiv_r1_read_cache_hit,aiv_r1_read_cache_miss_allocate,aiv_write_hit_rate(%),aiv_read_hit_rate(%),aiv_total_hit_rate(%), +0,cube0,6.205883,7596,268,0,17,512,16,513,100.000000,3.119093,22.699850,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A, diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/Memory.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/Memory.csv new file mode 100644 index 0000000..d998736 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/Memory.csv @@ -0,0 +1,2 @@ +block_id,sub_block_id,aic_time(us),aic_total_cycles,aic_l1_read_bw(GB/s),aic_l1_write_bw(GB/s),aic_main_mem_read_bw(GB/s),aic_main_mem_write_bw(GB/s),aic_mte1_instructions,aic_mte1_ratio,aic_mte2_instructions,aic_mte2_ratio,aic_mte3_instructions,aic_mte3_ratio,aiv_time(us),aiv_total_cycles,aiv_ub_to_gm_bw(GB/s),aiv_gm_to_ub_bw(GB/s),aiv_main_mem_read_bw(GB/s),aiv_main_mem_write_bw(GB/s),aiv_mte2_instructions,aiv_mte2_ratio,aiv_mte3_instructions,aiv_mte3_ratio,read_main_memory_datas(KB),write_main_memory_datas(KB),GM_to_L1_datas(KB),GM_to_L1_bw_usage_rate(%),L1_to_GM_datas(KB)(estimate),L1_to_GM_bw_usage_rate(%)(estimate),L0C_to_L1_datas(KB),L0C_to_L1_bw_usage_rate(%),L0C_to_GM_datas(KB),L0C_to_GM_bw_usage_rate(%),GM_to_UB_datas(KB),GM_to_UB_bw_usage_rate(%),UB_to_GM_datas(KB),UB_to_GM_bw_usage_rate(%), +0,cube0,6.205883,7596,0.000000,0.000000,20.323206,19.900608,2,0.000527,35,0.815692,33,0.768036,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,132.250000,129.500000,0.000000,N/A,134.000000,N/A,0.000000,N/A,0.000000,N/A,N/A,N/A,N/A,N/A, diff --git a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/MemoryL0.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryL0.csv similarity index 79% rename from Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/MemoryL0.csv rename to Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryL0.csv index ee08ae4..e299878 100644 --- a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/MemoryL0.csv +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryL0.csv @@ -1,2 +1,2 @@ block_id,sub_block_id,aic_time(us),aic_total_cycles,aic_l0a_read_bw(GB/s),aic_l0a_write_bw(GB/s),aic_l0b_read_bw(GB/s),aic_l0b_write_bw(GB/s),aic_l0c_read_bw_cube(GB/s),aic_l0c_write_bw_cube(GB/s),aiv_time(us),aiv_total_cycles, -0,cube0,2.973856,3640,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,N/A,N/A, +0,cube0,6.205883,7596,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,N/A,N/A, diff --git a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/MemoryUB.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryUB.csv similarity index 80% rename from Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/MemoryUB.csv rename to Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryUB.csv index 0c6fed2..d901d18 100644 --- a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/MemoryUB.csv +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/MemoryUB.csv @@ -1,2 +1,2 @@ block_id,sub_block_id,aic_time(us),aic_total_cycles,aiv_time(us),aiv_total_cycles,aiv_ub_read_bw_vector(GB/s),aiv_ub_write_bw_vector(GB/s),aiv_ub_read_bw_scalar(GB/s),aiv_ub_write_bw_scalar(GB/s), -0,cube0,2.973856,3640,N/A,N/A,N/A,N/A,N/A,N/A, +0,cube0,6.205883,7596,N/A,N/A,N/A,N/A,N/A,N/A, diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/OpBasicInfo.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/OpBasicInfo.csv new file mode 100644 index 0000000..149e475 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/OpBasicInfo.csv @@ -0,0 +1,2 @@ +Op Name,Op Type,Task Duration(us),Block Dim,Mix Block Dim, +AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_0,cube,16.000000,1,N/A, diff --git a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/PipeUtilization.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/PipeUtilization.csv similarity index 71% rename from Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/PipeUtilization.csv rename to Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/PipeUtilization.csv index 90f130a..4287b76 100644 --- a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/PipeUtilization.csv +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/PipeUtilization.csv @@ -1,2 +1,2 @@ block_id,sub_block_id,aic_time(us),aic_total_cycles,aic_cube_time(us),aic_cube_ratio,aic_scalar_time(us),aic_scalar_ratio,aic_mte1_time(us),aic_mte1_ratio,aic_mte2_time(us),aic_mte2_ratio,aic_mte3_time(us),aic_mte3_ratio,aic_fixpipe_time(us),aic_fixpipe_ratio,aic_icache_miss_rate,aiv_time(us),aiv_total_cycles,aiv_vec_time(us),aiv_vec_ratio,aiv_scalar_time(us),aiv_scalar_ratio,aiv_mte2_time(us),aiv_mte2_ratio,aiv_mte3_time(us),aiv_mte3_ratio,aiv_icache_miss_rate, -0,cube0,2.973856,3640,0.000000,0.000000,1.290033,0.433791,0.003268,0.001099,1.843137,0.619780,0.001634,0.000549,0.000817,0.000275,0.222222,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A, +0,cube0,6.205883,7596,0.000000,0.000000,1.474673,0.237625,0.003268,0.000527,5.062091,0.815692,4.766340,0.768036,0.000817,0.000132,0.100372,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A, diff --git a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/ResourceConflictRatio.csv b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ResourceConflictRatio.csv similarity index 86% rename from Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/ResourceConflictRatio.csv rename to Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ResourceConflictRatio.csv index 0e0a5ba..33259c9 100644 --- a/Increase_DataCopy_case/AclNNInvocation/output/OPPROF_20240827171423_EXIUBCRAVAHHZJVC/ResourceConflictRatio.csv +++ b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/ResourceConflictRatio.csv @@ -1,2 +1,2 @@ block_id,sub_block_id,aic_time(us),aic_total_cycles,aic_cube_wait_ratio,aic_mte1_wait_ratio,aic_mte2_wait_ratio,aic_mte3_wait_ratio,aiv_time(us),aiv_total_cycles,aiv_vec_total_cflt_ratio,aiv_vec_bankgroup_cflt_ratio,aiv_vec_bank_cflt_ratio,aiv_vec_resc_cflt_ratio,aiv_vec_mte_cflt_ratio,aiv_vec_wait_ratio,aiv_mte1_wait_ratio,aiv_mte2_wait_ratio,aiv_mte3_wait_ratio, -0,cube0,2.973856,3640,0.000000,0.000000,0.000000,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A, +0,cube0,6.205883,7596,0.000000,0.000000,0.000000,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A, diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf1.bin b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf1.bin new file mode 100644 index 0000000000000000000000000000000000000000..0080cfda5d34f74361d58cf6c1ef38280189e08e GIT binary patch literal 128 zcmdO7xSY+%z{`LF79eux4gl6n0}_V3?8(p#h%12c-Z2 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf7.bin b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/DeviceProf7.bin new file mode 100644 index 0000000000000000000000000000000000000000..e74f907ea6d38bcd3f56a62e1b262d5111d92705 GIT binary patch literal 128 mcmdO7xSY+%V9tO779e>2G6*&`SZBUn6?S7`VA%T;LIVJeF$l*1 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/duration.bin b/Increase_Bedore_pipe/AclNNInvocation/output/OPPROF_20240525182827_WEIPJCSPJHSVKIGB/dump/duration.bin new file mode 100644 index 0000000000000000000000000000000000000000..a2155499bed03d3d047f24dba2549a735d36a052 GIT binary patch literal 128 kcmZo*yqwL*V9s#r+f`vV76u?_U;>fEf`c&qKgrV%0MGCX8vpu%dN6i%`3`ULwa5EzgFszXv2Oa5m&>lVN%f;B*g4u(KWLM_y`JV{QP1%8`7 z#-3qMvj^BYB&A5cC{E`Xh@%V7$8+PykN*C}iTr%|;{E%3BBGllj7jhJu}LPgH2fGu zaUqf!>D`lQETUi`=J=Wn@TGBaPE0aPv)H)4TgGsGzRE zH)6JumK27Cs|k*FJDfV6XOZz5M&`+%IDnhhcwNn&%t?=#B+|HW<94V?=EbuG(n{5K@tHB&Y*6alW1RukOrean;HGENNzAAX_kCQ z7J*I{#ZXs^q#!-ZEHelX*XEOFd42Vq=ofFUpA-I_fD{~@obh_9>-F^)&s{H79Oyn> zF{t?G7UwunsuIV+8m9B*s)&tqQ3&HLuFkR>c_ZNQ8W`l?mx@Qek!vIbP6+1lJk9Qc zxmZdDz-~t#3Gc!gTtI6}u7E3S^CB(8ERgSV((5|D3nVb&p$MnaYARO&g;c{;pe;G? zxW4Z>lzQCqyS9tWkb^y=+$k}$_>Wbb!x~~1N6^Lj|&GMP;)fOx^%P=d6~M3HPTk(J;0`%f{sU4oiPd4ur#@=A9RSzJ z?hORWY7juoa96Q;10zu}Y$0$PIf!@h%k|;g10r>~XVHe7v`rg|rxIMsF1e?mo7-vD zWSs+EG0oD|hbe4|!!2Y5VUpqDCVG-K z3rLI>-L}cMvV`09F_I)5xfIF5xRipR9)jEvp@7xqTJIhe^j=HY@}LQ;-LrXy*b3*D z!R1k+fkLZ_Uta%Ik7RGf(LhBa1<)Z)Qq3`9XXy8Sn}-To+ZDu~JVpUWbnw)W2Tu=K z&+&gl1~Pu~!d9Er9ulQP6?|*;Oq6={-i4)lND5l)+6oV5u=DMnZ-m6Un}|xYhpw^V zu)V>KNHRxGA$z=iO4n+82h#~`TWH()E3KgU&!BPZxsYnS{AwgmJJ`mrEe>u}N~&9v z)P(X@vGjZ!h7AfS=XOKnvg3EklYBcg#$8mk`@J%b!6AxB+=Xh2*RoCr! z)N(x5uzG#*+g064>IrzDonsbrorb~NP|QSDH^HIIqv#~3I2*S*U6(s>$gA%r&bEZO TO5ismRE0`dY-mG}gD3w14PB-o literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/execute_add_op b/Increase_Bedore_pipe/AclNNInvocation/output/execute_add_op new file mode 100644 index 0000000000000000000000000000000000000000..fbec1b52688ada08ae43f0d5a2cf286da042659e GIT binary patch literal 165808 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 X3%Z#8@ZG=UDO;+$QDC`2eU1Jns?xLk literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/golden.bin b/Increase_Bedore_pipe/AclNNInvocation/output/golden.bin new file mode 100644 index 0000000000000000000000000000000000000000..a4b5383ff17a7e868f0fada5647b957cd11bbc47 GIT binary patch literal 262144 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

IVV4Px|BwGTQ|M&=j_m^Hff~l``&+O?UiHp+ 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 z⪙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,|j_>=7Dg&Q=oax|e(Ok48KXQ-B&B?zJ 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 LgwCYsf!h2JuZ`W# literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/output/output_z.bin b/Increase_Bedore_pipe/AclNNInvocation/output/output_z.bin new file mode 100644 index 0000000000000000000000000000000000000000..6d23118f0d0084657a974875123ddc1b9a0738dd GIT binary patch literal 262144 zcmeIuF#!Mo0K%a4Pwj07h(KY$fB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA Wz<>b*1`HT5V8DO@0|pEj_<;ccJOBXz literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/AclNNInvocation/run.sh b/Increase_Bedore_pipe/AclNNInvocation/run.sh new file mode 100644 index 0000000..b13bcda --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/run.sh @@ -0,0 +1,120 @@ +#!/bin/bash +export ASCEND_SLOG_PRINT_TO_STDOUT=0 +export ASCEND_GLOBAL_LOG_LEVEL=0 + +CURRENT_DIR=$( + cd $(dirname ${BASH_SOURCE:-$0}) + pwd +) +cd $CURRENT_DIR + +# 导出环境变量 +SHORT=v:, +LONG=dtype:, +OPTS=$(getopt -a --options $SHORT --longoptions $LONG -- "$@") +eval set -- "$OPTS" +while :; do + case "$1" in + # float16, float, int32 + -v | --dtype) + DTYPE="$2" + shift 2 + ;; + --) + shift + break + ;; + *) + echo "[ERROR] Unexpected option: $1" + break + ;; + esac +done + +if [ -n "$ASCEND_INSTALL_PATH" ]; then + _ASCEND_INSTALL_PATH=$ASCEND_INSTALL_PATH +elif [ -n "$ASCEND_HOME_PATH" ]; then + _ASCEND_INSTALL_PATH=$ASCEND_HOME_PATH +else + if [ -d "$HOME/Ascend/ascend-toolkit/latest" ]; then + _ASCEND_INSTALL_PATH=$HOME/Ascend/ascend-toolkit/latest + else + _ASCEND_INSTALL_PATH=/usr/local/Ascend/ascend-toolkit/latest + fi +fi +source $_ASCEND_INSTALL_PATH/bin/setenv.bash +export DDK_PATH=$_ASCEND_INSTALL_PATH +export NPU_HOST_LIB=$_ASCEND_INSTALL_PATH/lib64 + +function main { + # 1. 清除遗留生成文件和日志文件 + rm -rf $HOME/ascend/log/* + rm ./input/*.bin + rm ./output/*.bin + + rm -rf ./output/O* + # 2. 生成输入数据和真值数据 + cd $CURRENT_DIR + python3 scripts/gen_data.py + if [ $? -ne 0 ]; then + echo "ERROR: generate input data failed!" + return 1 + fi + echo "INFO: generate input data success!" + + # 3. 编译acl可执行文件 + cd $CURRENT_DIR + rm -rf build + mkdir -p build + cd build + cmake ../src + if [ $? -ne 0 ]; then + echo "ERROR: cmake failed!" + return 1 + fi + echo "INFO: cmake success!" + make + if [ $? -ne 0 ]; then + echo "ERROR: make failed!" + return 1 + fi + echo "INFO: make success!" + + # 4. 运行可执行文件 + cd $CURRENT_DIR/output + echo "INFO: execute op!" + timeout 30 msprof op --launch-skip-before-match=0 ./execute_add_op + if [ $? -ne 0 ]; then + echo "ERROR: acl executable run failed! please check your project!" + return 1 + fi + echo "INFO: acl executable run success!" + + time_ust=$(($(python3 $CURRENT_DIR/scripts/get_time.py))) + + echo "time_use = $time_ust" + + # 5. 比较真值文件 + cd $CURRENT_DIR + ret=`python3 scripts/verify_result.py output/output_z.bin output/golden.bin` + echo $ret + if [ "x$ret" == "xtest pass" ]; then + + if [ $time_ust -eq 0 ]; then + echo "[ERROR] Performance not achieved" + return 1 + fi + + if [ $time_ust -ge $time_base ]; then + echo "test fail for performance exceeds baseline data" + return 1 + fi + echo "" + echo "#####################################" + echo "INFO: you have passed the Precision!" + echo "#####################################" + echo "" + fi +} + +main diff --git a/Increase_Bedore_pipe/AclNNInvocation/scripts/acl.json b/Increase_Bedore_pipe/AclNNInvocation/scripts/acl.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/scripts/acl.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/Increase_Bedore_pipe/AclNNInvocation/scripts/gen_data.py b/Increase_Bedore_pipe/AclNNInvocation/scripts/gen_data.py new file mode 100644 index 0000000..8478b91 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/scripts/gen_data.py @@ -0,0 +1,25 @@ +#!/usr/bin/python3 +# coding=utf-8 +# +# Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# =============================================================================== + +import numpy as np + + +def gen_golden_data_simple(): + input_x = np.random.uniform(1, 100, [32, 4096]).astype(np.float16) + input_y = np.random.uniform(1, 100, [32, 4096]).astype(np.float16) + golden = (input_x + input_y).astype(np.float16) + + input_x.tofile("./input/input_x.bin") + input_y.tofile("./input/input_y.bin") + golden.tofile("./output/golden.bin") + + +if __name__ == "__main__": + gen_golden_data_simple() diff --git a/Increase_Bedore_pipe/AclNNInvocation/scripts/get_time.py b/Increase_Bedore_pipe/AclNNInvocation/scripts/get_time.py new file mode 100644 index 0000000..fbeac39 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/scripts/get_time.py @@ -0,0 +1,31 @@ +import csv +from pathlib import Path + + +def get_time(file_path, time_use_list): + with open(file_path, 'r', encoding='utf-8') as file: + reader = csv.DictReader(file) + for row in reader: + time_use = row['Task Duration(us)'] + time_use_list.append(int(float(time_use)* 1000000)) + + +def find_min_time(): + min_time = 0 + time_use_list = [] + directory = Path('./') + filename_pattern = 'OpBasicInfo.csv' + + for file in directory.rglob(filename_pattern): + get_time(file, time_use_list) + + if len(time_use_list) > 0: + min_time = min(time_use_list) + + print(min_time) + +if __name__ == '__main__': + find_min_time() + + + diff --git a/Increase_Bedore_pipe/AclNNInvocation/scripts/verify_result.py b/Increase_Bedore_pipe/AclNNInvocation/scripts/verify_result.py new file mode 100644 index 0000000..d34249c --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/scripts/verify_result.py @@ -0,0 +1,40 @@ +#!/usr/bin/python3 +# coding=utf-8 +# +# Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# =============================================================================== + +import os +import sys +import numpy as np + +loss = 1e-4 # 容忍偏差,一般fp16要求绝对误差和相对误差均不超过千分之一 +minimum = 10e-10 + + +def verify_result(output, golden): + real_result = np.fromfile(output, dtype=np.float16).reshape(-1) + golden = np.fromfile(golden, dtype=np.float16).reshape(-1) + result = np.abs(real_result - golden) # 计算运算结果和预期结果偏差 + deno = np.maximum(np.abs(real_result), np.abs(golden)) # 获取最大值并组成新数组 + result_atol = np.less_equal(result, loss) # 计算绝对误差 + result_rtol = np.less_equal(result / np.add(deno, minimum), loss) # 计算相对误差 + if not result_rtol.all() and not result_atol.all(): + if np.sum(result_rtol == False) > real_result.size * loss and np.sum(result_atol == False) > real_result.size * loss: # 误差超出预期时返回打印错误,返回对比失败 + print("[ERROR] result error") + return False + print("test pass") + return True + +if __name__ == '__main__': + + if os.path.exists(sys.argv[1]) and os.path.exists(sys.argv[2]): + verify_result(sys.argv[1], sys.argv[2]) + else: + print("[ERROR] result error") + exit(1) + diff --git a/Increase_Bedore_pipe/AclNNInvocation/src/CMakeLists.txt b/Increase_Bedore_pipe/AclNNInvocation/src/CMakeLists.txt new file mode 100644 index 0000000..730ba00 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/src/CMakeLists.txt @@ -0,0 +1,67 @@ +# Copyright (c) Huawei Technologies Co., Ltd. 2020. All rights reserved. + +# CMake lowest version requirement +cmake_minimum_required(VERSION 3.5.1) + +# project information +project(acl_execute_add) + +# Compile options +add_compile_options(-std=c++11) + +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "../output") +set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "../output") + +set(INC_PATH $ENV{DDK_PATH}) + +if (NOT DEFINED ENV{DDK_PATH}) + set(INC_PATH "/usr/local/Ascend/ascend-toolkit/latest") + message(STATUS "set default INC_PATH: ${INC_PATH}") +else () + message(STATUS "env INC_PATH: ${INC_PATH}") +endif() + +set(CUST_PKG_PATH "${INC_PATH}/opp/vendors/customize/op_api") + +set(LIB_PATH $ENV{NPU_HOST_LIB}) + +# Dynamic libraries in the stub directory can only be used for compilation +if (NOT DEFINED ENV{NPU_HOST_LIB}) + set(LIB_PATH "/usr/local/Ascend/ascend-toolkit/latest/acllib/lib64/stub/") + set(LIB_PATH1 "/usr/local/Ascend/ascend-toolkit/latest/atc/lib64/stub/") + message(STATUS "set default LIB_PATH: ${LIB_PATH}") +else () + message(STATUS "env LIB_PATH: ${LIB_PATH}") +endif() + +# Header path +include_directories( + ${INC_PATH}/runtime/include + ${INC_PATH}/atc/include + ../inc + ${CUST_PKG_PATH}/include +) + +# add host lib path +link_directories( + ${LIB_PATH} + ${LIB_PATH1} + ${CUST_PKG_PATH}/lib +) + +add_executable(execute_add_op + operator_desc.cpp + op_runner.cpp + main.cpp + common.cpp +) + +target_link_libraries(execute_add_op + ascendcl + cust_opapi + acl_op_compiler + nnopbase + stdc++ +) + +install(TARGETS execute_add_op DESTINATION ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) diff --git a/Increase_Bedore_pipe/AclNNInvocation/src/common.cpp b/Increase_Bedore_pipe/AclNNInvocation/src/common.cpp new file mode 100644 index 0000000..992759c --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/src/common.cpp @@ -0,0 +1,80 @@ +/** + * @file common.cpp + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "common.h" + +#include +#include +#include + +#include + +extern bool g_isDevice; + +bool ReadFile(const std::string &filePath, size_t fileSize, void *buffer, size_t bufferSize) +{ + struct stat sBuf; + int fileStatus = stat(filePath.data(), &sBuf); + if (fileStatus == -1) { + ERROR_LOG("failed to get file %s", filePath.c_str()); + return false; + } + if (S_ISREG(sBuf.st_mode) == 0) { + ERROR_LOG("%s is not a file, please enter a file", filePath.c_str()); + return false; + } + + std::ifstream file; + file.open(filePath, std::ios::binary); + if (!file.is_open()) { + ERROR_LOG("Open file failed. path = %s", filePath.c_str()); + return false; + } + + std::filebuf *buf = file.rdbuf(); + size_t size = buf->pubseekoff(0, std::ios::end, std::ios::in); + if (size == 0) { + ERROR_LOG("file size is 0"); + file.close(); + return false; + } + if (size > bufferSize) { + ERROR_LOG("file size is larger than buffer size"); + file.close(); + return false; + } + buf->pubseekpos(0, std::ios::in); + buf->sgetn(static_cast(buffer), size); + fileSize = size; + file.close(); + return true; +} + +bool WriteFile(const std::string &filePath, const void *buffer, size_t size) +{ + if (buffer == nullptr) { + ERROR_LOG("Write file failed. buffer is nullptr"); + return false; + } + + int fd = open(filePath.c_str(), O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWRITE); + if (fd < 0) { + ERROR_LOG("Open file failed. path = %s", filePath.c_str()); + return false; + } + + size_t writeSize = write(fd, buffer, size); + (void)close(fd); + if (writeSize != size) { + ERROR_LOG("Write file Failed."); + return false; + } + + return true; +} diff --git a/Increase_Bedore_pipe/AclNNInvocation/src/main.cpp b/Increase_Bedore_pipe/AclNNInvocation/src/main.cpp new file mode 100644 index 0000000..5a78ad1 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/src/main.cpp @@ -0,0 +1,162 @@ +/** + * @file main.cpp + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include +#include +#include + +#include +#include + +#include "acl/acl.h" +#include "common.h" +#include "op_runner.h" + +bool g_isDevice = false; +int deviceId = 0; + +OperatorDesc CreateOpDesc() +{ + // define operator + std::vector shape{32, 4096}; + aclDataType dataType = ACL_FLOAT16; + aclFormat format = ACL_FORMAT_ND; + OperatorDesc opDesc; + opDesc.AddInputTensorDesc(dataType, shape.size(), shape.data(), format); + opDesc.AddInputTensorDesc(dataType, shape.size(), shape.data(), format); + opDesc.AddOutputTensorDesc(dataType, shape.size(), shape.data(), format); + return opDesc; +} + +bool SetInputData(OpRunner &runner) +{ + size_t fileSize = 0; + ReadFile("../input/input_x.bin", fileSize, runner.GetInputBuffer(0), runner.GetInputSize(0)); + ReadFile("../input/input_y.bin", fileSize, runner.GetInputBuffer(1), runner.GetInputSize(1)); + INFO_LOG("Set input success"); + return true; +} + +bool ProcessOutputData(OpRunner &runner) +{ + WriteFile("../output/output_z.bin", runner.GetOutputBuffer(0), runner.GetOutputSize(0)); + INFO_LOG("Write output success"); + return true; +} + +void DestoryResource() +{ + bool flag = false; + if (aclrtResetDevice(deviceId) != ACL_SUCCESS) { + ERROR_LOG("Reset device %d failed", deviceId); + flag = true; + } + INFO_LOG("Reset Device success"); + if (aclFinalize() != ACL_SUCCESS) { + ERROR_LOG("Finalize acl failed"); + flag = true; + } + if (flag) { + ERROR_LOG("Destory resource failed"); + } else { + INFO_LOG("Destory resource success"); + } +} + +bool InitResource() +{ + std::string output = "../output"; + if (access(output.c_str(), 0) == -1) { + int ret = mkdir(output.c_str(), 0700); + if (ret == 0) { + INFO_LOG("Make output directory successfully"); + } else { + ERROR_LOG("Make output directory fail"); + return false; + } + } + + // acl.json is dump or profiling config file + if (aclInit("../scripts/acl.json") != ACL_SUCCESS) { + ERROR_LOG("acl init failed"); + return false; + } + + if (aclrtSetDevice(deviceId) != ACL_SUCCESS) { + ERROR_LOG("Set device failed. deviceId is %d", deviceId); + (void)aclFinalize(); + return false; + } + INFO_LOG("Set device[%d] success", deviceId); + + // runMode is ACL_HOST which represents app is running in host + // runMode is ACL_DEVICE which represents app is running in device + aclrtRunMode runMode; + if (aclrtGetRunMode(&runMode) != ACL_SUCCESS) { + ERROR_LOG("Get run mode failed"); + DestoryResource(); + return false; + } + g_isDevice = (runMode == ACL_DEVICE); + INFO_LOG("Get RunMode[%d] success", runMode); + + return true; +} + +bool RunOp() +{ + // create op desc + OperatorDesc opDesc = CreateOpDesc(); + + // create Runner + OpRunner opRunner(&opDesc); + if (!opRunner.Init()) { + ERROR_LOG("Init OpRunner failed"); + return false; + } + + // Load inputs + if (!SetInputData(opRunner)) { + ERROR_LOG("Set input data failed"); + return false; + } + + // Run op + if (!opRunner.RunOp()) { + ERROR_LOG("Run op failed"); + return false; + } + + // process output data + if (!ProcessOutputData(opRunner)) { + ERROR_LOG("Process output data failed"); + return false; + } + + INFO_LOG("Run op success"); + return true; +} + +int main(int argc, char **argv) +{ + if (!InitResource()) { + ERROR_LOG("Init resource failed"); + return FAILED; + } + INFO_LOG("Init resource success"); + + if (!RunOp()) { + DestoryResource(); + return FAILED; + } + + DestoryResource(); + + return SUCCESS; +} diff --git a/Increase_Bedore_pipe/AclNNInvocation/src/op_runner.cpp b/Increase_Bedore_pipe/AclNNInvocation/src/op_runner.cpp new file mode 100644 index 0000000..7e1623a --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/src/op_runner.cpp @@ -0,0 +1,453 @@ +/** + * @file op_runner.cpp + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "op_runner.h" + +#include +#include + +#include "acl/acl_op_compiler.h" +#include "aclnn_add_custom.h" +#include "common.h" + +using namespace std; + +extern bool g_isDevice; + +OpRunner::OpRunner(OperatorDesc *opDesc) : opDesc_(opDesc) +{ + numInputs_ = opDesc->inputDesc.size(); + numOutputs_ = opDesc->outputDesc.size(); +} + +OpRunner::~OpRunner() +{ + for (size_t i = 0; i < numInputs_; ++i) { + (void)aclDestroyTensor(inputTensor_[i]); + (void)aclDestroyDataBuffer(inputBuffers_[i]); + (void)aclrtFree(devInputs_[i]); + if (g_isDevice) { + (void)aclrtFree(hostInputs_[i]); + } else { + (void)aclrtFreeHost(hostInputs_[i]); + } + } + + for (size_t i = 0; i < numOutputs_; ++i) { + (void)aclDestroyTensor(outputTensor_[i]); + (void)aclDestroyDataBuffer(outputBuffers_[i]); + (void)aclrtFree(devOutputs_[i]); + if (g_isDevice) { + (void)aclrtFree(hostOutputs_[i]); + } else { + (void)aclrtFreeHost(hostOutputs_[i]); + } + } +} + +bool OpRunner::Init() +{ + for (size_t i = 0; i < numInputs_; ++i) { + auto size = GetInputSize(i); + void *devMem = nullptr; + if (aclrtMalloc(&devMem, size, ACL_MEM_MALLOC_HUGE_FIRST) != ACL_SUCCESS) { + ERROR_LOG("Malloc device memory for input[%zu] failed", i); + return false; + } + devInputs_.emplace_back(devMem); + inputBuffers_.emplace_back(aclCreateDataBuffer(devMem, size)); + + void *hostInput = nullptr; + if (g_isDevice) { + if (aclrtMalloc(&hostInput, size, ACL_MEM_MALLOC_HUGE_FIRST) != ACL_SUCCESS) { + ERROR_LOG("Malloc device memory for input[%zu] failed", i); + return false; + } + } else { + if (aclrtMallocHost(&hostInput, size) != ACL_SUCCESS) { + ERROR_LOG("Malloc device memory for input[%zu] failed", i); + return false; + } + } + if (hostInput == nullptr) { + ERROR_LOG("Malloc memory for input[%zu] failed", i); + return false; + } + hostInputs_.emplace_back(hostInput); + + aclTensor *inputTensor = + aclCreateTensor(GetInputShape(i).data(), GetInputNumDims(i), GetInputDataType(i), nullptr, 0, + GetInputFormat(i), GetInputShape(i).data(), GetInputNumDims(i), devInputs_[i]); + if (inputTensor == nullptr) { + ERROR_LOG("Create Tensor for input[%zu] failed", i); + return false; + } + inputTensor_.emplace_back(inputTensor); + } + + for (size_t i = 0; i < numOutputs_; ++i) { + auto size = GetOutputSize(i); + void *devMem = nullptr; + if (aclrtMalloc(&devMem, size, ACL_MEM_MALLOC_HUGE_FIRST) != ACL_SUCCESS) { + ERROR_LOG("Malloc device memory for output[%zu] failed", i); + return false; + } + devOutputs_.emplace_back(devMem); + outputBuffers_.emplace_back(aclCreateDataBuffer(devMem, size)); + + void *hostOutput = nullptr; + if (g_isDevice) { + if (aclrtMalloc(&hostOutput, size, ACL_MEM_MALLOC_HUGE_FIRST) != ACL_SUCCESS) { + ERROR_LOG("Malloc device memory for output[%zu] failed", i); + return false; + } + } else { + if (aclrtMallocHost(&hostOutput, size) != ACL_SUCCESS) { + ERROR_LOG("Malloc device memory for output[%zu] failed", i); + return false; + } + } + if (hostOutput == nullptr) { + ERROR_LOG("Malloc host memory for output[%zu] failed", i); + return false; + } + hostOutputs_.emplace_back(hostOutput); + + aclTensor *outputTensor = + aclCreateTensor(GetOutputShape(i).data(), GetOutputNumDims(i), GetOutputDataType(i), nullptr, 0, + GetOutputFormat(i), GetOutputShape(i).data(), GetOutputNumDims(i), devOutputs_[i]); + if (outputTensor == nullptr) { + ERROR_LOG("Create Tensor for output[%zu] failed", i); + return false; + } + outputTensor_.emplace_back(outputTensor); + } + + return true; +} + +const size_t OpRunner::NumInputs() +{ + return numInputs_; +} + +const size_t OpRunner::NumOutputs() +{ + return numOutputs_; +} + +const size_t OpRunner::GetInputSize(size_t index) const +{ + if (index >= numInputs_) { + ERROR_LOG("index out of range. index = %zu, numInputs = %zu", index, numInputs_); + return 0; + } + + return aclGetTensorDescSize(opDesc_->inputDesc[index]); +} + +const size_t OpRunner::GetInputNumDims(size_t index) const +{ + if (index >= numInputs_) { + ERROR_LOG("index out of range. index = %zu, numInputs = %zu", index, numInputs_); + return 0; + } + + return aclGetTensorDescNumDims(opDesc_->inputDesc[index]); +} + +aclDataType OpRunner::GetInputDataType(size_t index) const +{ + if (index >= numInputs_) { + ERROR_LOG("index out of range. index = %zu, numInputs = %zu", index, numInputs_); + return ACL_DT_UNDEFINED; + } + + return aclGetTensorDescType(opDesc_->inputDesc[index]); +} + +aclFormat OpRunner::GetInputFormat(size_t index) const +{ + if (index >= numInputs_) { + ERROR_LOG("index out of range. index = %zu, numInputs = %zu", index, numInputs_); + return ACL_FORMAT_UNDEFINED; + } + + return aclGetTensorDescFormat(opDesc_->inputDesc[index]); +} + +std::vector OpRunner::GetInputShape(size_t index) const +{ + std::vector ret; + if (index >= numInputs_) { + ERROR_LOG("index out of range. index = %zu, numInputs = %zu", index, numInputs_); + return ret; + } + + auto desc = opDesc_->inputDesc[index]; + for (size_t i = 0; i < aclGetTensorDescNumDims(desc); ++i) { + int64_t dimSize; + if (aclGetTensorDescDimV2(desc, i, &dimSize) != ACL_SUCCESS) { + ERROR_LOG("get dims from tensor desc failed. dims index = %zu", i); + ret.clear(); + return ret; + } + ret.emplace_back(dimSize); + } + + return ret; +} + +size_t OpRunner::GetOutputSize(size_t index) const +{ + if (index >= numOutputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return 0; + } + + return aclGetTensorDescSize(opDesc_->outputDesc[index]); +} + +const size_t OpRunner::GetOutputNumDims(size_t index) const +{ + if (index >= numOutputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return 0; + } + + return aclGetTensorDescNumDims(opDesc_->outputDesc[index]); +} + +aclDataType OpRunner::GetOutputDataType(size_t index) const +{ + if (index >= numOutputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return ACL_DT_UNDEFINED; + } + + return aclGetTensorDescType(opDesc_->outputDesc[index]); +} + +aclFormat OpRunner::GetOutputFormat(size_t index) const +{ + if (index >= numOutputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return ACL_FORMAT_UNDEFINED; + } + + return aclGetTensorDescFormat(opDesc_->outputDesc[index]); +} + +std::vector OpRunner::GetOutputShape(size_t index) const +{ + std::vector ret; + if (index >= numOutputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return ret; + } + + auto desc = opDesc_->outputDesc[index]; + for (size_t i = 0; i < aclGetTensorDescNumDims(desc); ++i) { + int64_t dimSize; + if (aclGetTensorDescDimV2(desc, i, &dimSize) != ACL_SUCCESS) { + ERROR_LOG("get dims from tensor desc failed. dims index = %zu", i); + ret.clear(); + return ret; + } + ret.emplace_back(dimSize); + } + return ret; +} + +size_t OpRunner::GetInputElementCount(size_t index) const +{ + if (index >= opDesc_->inputDesc.size()) { + ERROR_LOG("index out of range. index = %zu, numInputs = %zu", index, numInputs_); + return 0; + } + + return aclGetTensorDescElementCount(opDesc_->inputDesc[index]); +} + +size_t OpRunner::GetOutputElementCount(size_t index) const +{ + if (index >= opDesc_->outputDesc.size()) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return 0; + } + + return aclGetTensorDescElementCount(opDesc_->outputDesc[index]); +} + +bool OpRunner::RunOp() +{ + for (size_t i = 0; i < numInputs_; ++i) { + auto size = GetInputSize(i); + aclrtMemcpyKind kind = ACL_MEMCPY_HOST_TO_DEVICE; + if (g_isDevice) { + kind = ACL_MEMCPY_DEVICE_TO_DEVICE; + } + if (aclrtMemcpy(devInputs_[i], size, hostInputs_[i], size, kind) != ACL_SUCCESS) { + ERROR_LOG("Copy input[%zu] failed", i); + return false; + } + INFO_LOG("Copy input[%zu] success", i); + } + + aclrtStream stream = nullptr; + if (aclrtCreateStream(&stream) != ACL_SUCCESS) { + ERROR_LOG("Create stream failed"); + return false; + } + INFO_LOG("Create stream success"); + + size_t workspaceSize = 0; + aclOpExecutor *handle = nullptr; + auto ret = + aclnnAddCustomGetWorkspaceSize(inputTensor_[0], inputTensor_[1], outputTensor_[0], &workspaceSize, &handle); + if (ret != ACL_SUCCESS) { + (void)aclrtDestroyStream(stream); + ERROR_LOG("Get Operator Workspace failed. error code is %d", static_cast(ret)); + return false; + } + INFO_LOG("Execute aclnnAddCustomGetWorkspaceSize success, workspace size %lu", workspaceSize); + + void *workspace = nullptr; + if (workspaceSize != 0) { + if (aclrtMalloc(&workspace, workspaceSize, ACL_MEM_MALLOC_HUGE_FIRST) != ACL_SUCCESS) { + ERROR_LOG("Malloc device memory failed"); + } + } + + ret = aclnnAddCustom(workspace, workspaceSize, handle, stream); + if (ret != ACL_SUCCESS) { + (void)aclrtDestroyStream(stream); + ERROR_LOG("Execute Operator failed. error code is %d", static_cast(ret)); + return false; + } + INFO_LOG("Execute aclnnAddCustom success"); + + ret = aclrtSynchronizeStreamWithTimeout(stream, 5000); + if (ret != SUCCESS) { + ERROR_LOG("Synchronize stream failed. error code is %d", static_cast(ret)); + (void)aclrtDestroyStream(stream); + return false; + } + INFO_LOG("Synchronize stream success"); + + for (size_t i = 0; i < numOutputs_; ++i) { + auto size = GetOutputSize(i); + aclrtMemcpyKind kind = ACL_MEMCPY_DEVICE_TO_HOST; + if (g_isDevice) { + kind = ACL_MEMCPY_DEVICE_TO_DEVICE; + } + if (aclrtMemcpy(hostOutputs_[i], size, devOutputs_[i], size, kind) != ACL_SUCCESS) { + INFO_LOG("Copy output[%zu] success", i); + (void)aclrtDestroyStream(stream); + return false; + } + INFO_LOG("Copy output[%zu] success", i); + } + + (void)aclrtDestroyStream(stream); + return true; +} + +template void DoPrintData(const T *data, size_t count, size_t elementsPerRow) +{ + assert(elementsPerRow != 0); + for (size_t i = 0; i < count; ++i) { + std::cout << std::setw(10) << data[i]; + if (i % elementsPerRow == elementsPerRow - 1) { + std::cout << std::endl; + } + } +} + +void DoPrintFp16Data(const aclFloat16 *data, size_t count, size_t elementsPerRow) +{ + assert(elementsPerRow != 0); + for (size_t i = 0; i < count; ++i) { + std::cout << std::setw(10) << std::setprecision(4) << aclFloat16ToFloat(data[i]); + if (i % elementsPerRow == elementsPerRow - 1) { + std::cout << std::endl; + } + } +} + +void PrintData(const void *data, size_t count, aclDataType dataType, size_t elementsPerRow) +{ + if (data == nullptr) { + ERROR_LOG("Print data failed. data is nullptr"); + return; + } + + switch (dataType) { + case ACL_BOOL: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_INT8: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_UINT8: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_INT16: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_UINT16: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_INT32: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_UINT32: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_INT64: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_UINT64: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_FLOAT16: + DoPrintFp16Data(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_FLOAT: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + case ACL_DOUBLE: + DoPrintData(reinterpret_cast(data), count, elementsPerRow); + break; + default: + ERROR_LOG("Unsupported type: %d", dataType); + } +} + +void OpRunner::PrintInput(size_t index, size_t numElementsPerRow) +{ + if (index >= numInputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numInputs_); + return; + } + + auto desc = opDesc_->inputDesc[index]; + PrintData(hostInputs_[index], GetInputElementCount(index), aclGetTensorDescType(desc), numElementsPerRow); +} + +void OpRunner::PrintOutput(size_t index, size_t numElementsPerRow) +{ + if (index >= numOutputs_) { + ERROR_LOG("index out of range. index = %zu, numOutputs = %zu", index, numOutputs_); + return; + } + + auto desc = opDesc_->outputDesc[index]; + PrintData(hostOutputs_[index], GetOutputElementCount(index), aclGetTensorDescType(desc), numElementsPerRow); +} diff --git a/Increase_Bedore_pipe/AclNNInvocation/src/operator_desc.cpp b/Increase_Bedore_pipe/AclNNInvocation/src/operator_desc.cpp new file mode 100644 index 0000000..da04cf6 --- /dev/null +++ b/Increase_Bedore_pipe/AclNNInvocation/src/operator_desc.cpp @@ -0,0 +1,51 @@ +/** + * @file operator_desc.cpp + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "operator_desc.h" + +#include "common.h" + +using namespace std; + +OperatorDesc::OperatorDesc() {} + +OperatorDesc::~OperatorDesc() +{ + for (auto *desc : inputDesc) { + aclDestroyTensorDesc(desc); + } + + for (auto *desc : outputDesc) { + aclDestroyTensorDesc(desc); + } +} + +OperatorDesc &OperatorDesc::AddInputTensorDesc(aclDataType dataType, int numDims, const int64_t *dims, aclFormat format) +{ + aclTensorDesc *desc = aclCreateTensorDesc(dataType, numDims, dims, format); + if (desc == nullptr) { + ERROR_LOG("create tensor failed"); + return *this; + } + inputDesc.emplace_back(desc); + return *this; +} + +OperatorDesc &OperatorDesc::AddOutputTensorDesc(aclDataType dataType, int numDims, const int64_t *dims, + aclFormat format) +{ + aclTensorDesc *desc = aclCreateTensorDesc(dataType, numDims, dims, format); + if (desc == nullptr) { + ERROR_LOG("create tensor failed"); + return *this; + } + + outputDesc.emplace_back(desc); + return *this; +} diff --git a/Increase_Bedore_pipe/Is_increase/CMakeLists.txt b/Increase_Bedore_pipe/Is_increase/CMakeLists.txt new file mode 100644 index 0000000..584132d --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/CMakeLists.txt @@ -0,0 +1,69 @@ +cmake_minimum_required(VERSION 3.16.0) +project(opp) +if(ENABLE_CROSS_COMPILE) + if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL x86_64) + set(CROSS_COMPILE_PLATFORM aarch64) + else() + set(CROSS_COMPILE_PLATFORM x86_64) + endif() + set(PLATFORM ${CMAKE_SYSTEM_PROCESSOR}) + set(CMAKE_COMPILE_COMPILER_LIBRARY ${ASCEND_CANN_PACKAGE_PATH}/${PLATFORM}-linux/devlib/linux/${CROSS_COMPILE_PLATFORM}/) + set(CMAKE_COMPILE_RUNTIME_LIBRARY ${ASCEND_CANN_PACKAGE_PATH}/${PLATFORM}-linux/devlib/${CROSS_COMPILE_PLATFORM}/) + set(CMAKE_SYSTEM_PROCESSOR ${CROSS_COMPILE_PLATFORM}) + set(CMAKE_COMPILE ${CMAKE_CXX_COMPILER}) + set(CMAKE_CXX_COMPILER ${CMAKE_CROSS_PLATFORM_COMPILER}) +else() + set(CMAKE_COMPILE ${CMAKE_CXX_COMPILER}) +endif() + +include(cmake/config.cmake) +include(cmake/func.cmake) +include(cmake/intf.cmake) + +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/framework) + add_subdirectory(framework) +endif() +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/op_host) + add_subdirectory(op_host) +endif() +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/op_kernel) + add_subdirectory(op_kernel) +endif() +if(ENABLE_TEST AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/testcases) + add_subdirectory(testcases) +endif() + +# modify vendor_name in install.sh and upgrade.sh +add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/scripts/install.sh ${CMAKE_BINARY_DIR}/scripts/upgrade.sh + COMMAND mkdir -p ${CMAKE_BINARY_DIR}/scripts + COMMAND cp -r ${CMAKE_SOURCE_DIR}/scripts/* ${CMAKE_BINARY_DIR}/scripts/ + COMMAND sed -i "s/vendor_name=customize/vendor_name=${vendor_name}/g" ${CMAKE_BINARY_DIR}/scripts/* +) +add_custom_target(modify_vendor ALL DEPENDS ${CMAKE_BINARY_DIR}/scripts/install.sh ${CMAKE_BINARY_DIR}/scripts/upgrade.sh) +install(DIRECTORY ${CMAKE_BINARY_DIR}/scripts/ DESTINATION . FILE_PERMISSIONS OWNER_EXECUTE OWNER_READ GROUP_READ) + +install(FILES ${CMAKE_SOURCE_DIR}/custom.proto DESTINATION packages OPTIONAL) + +get_system_info(SYSTEM_INFO) + +# gen version.info +add_custom_target(gen_version_info ALL + COMMAND bash ${CMAKE_CURRENT_SOURCE_DIR}/cmake/util/gen_version_info.sh ${ASCEND_CANN_PACKAGE_PATH} ${CMAKE_CURRENT_BINARY_DIR} +) + +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/version.info + DESTINATION packages/vendors/${vendor_name}/) + +# CPack config +set(CPACK_PACKAGE_NAME ${CMAKE_PROJECT_NAME}) +set(CPACK_PACKAGE_VERSION ${CMAKE_PROJECT_VERSION}) +set(CPACK_PACKAGE_DESCRIPTION "CPack opp project") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack opp project") +set(CPACK_PACKAGE_DIRECTORY ${CMAKE_INSTALL_PREFIX}) +set(CPACK_PACKAGE_FILE_NAME "custom_opp_${SYSTEM_INFO}.run") +set(CPACK_GENERATOR External) +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_EXTERNAL_ENABLE_STAGING TRUE) +set(CPACK_EXTERNAL_PACKAGE_SCRIPT ${CMAKE_SOURCE_DIR}/cmake/makeself.cmake) +set(CPACK_EXTERNAL_BUILT_PACKAGES ${CPACK_PACKAGE_DIRECTORY}/_CPack_Packages/Linux/External/${CPACK_PACKAGE_FILE_NAME}/${CPACK_PACKAGE_FILE_NAME}) +include(CPack) diff --git a/Increase_Bedore_pipe/Is_increase/CMakePresets.json b/Increase_Bedore_pipe/Is_increase/CMakePresets.json new file mode 100644 index 0000000..f093397 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/CMakePresets.json @@ -0,0 +1,63 @@ +{ + "version": 1, + "cmakeMinimumRequired": { + "major": 3, + "minor": 19, + "patch": 0 + }, + "configurePresets": [ + { + "name": "default", + "displayName": "Default Config", + "description": "Default build using Unix Makefiles generator", + "generator": "Unix Makefiles", + "binaryDir": "${sourceDir}/build_out", + "cacheVariables": { + "CMAKE_BUILD_TYPE": { + "type": "STRING", + "value": "Release" + }, + "ENABLE_SOURCE_PACKAGE": { + "type": "BOOL", + "value": "True" + }, + "ENABLE_BINARY_PACKAGE": { + "type": "BOOL", + "value": "True" + }, + "ASCEND_COMPUTE_UNIT": { + "type": "STRING", + "value": "ascend310p;ascend310b;ascend910;ascend910b" + }, + "ENABLE_TEST": { + "type": "BOOL", + "value": "True" + }, + "vendor_name": { + "type": "STRING", + "value": "customize" + }, + "ASCEND_CANN_PACKAGE_PATH": { + "type": "PATH", + "value": "/usr/local/Ascend/ascend-toolkit/latest" + }, + "ASCEND_PYTHON_EXECUTABLE": { + "type": "STRING", + "value": "python3" + }, + "CMAKE_INSTALL_PREFIX": { + "type": "PATH", + "value": "${sourceDir}/build_out" + }, + "ENABLE_CROSS_COMPILE": { + "type": "BOOL", + "value": "False" + }, + "CMAKE_CROSS_PLATFORM_COMPILER": { + "type": "PATH", + "value": "/usr/bin/aarch64-linux-gnu-g++" + } + } + } + ] +} diff --git a/Increase_Bedore_pipe/Is_increase/build.sh b/Increase_Bedore_pipe/Is_increase/build.sh new file mode 100644 index 0000000..4be96d7 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build.sh @@ -0,0 +1,37 @@ +#!/bin/bash +script_path=$(realpath $(dirname $0)) + + +mkdir -p build_out +rm -rf build_out/* +cd build_out + +cmake_version=$(cmake --version | grep "cmake version" | awk '{print $3}') +if [ "$cmake_version" \< "3.19.0" ] ; then + opts=$(python3 $script_path/cmake/util/preset_parse.py $script_path/CMakePresets.json) + echo $opts + cmake .. $opts +else + cmake .. --preset=default +fi +target=package +if [ "$1"x != ""x ]; then target=$1; fi + +cmake --build . --target $target -j16 +if [ $? -ne 0 ]; then exit 1; fi + +if [ $target = "package" ]; then + if test -d ./op_kernel/binary ; then + ./cust*.run + if [ $? -ne 0 ]; then exit 1; fi + cmake --build . --target binary -j16 + if [ $? -ne 0 ]; then exit 1; fi + cmake --build . --target $target -j16 + fi +fi + +# for debug +# cd build_out +# make +# cpack +# verbose append -v diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeCache.txt b/Increase_Bedore_pipe/Is_increase/build_out/CMakeCache.txt new file mode 100644 index 0000000..e644a17 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeCache.txt @@ -0,0 +1,425 @@ +# This is the CMakeCache file. +# For build in directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//No help, variable specified on the command line. +ASCEND_CANN_PACKAGE_PATH:PATH=/usr/local/Ascend/ascend-toolkit/latest + +//No help, variable specified on the command line. +ASCEND_COMPUTE_UNIT:STRING=ascend310p;ascend310b;ascend910;ascend910b + +//No help, variable specified on the command line. +ASCEND_PYTHON_EXECUTABLE:STRING=python3 + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//No help, variable specified on the command line. +CMAKE_BUILD_TYPE:STRING=Release + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//No help, variable specified on the command line. +CMAKE_CROSS_PLATFORM_COMPILER:PATH=/usr/bin/aarch64-linux-gnu-g++ + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11 + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//No help, variable specified on the command line. +CMAKE_INSTALL_PREFIX:PATH=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=opp + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Enable to build RPM source packages +CPACK_SOURCE_RPM:BOOL=OFF + +//Enable to build TBZ2 source packages +CPACK_SOURCE_TBZ2:BOOL=ON + +//Enable to build TGZ source packages +CPACK_SOURCE_TGZ:BOOL=ON + +//Enable to build TXZ source packages +CPACK_SOURCE_TXZ:BOOL=ON + +//Enable to build TZ source packages +CPACK_SOURCE_TZ:BOOL=ON + +//Enable to build ZIP source packages +CPACK_SOURCE_ZIP:BOOL=OFF + +//No help, variable specified on the command line. +ENABLE_BINARY_PACKAGE:BOOL=True + +//No help, variable specified on the command line. +ENABLE_CROSS_COMPILE:BOOL=False + +//No help, variable specified on the command line. +ENABLE_SOURCE_PACKAGE:BOOL=True + +//No help, variable specified on the command line. +ENABLE_TEST:BOOL=True + +//Value Computed by CMake +opp_BINARY_DIR:STATIC=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +//Value Computed by CMake +opp_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +opp_SOURCE_DIR:STATIC=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +//No help, variable specified on the command line. +vendor_name:STRING=customize + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=22 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_AR +CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB +CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=5 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_RPM +CPACK_SOURCE_RPM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TBZ2 +CPACK_SOURCE_TBZ2-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TGZ +CPACK_SOURCE_TGZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TXZ +CPACK_SOURCE_TXZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TZ +CPACK_SOURCE_TZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_ZIP +CPACK_SOURCE_ZIP-ADVANCED:INTERNAL=1 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake new file mode 100644 index 0000000..0c0b1de --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake @@ -0,0 +1,72 @@ +set(CMAKE_C_COMPILER "/usr/bin/cc") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "GNU") +set(CMAKE_C_COMPILER_VERSION "11.4.0") +set(CMAKE_C_COMPILER_VERSION_INTERNAL "") +set(CMAKE_C_COMPILER_WRAPPER "") +set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23") +set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes") +set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros") +set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert") +set(CMAKE_C17_COMPILE_FEATURES "c_std_17") +set(CMAKE_C23_COMPILE_FEATURES "c_std_23") + +set(CMAKE_C_PLATFORM_ID "Linux") +set(CMAKE_C_SIMULATE_ID "") +set(CMAKE_C_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_C_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-11") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCC 1) +set(CMAKE_C_COMPILER_LOADED 1) +set(CMAKE_C_COMPILER_WORKS TRUE) +set(CMAKE_C_ABI_COMPILED TRUE) + +set(CMAKE_C_COMPILER_ENV_VAR "CC") + +set(CMAKE_C_COMPILER_ID_RUN 1) +set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) +set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_C_LINKER_PREFERENCE 10) + +# Save compiler ABI information. +set(CMAKE_C_SIZEOF_DATA_PTR "8") +set(CMAKE_C_COMPILER_ABI "ELF") +set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_C_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") + +if(CMAKE_C_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_C_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") +endif() + +if(CMAKE_C_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") +endif() + +set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include") +set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s") +set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..f59b84f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake @@ -0,0 +1,83 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "11.4.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-11") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/11;/usr/include/aarch64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin new file mode 100644 index 0000000000000000000000000000000000000000..dfdc241f48036b01323e7889d7e41cfab5b12a27 GIT binary patch literal 9024 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 se?c7J`^pwP>W{8VPG8h_ul|e(JnJ*A{i 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 J5oGGs{};RSnOy(? literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake new file mode 100644 index 0000000..e7ba5ca --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-5.10.0+") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "5.10.0+") +set(CMAKE_HOST_SYSTEM_PROCESSOR "aarch64") + + + +set(CMAKE_SYSTEM "Linux-5.10.0+") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "5.10.0+") +set(CMAKE_SYSTEM_PROCESSOR "aarch64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c new file mode 100644 index 0000000..41b99d7 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c @@ -0,0 +1,803 @@ +#ifdef __cplusplus +# error "A C++ compiler has been selected for C." +#endif + +#if defined(__18CXX) +# define ID_VOID_MAIN +#endif +#if defined(__CLASSIC_C__) +/* cv-qualifiers did not exist in K&R C */ +# define const +# define volatile +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_C) +# define COMPILER_ID "SunPro" +# if __SUNPRO_C >= 0x5100 + /* __SUNPRO_C = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# endif + +#elif defined(__HP_cc) +# define COMPILER_ID "HP" + /* __HP_cc = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) + +#elif defined(__DECC) +# define COMPILER_ID "Compaq" + /* __DECC_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) + +#elif defined(__IBMC__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TINYC__) +# define COMPILER_ID "TinyCC" + +#elif defined(__BCC__) +# define COMPILER_ID "Bruce" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + +#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC) +# define COMPILER_ID "SDCC" +# if defined(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR) +# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH) +# else + /* SDCC = VRP */ +# define COMPILER_VERSION_MAJOR DEC(SDCC/100) +# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) +# define COMPILER_VERSION_PATCH DEC(SDCC % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if !defined(__STDC__) && !defined(__clang__) +# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) +# define C_VERSION "90" +# else +# define C_VERSION +# endif +#elif __STDC_VERSION__ > 201710L +# define C_VERSION "23" +#elif __STDC_VERSION__ >= 201710L +# define C_VERSION "17" +#elif __STDC_VERSION__ >= 201000L +# define C_VERSION "11" +#elif __STDC_VERSION__ >= 199901L +# define C_VERSION "99" +#else +# define C_VERSION "90" +#endif +const char* info_language_standard_default = + "INFO" ":" "standard_default[" C_VERSION "]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +# if defined(__CLASSIC_C__) +int main(argc, argv) int argc; char *argv[]; +# else +int main(int argc, char* argv[]) +# endif +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out new file mode 100644 index 0000000000000000000000000000000000000000..e8a72558d96dcc6624712e8c2160f02c6c9e0f9f GIT binary patch literal 9168 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 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out new file mode 100644 index 0000000000000000000000000000000000000000..47c74a11ebba8f57647130a4389f88befac42ec5 GIT binary patch literal 9176 zcmeHNYiwLc6+XM`wodbKTtZq%NH&ij;gO9ULh6>%tY2}A94DkMDn#Y_+Pn5{yWX{S z?-nOP#DyYJwM90KsHs%2pg-IKQjtPQq^hJLZOOKC{EN?Nc4xR7LPUCb%y%Ah?#!9FGsiyO-M2R!3K2?#eo4}ryw)OdWt?5F6((_NqhXEJ2TNISc+t^?6b!MgI z&#bf-L1)#EIi=8(rs&P7-kj=zE~sOmct3eJc?Q&8kajUo3aH3RIryfRkb2iL)2yMl zS(ref_XXC|DN~6nlhw*Tr2Q>5E-CdN6!WknlOEcUNo>!gv&D(+uA3iD?cNnDm%RVkjX)J)^exS7R84f>R8>!ShNl<+MDa(3C5yzaFMNNzp#WnInMBe>x`tcZYF&+ z$xR;UVW;4^dCwVh(^+zda(RygmEqn^J$=0$ozBi!>&=zwr+1OlJFwqLB=gD9biqsJ z2ljVna@pj7JCqTdqhq$d$ELr>VHcsDik&p=FnvyS zvA!Z2s8c$@v$~Fe#}!{_vhxG{gyM}lZ@|%B9l)n_0p1kA=M|3z@QaFX3*e2q{#pX~ zHpS1XpCNuPeKqsO^FG`kf`9el{&jlMhpQ{b&NGUK*|@9=lv6(3Z~u%B_uGHjhhuGt zt&P#hA1@#K)l-)vH2o=}6PJ&@Fn1>6ytcsD6wy@kYdxjaKe~N78s7Mt$l@`)KQZq` z%QNlQxqZRczQFD99;0jcZ*hCGZR0&a#qP&w^7k9~c{4&!pO3^#7q-y!TkO{)`#~3b zN)hHY@N>Rge(Y_24E|nEDNc0qjdJ-$@f-dz?-`n>>HC>(V!DUuZ)bQL=JwR4w|h!1 z>nub3Xd`rUjJojxC-Qh6htHu`az4pF=`-!yqTO7swag>Pa0C+0WCPxCIhd>(RxSC=F9 zEi}7%+Sp1Bw$-&Wdv!a;uQOMd6Ce4VrZG>5JH#CO!@EmZ2=(^wJ#g!AZfrcAN#+mp zm*H*$SL4oo$$TN5%N}kqrL{F?D=oWFX;C$+H=c35kz9W4aG!jw49oN*U#-Jd(zJP( z%_iJ@f;Y|)x0vw`x87W3CpqCIv(j;)B5|PqZVIi7e723Rq1zg&KX=|QG1FYkaoUJ=?bMd=j!!@#`O^K5#{6jg?kjv7#~$W z&SC4d4gTNXFXsfBvD6{i|%>kHrnd+p&4y7PVJi*ERsd#Y{A-2(T2KR3c>0^FOc@d!<5+*RWZm3XbjuOY-~HGVB2 zo~!Ze2=iQxHxlBb8ec|;!)pBcO1xI%OWjXb5azX7eq|*eQ;n~xtoLfXiN1|M_c0>; zJ9~XXvZlpH7 zcU8+{H7}ylTLZmQUPNrozD{kN$i6AJS;S9N71~}de2Kt4auLa^{*A?xoq*nrV_#+{5^4UtB?Jg7M90_~@+4#{+i0Yw)!-`_=auzad<^ zPJg(Bou8>xc9wh@U?_|8McEke_xw< z7Lfk}zJ+lax8OMZ-1NJ+e@dK5*`{_7&#<$52|Kqd9^C&w&-e|zei7&9j>`5Ah`+#9kk8`Y;Zo(D$Rzb0hcom#wx*kk;b2bc3h8x zYmRMM8$6&CR<@BvUFa5mp}zVTpQ+s8p?^v%pl4N1j)QWS zhdxf|UsN3WxMzVPPoQRM#_uc4kUKc^aUTQ4HxB+o4)k8umpeV$xVKfPb}atOJi~v5 z=_prZOrbxh0}P5h1Nw(P-v0sB?@)utTYwHKF8Y!i3F?1`G4Tt>ZRB}C(GQE5qVAzd z4|2_~k9#HPU`5haBq!`IC%EC)pHxRc7li36abI1kkMrZ#M_vkaO+Y^A|E%g`{Bdpp zeJ-Gn@dG>;(8s+O^fm}84fg+RKp*#G&?f`>!T!%MU()B5JeS^!@pty1JldeYW!)y9 zKJMGIn&^WZimwb!7f3{_FXCMx5f3vZV40ebBd< zL3!!RU+lewsKpO*9r~XP;L!I|#GYR?rTxF6 q4oDuglOOnlbt(5L`0m$l)5PqP0psWwvdv5ApVJS|KOv|zsQ+)$W7-S= literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..46e8ebd --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeOutput.log b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeOutput.log new file mode 100644 index 0000000..c5f9cdc --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeOutput.log @@ -0,0 +1,437 @@ +The system is: Linux - 5.10.0+ - aarch64 +Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. +Compiler: /usr/bin/cc +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" + +The C compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out" + +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out" + +Detecting C compiler ABI info compiled with the following output: +Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e441e/fast && /usr/bin/gmake -f CMakeFiles/cmTC_e441e.dir/build.make CMakeFiles/cmTC_e441e.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o +/usr/bin/cc -v -o CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_e441e.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_e441e.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/cceft4EI.s +GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/lib/gcc/aarch64-linux-gnu/11/include + /usr/local/include + /usr/include/aarch64-linux-gnu + /usr/include +End of search list. +GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_e441e.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o /tmp/cceft4EI.s +GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.' +Linking C executable cmTC_e441e +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e441e.dir/link.txt --verbose=1 +/usr/bin/cc -v CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o -o cmTC_e441e +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e441e' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_e441e.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccgIqEP0.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_e441e /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e441e' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_e441e.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp' + + + +Parsed C implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/lib/gcc/aarch64-linux-gnu/11/include] + add: [/usr/local/include] + add: [/usr/include/aarch64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/lib/gcc/aarch64-linux-gnu/11/include] ==> [/usr/lib/gcc/aarch64-linux-gnu/11/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/aarch64-linux-gnu] ==> [/usr/include/aarch64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include] + + +Parsed C implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e441e/fast && /usr/bin/gmake -f CMakeFiles/cmTC_e441e.dir/build.make CMakeFiles/cmTC_e441e.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp'] + ignore line: [Building C object CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_e441e.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_e441e.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/cceft4EI.s] + ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/aarch64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_e441e.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o /tmp/cceft4EI.s] + ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.'] + ignore line: [Linking C executable cmTC_e441e] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e441e.dir/link.txt --verbose=1] + ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o -o cmTC_e441e ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e441e' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_e441e.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccgIqEP0.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_e441e /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccgIqEP0.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib/ld-linux-aarch64.so.1] ==> ignore + arg [-X] ==> ignore + arg [-EL] ==> ignore + arg [-maarch64linux] ==> ignore + arg [--fix-cortex-a53-843419] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_e441e] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] + arg [-L/lib/aarch64-linux-gnu] ==> dir [/lib/aarch64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] + arg [CMakeFiles/cmTC_e441e.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [-lc] ==> lib [c] + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> [/usr/lib/aarch64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> [/usr/lib/aarch64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> [/usr/lib/aarch64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11] ==> [/usr/lib/gcc/aarch64-linux-gnu/11] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/aarch64-linux-gnu] ==> [/lib/aarch64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> [/usr/lib] + implicit libs: [gcc;gcc_s;c;gcc;gcc_s] + implicit objs: [/usr/lib/aarch64-linux-gnu/Scrt1.o;/usr/lib/aarch64-linux-gnu/crti.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o;/usr/lib/aarch64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib] + implicit fwks: [] + + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_57e57/fast && /usr/bin/gmake -f CMakeFiles/cmTC_57e57.dir/build.make CMakeFiles/cmTC_57e57.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -v -o CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_57e57.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_57e57.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccXHnnLF.s +GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring duplicate directory "/usr/include/aarch64-linux-gnu/c++/11" +ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/include/c++/11 + /usr/include/aarch64-linux-gnu/c++/11 + /usr/include/c++/11/backward + /usr/lib/gcc/aarch64-linux-gnu/11/include + /usr/local/include + /usr/include/aarch64-linux-gnu + /usr/include +End of search list. +GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 3e6e780af1232722b47e0979fda82402 +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_57e57.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccXHnnLF.s +GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.' +Linking CXX executable cmTC_57e57 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_57e57.dir/link.txt --verbose=1 +/usr/bin/c++ -v CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_57e57 +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_57e57' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_57e57.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/cc5TFPgk.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_57e57 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_57e57' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_57e57.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp' + + + +Parsed CXX implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/include/c++/11] + add: [/usr/include/aarch64-linux-gnu/c++/11] + add: [/usr/include/c++/11/backward] + add: [/usr/lib/gcc/aarch64-linux-gnu/11/include] + add: [/usr/local/include] + add: [/usr/include/aarch64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/include/c++/11] ==> [/usr/include/c++/11] + collapse include dir [/usr/include/aarch64-linux-gnu/c++/11] ==> [/usr/include/aarch64-linux-gnu/c++/11] + collapse include dir [/usr/include/c++/11/backward] ==> [/usr/include/c++/11/backward] + collapse include dir [/usr/lib/gcc/aarch64-linux-gnu/11/include] ==> [/usr/lib/gcc/aarch64-linux-gnu/11/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/aarch64-linux-gnu] ==> [/usr/include/aarch64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/include/c++/11;/usr/include/aarch64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include] + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_57e57/fast && /usr/bin/gmake -f CMakeFiles/cmTC_57e57.dir/build.make CMakeFiles/cmTC_57e57.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_57e57.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_57e57.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccXHnnLF.s] + ignore line: [GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring duplicate directory "/usr/include/aarch64-linux-gnu/c++/11"] + ignore line: [ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/include/c++/11] + ignore line: [ /usr/include/aarch64-linux-gnu/c++/11] + ignore line: [ /usr/include/c++/11/backward] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/aarch64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 3e6e780af1232722b47e0979fda82402] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_57e57.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccXHnnLF.s] + ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.'] + ignore line: [Linking CXX executable cmTC_57e57] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_57e57.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_57e57 ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_57e57' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_57e57.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/cc5TFPgk.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_57e57 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/cc5TFPgk.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib/ld-linux-aarch64.so.1] ==> ignore + arg [-X] ==> ignore + arg [-EL] ==> ignore + arg [-maarch64linux] ==> ignore + arg [--fix-cortex-a53-843419] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_57e57] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] + arg [-L/lib/aarch64-linux-gnu] ==> dir [/lib/aarch64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] + arg [CMakeFiles/cmTC_57e57.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> [/usr/lib/aarch64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> [/usr/lib/aarch64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> [/usr/lib/aarch64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11] ==> [/usr/lib/gcc/aarch64-linux-gnu/11] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/aarch64-linux-gnu] ==> [/lib/aarch64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit objs: [/usr/lib/aarch64-linux-gnu/Scrt1.o;/usr/lib/aarch64-linux-gnu/crti.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o;/usr/lib/aarch64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib] + implicit fwks: [] + + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeRuleHashes.txt b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeRuleHashes.txt new file mode 100644 index 0000000..addc633 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/CMakeRuleHashes.txt @@ -0,0 +1,33 @@ +# Hashes of file build rules. +6e13c351db0ae05bc029a967286cf05b CMakeFiles/gen_version_info +118040147ad2a73024574383a96c8cbd CMakeFiles/modify_vendor +f759180727a8318facd53e51af2ceac8 op_host/CMakeFiles/optiling_compat +937a38e0ae02efdc46eb65770cbc8279 op_kernel/CMakeFiles/ascendc_bin_ascend310b +74608cbadbf9d7e321b59b2228e72694 op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0 +4d5b4ce771b4169b20c7540c98bdc442 op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy +d443d9b815515c1e93df6cb8ecfe9920 op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config +15bbf00cc804e78dba8932905279e9d4 op_kernel/CMakeFiles/ascendc_bin_ascend310p +e28d167d3cae2b7316fbc0e66d02faef op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0 +3df3c9532595ef1a66abbe138b384e8d op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy +dbef6b6975d637010f5940c395ab7ff1 op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config +547a04c9b478c6f945b212c9a073b4b0 op_kernel/CMakeFiles/ascendc_bin_ascend910 +49e5940b809a2d9dab3e8d692b31c4a4 op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0 +176837d162bc350892311a905663fcc7 op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy +981f1ad4206ba46cea1513ccdb7320dd op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config +469d14231dce0d606a30cd497568754d op_kernel/CMakeFiles/ascendc_bin_ascend910b +bdfb75833f43a439fa523763f16c7d99 op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0 +da13510ef1a845c626e8f271725af09e op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy +7cf796b0e126ee84fddaf625101dc7fa op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config +36b913c0a578db6317f013f512e95c6f op_kernel/CMakeFiles/ascendc_impl_gen +36b913c0a578db6317f013f512e95c6f op_kernel/CMakeFiles/npu_supported_ops +36b913c0a578db6317f013f512e95c6f op_kernel/CMakeFiles/ops_info_gen_ascend310b +36b913c0a578db6317f013f512e95c6f op_kernel/CMakeFiles/ops_info_gen_ascend310p +36b913c0a578db6317f013f512e95c6f op_kernel/CMakeFiles/ops_info_gen_ascend910 +36b913c0a578db6317f013f512e95c6f op_kernel/CMakeFiles/ops_info_gen_ascend910b +af0b7fa131b78da114e3966528be9d82 op_kernel/tbe/.impl_timestamp +a57b98f282a43afd4d3b6ee99eedc75c op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json +6367f4d34eeedb4f12efa0ffa9cea6b5 op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json +5134c78f5154af2ef5c7544261ca6fb4 op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json +297b5d83e4fce3ae1400ca09d813baae op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json +d4d075f2a0bdad11225275859d6ac3f8 op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json +e52052404ce8c606e5b5dd7bf44af0e5 scripts/install.sh diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..7ec716a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile.cmake @@ -0,0 +1,167 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "../CMakeLists.txt" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "../cmake/config.cmake" + "../cmake/func.cmake" + "../cmake/intf.cmake" + "../framework/CMakeLists.txt" + "../framework/tf_plugin/CMakeLists.txt" + "../op_host/CMakeLists.txt" + "../op_kernel/CMakeLists.txt" + "/usr/share/cmake-3.22/Modules/CMakeCCompiler.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c" + "/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCXXCompiler.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp" + "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCompilerIdDetection.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCXXCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompileFeatures.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerABI.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerId.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeFindBinUtils.cmake" + "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseImplicitIncludeInfo.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseImplicitLinkInfo.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseLibraryArchitecture.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystem.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCXXCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCompilerCommon.cmake" + "/usr/share/cmake-3.22/Modules/CMakeUnixFindMake.cmake" + "/usr/share/cmake-3.22/Modules/CPack.cmake" + "/usr/share/cmake-3.22/Modules/CPackComponent.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ARMClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Bruce-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Compaq-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-FindBinUtils.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/HP-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/NVHPC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SDCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SunPro-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/TI-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XL-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XLClang-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/zOS-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Internal/FeatureTesting.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-Determine-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake" + "/usr/share/cmake-3.22/Templates/CPackConfig.cmake.in" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CPackConfig.cmake" + "CPackSourceConfig.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + "framework/CMakeFiles/CMakeDirectoryInformation.cmake" + "framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake" + "op_host/CMakeFiles/CMakeDirectoryInformation.cmake" + "op_kernel/CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/modify_vendor.dir/DependInfo.cmake" + "CMakeFiles/gen_version_info.dir/DependInfo.cmake" + "framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake" + "op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake" + "op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake" + "op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake" + "op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_impl_gen.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/binary.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/npu_supported_ops.dir/DependInfo.cmake" + ) diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile2 b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile2 new file mode 100644 index 0000000..3ae113e --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/Makefile2 @@ -0,0 +1,976 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: CMakeFiles/modify_vendor.dir/all +all: CMakeFiles/gen_version_info.dir/all +all: framework/all +all: op_host/all +all: op_kernel/all +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: framework/preinstall +preinstall: op_host/preinstall +preinstall: op_kernel/preinstall +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/modify_vendor.dir/clean +clean: CMakeFiles/gen_version_info.dir/clean +clean: framework/clean +clean: op_host/clean +clean: op_kernel/clean +.PHONY : clean + +#============================================================================= +# Directory level rules for directory framework + +# Recursive "all" directory target. +framework/all: framework/tf_plugin/all +.PHONY : framework/all + +# Recursive "preinstall" directory target. +framework/preinstall: framework/tf_plugin/preinstall +.PHONY : framework/preinstall + +# Recursive "clean" directory target. +framework/clean: framework/tf_plugin/clean +.PHONY : framework/clean + +#============================================================================= +# Directory level rules for directory framework/tf_plugin + +# Recursive "all" directory target. +framework/tf_plugin/all: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all +.PHONY : framework/tf_plugin/all + +# Recursive "preinstall" directory target. +framework/tf_plugin/preinstall: +.PHONY : framework/tf_plugin/preinstall + +# Recursive "clean" directory target. +framework/tf_plugin/clean: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean +.PHONY : framework/tf_plugin/clean + +#============================================================================= +# Directory level rules for directory op_host + +# Recursive "all" directory target. +op_host/all: op_host/CMakeFiles/cust_op_proto.dir/all +op_host/all: op_host/CMakeFiles/cust_optiling.dir/all +op_host/all: op_host/CMakeFiles/cust_opapi.dir/all +op_host/all: op_host/CMakeFiles/optiling_compat.dir/all +.PHONY : op_host/all + +# Recursive "preinstall" directory target. +op_host/preinstall: +.PHONY : op_host/preinstall + +# Recursive "clean" directory target. +op_host/clean: op_host/CMakeFiles/cust_op_proto.dir/clean +op_host/clean: op_host/CMakeFiles/cust_optiling.dir/clean +op_host/clean: op_host/CMakeFiles/cust_opapi.dir/clean +op_host/clean: op_host/CMakeFiles/optiling_compat.dir/clean +.PHONY : op_host/clean + +#============================================================================= +# Directory level rules for directory op_kernel + +# Recursive "all" directory target. +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all +op_kernel/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all +op_kernel/all: op_kernel/CMakeFiles/npu_supported_ops.dir/all +.PHONY : op_kernel/all + +# Recursive "preinstall" directory target. +op_kernel/preinstall: +.PHONY : op_kernel/preinstall + +# Recursive "clean" directory target. +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/binary.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/npu_supported_ops.dir/clean +.PHONY : op_kernel/clean + +#============================================================================= +# Target rules for target CMakeFiles/modify_vendor.dir + +# All Build rule for target. +CMakeFiles/modify_vendor.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=11 "Built target modify_vendor" +.PHONY : CMakeFiles/modify_vendor.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/modify_vendor.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/modify_vendor.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : CMakeFiles/modify_vendor.dir/rule + +# Convenience name for target. +modify_vendor: CMakeFiles/modify_vendor.dir/rule +.PHONY : modify_vendor + +# clean rule for target. +CMakeFiles/modify_vendor.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/clean +.PHONY : CMakeFiles/modify_vendor.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/gen_version_info.dir + +# All Build rule for target. +CMakeFiles/gen_version_info.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target gen_version_info" +.PHONY : CMakeFiles/gen_version_info.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/gen_version_info.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/gen_version_info.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : CMakeFiles/gen_version_info.dir/rule + +# Convenience name for target. +gen_version_info: CMakeFiles/gen_version_info.dir/rule +.PHONY : gen_version_info + +# clean rule for target. +CMakeFiles/gen_version_info.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/clean +.PHONY : CMakeFiles/gen_version_info.dir/clean + +#============================================================================= +# Target rules for target framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir + +# All Build rule for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all: + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=9,10 "Built target cust_tf_parsers" +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all + +# Build rule for subdir invocation for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule + +# Convenience name for target. +cust_tf_parsers: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule +.PHONY : cust_tf_parsers + +# clean rule for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean: + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/cust_op_proto.dir + +# All Build rule for target. +op_host/CMakeFiles/cust_op_proto.dir/all: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=2,3,4 "Built target cust_op_proto" +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/cust_op_proto.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 3 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_op_proto.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/rule + +# Convenience name for target. +cust_op_proto: op_host/CMakeFiles/cust_op_proto.dir/rule +.PHONY : cust_op_proto + +# clean rule for target. +op_host/CMakeFiles/cust_op_proto.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/clean +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/cust_optiling.dir + +# All Build rule for target. +op_host/CMakeFiles/cust_optiling.dir/all: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=7,8 "Built target cust_optiling" +.PHONY : op_host/CMakeFiles/cust_optiling.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/cust_optiling.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_optiling.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/cust_optiling.dir/rule + +# Convenience name for target. +cust_optiling: op_host/CMakeFiles/cust_optiling.dir/rule +.PHONY : cust_optiling + +# clean rule for target. +op_host/CMakeFiles/cust_optiling.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/clean +.PHONY : op_host/CMakeFiles/cust_optiling.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/cust_opapi.dir + +# All Build rule for target. +op_host/CMakeFiles/cust_opapi.dir/all: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=5,6 "Built target cust_opapi" +.PHONY : op_host/CMakeFiles/cust_opapi.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/cust_opapi.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_opapi.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/cust_opapi.dir/rule + +# Convenience name for target. +cust_opapi: op_host/CMakeFiles/cust_opapi.dir/rule +.PHONY : cust_opapi + +# clean rule for target. +op_host/CMakeFiles/cust_opapi.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/clean +.PHONY : op_host/CMakeFiles/cust_opapi.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/optiling_compat.dir + +# All Build rule for target. +op_host/CMakeFiles/optiling_compat.dir/all: op_host/CMakeFiles/cust_optiling.dir/all + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target optiling_compat" +.PHONY : op_host/CMakeFiles/optiling_compat.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/optiling_compat.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/optiling_compat.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/optiling_compat.dir/rule + +# Convenience name for target. +optiling_compat: op_host/CMakeFiles/optiling_compat.dir/rule +.PHONY : optiling_compat + +# clean rule for target. +op_host/CMakeFiles/optiling_compat.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/clean +.PHONY : op_host/CMakeFiles/optiling_compat.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=14 "Built target ops_info_gen_ascend310p" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/rule + +# Convenience name for target. +ops_info_gen_ascend310p: op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/rule +.PHONY : ops_info_gen_ascend310p + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_impl_gen.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_impl_gen.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=1 "Built target ascendc_impl_gen" +.PHONY : op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_impl_gen.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_impl_gen.dir/rule + +# Convenience name for target. +ascendc_impl_gen: op_kernel/CMakeFiles/ascendc_impl_gen.dir/rule +.PHONY : ascendc_impl_gen + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/binary.dir + +# All Build rule for target. +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target binary" +.PHONY : op_kernel/CMakeFiles/binary.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/binary.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/binary.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/binary.dir/rule + +# Convenience name for target. +binary: op_kernel/CMakeFiles/binary.dir/rule +.PHONY : binary + +# clean rule for target. +op_kernel/CMakeFiles/binary.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/clean +.PHONY : op_kernel/CMakeFiles/binary.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p: op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/rule +.PHONY : ascendc_bin_ascend310p + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend310p_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend310p_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend310p_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=13 "Built target ops_info_gen_ascend310b" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/rule + +# Convenience name for target. +ops_info_gen_ascend310b: op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/rule +.PHONY : ops_info_gen_ascend310b + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b: op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/rule +.PHONY : ascendc_bin_ascend310b + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend310b_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend310b_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend310b_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend910.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=15 "Built target ops_info_gen_ascend910" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/rule + +# Convenience name for target. +ops_info_gen_ascend910: op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/rule +.PHONY : ops_info_gen_ascend910 + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910: op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/rule +.PHONY : ascendc_bin_ascend910 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend910_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend910_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend910_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=16 "Built target ops_info_gen_ascend910b" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/rule + +# Convenience name for target. +ops_info_gen_ascend910b: op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/rule +.PHONY : ops_info_gen_ascend910b + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b: op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/rule +.PHONY : ascendc_bin_ascend910b + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend910b_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend910b_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend910b_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/npu_supported_ops.dir + +# All Build rule for target. +op_kernel/CMakeFiles/npu_supported_ops.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=12 "Built target npu_supported_ops" +.PHONY : op_kernel/CMakeFiles/npu_supported_ops.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/npu_supported_ops.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/npu_supported_ops.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/npu_supported_ops.dir/rule + +# Convenience name for target. +npu_supported_ops: op_kernel/CMakeFiles/npu_supported_ops.dir/rule +.PHONY : npu_supported_ops + +# clean rule for target. +op_kernel/CMakeFiles/npu_supported_ops.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/clean +.PHONY : op_kernel/CMakeFiles/npu_supported_ops.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/TargetDirectories.txt b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..c253bfa --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,70 @@ +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/binary.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/CMakeFiles/install/strip.dir diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/cmake.check_cache b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake new file mode 100644 index 0000000..dc55e44 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake @@ -0,0 +1,18 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/build.make b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/build.make new file mode 100644 index 0000000..3a9d691 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/build.make @@ -0,0 +1,87 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +# Utility rule file for gen_version_info. + +# Include any custom commands dependencies for this target. +include CMakeFiles/gen_version_info.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/gen_version_info.dir/progress.make + +CMakeFiles/gen_version_info: + bash /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/cmake/util/gen_version_info.sh /usr/local/Ascend/ascend-toolkit/latest /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +gen_version_info: CMakeFiles/gen_version_info +gen_version_info: CMakeFiles/gen_version_info.dir/build.make +.PHONY : gen_version_info + +# Rule to build all files generated by this target. +CMakeFiles/gen_version_info.dir/build: gen_version_info +.PHONY : CMakeFiles/gen_version_info.dir/build + +CMakeFiles/gen_version_info.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/gen_version_info.dir/cmake_clean.cmake +.PHONY : CMakeFiles/gen_version_info.dir/clean + +CMakeFiles/gen_version_info.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/gen_version_info.dir/depend + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake new file mode 100644 index 0000000..4183a83 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/gen_version_info" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/gen_version_info.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make new file mode 100644 index 0000000..9406130 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for gen_version_info. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts new file mode 100644 index 0000000..714ce8f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for gen_version_info. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make @@ -0,0 +1 @@ + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake new file mode 100644 index 0000000..e3edb92 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake @@ -0,0 +1,24 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Pairs of files generated by the same build rule. +set(CMAKE_MULTIPLE_OUTPUT_PAIRS + "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/scripts/upgrade.sh" "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/scripts/install.sh" + ) + + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/build.make b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/build.make new file mode 100644 index 0000000..94b9b6a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/build.make @@ -0,0 +1,98 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +# Utility rule file for modify_vendor. + +# Include any custom commands dependencies for this target. +include CMakeFiles/modify_vendor.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/modify_vendor.dir/progress.make + +CMakeFiles/modify_vendor: scripts/install.sh +CMakeFiles/modify_vendor: scripts/upgrade.sh + +scripts/install.sh: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating scripts/install.sh, scripts/upgrade.sh" + mkdir -p /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/scripts + cp -r /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/scripts/* /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/scripts/ + sed -i s/vendor_name=customize/vendor_name=customize/g /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/scripts/* + +scripts/upgrade.sh: scripts/install.sh + @$(CMAKE_COMMAND) -E touch_nocreate scripts/upgrade.sh + +modify_vendor: CMakeFiles/modify_vendor +modify_vendor: scripts/install.sh +modify_vendor: scripts/upgrade.sh +modify_vendor: CMakeFiles/modify_vendor.dir/build.make +.PHONY : modify_vendor + +# Rule to build all files generated by this target. +CMakeFiles/modify_vendor.dir/build: modify_vendor +.PHONY : CMakeFiles/modify_vendor.dir/build + +CMakeFiles/modify_vendor.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/modify_vendor.dir/cmake_clean.cmake +.PHONY : CMakeFiles/modify_vendor.dir/clean + +CMakeFiles/modify_vendor.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/modify_vendor.dir/depend + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake new file mode 100644 index 0000000..5632851 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/modify_vendor" + "scripts/install.sh" + "scripts/upgrade.sh" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/modify_vendor.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make new file mode 100644 index 0000000..bda5864 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for modify_vendor. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts new file mode 100644 index 0000000..4290d3f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for modify_vendor. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make new file mode 100644 index 0000000..27952ed --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make @@ -0,0 +1,2 @@ +CMAKE_PROGRESS_1 = 11 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/progress.marks b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/progress.marks new file mode 100644 index 0000000..b6a7d89 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles/progress.marks @@ -0,0 +1 @@ +16 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CPackConfig.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CPackConfig.cmake new file mode 100644 index 0000000..efba284 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CPackConfig.cmake @@ -0,0 +1,71 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BUILD_SOURCE_DIRS "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase;/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "opp built using CMake") +set(CPACK_EXTERNAL_BUILT_PACKAGES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run") +set(CPACK_EXTERNAL_ENABLE_STAGING "TRUE") +set(CPACK_EXTERNAL_PACKAGE_SCRIPT "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/cmake/makeself.cmake") +set(CPACK_GENERATOR "External") +set(CPACK_INSTALL_CMAKE_PROJECTS "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out;opp;ALL;/") +set(CPACK_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +set(CPACK_MODULE_PATH "") +set(CPACK_NSIS_DISPLAY_NAME "opp 0.1.1") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "opp 0.1.1") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION "CPack opp project") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack opp project") +set(CPACK_PACKAGE_DIRECTORY "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +set(CPACK_PACKAGE_FILE_NAME "custom_opp_ubuntu_aarch64.run") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "opp 0.1.1") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "opp 0.1.1") +set(CPACK_PACKAGE_NAME "opp") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "0.1.1") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "1") +set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.22/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.22/Templates/CPack.GenericWelcome.txt") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake") +set(CPACK_SOURCE_RPM "OFF") +set(CPACK_SOURCE_TBZ2 "ON") +set(CPACK_SOURCE_TGZ "ON") +set(CPACK_SOURCE_TXZ "ON") +set(CPACK_SOURCE_TZ "ON") +set(CPACK_SOURCE_ZIP "OFF") +set(CPACK_SYSTEM_NAME "Linux") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Linux") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake b/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake new file mode 100644 index 0000000..5ef4632 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake @@ -0,0 +1,79 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BUILD_SOURCE_DIRS "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase;/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "opp built using CMake") +set(CPACK_EXTERNAL_BUILT_PACKAGES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run") +set(CPACK_EXTERNAL_ENABLE_STAGING "TRUE") +set(CPACK_EXTERNAL_PACKAGE_SCRIPT "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/cmake/makeself.cmake") +set(CPACK_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_INSTALLED_DIRECTORIES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase;/") +set(CPACK_INSTALL_CMAKE_PROJECTS "") +set(CPACK_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +set(CPACK_MODULE_PATH "") +set(CPACK_NSIS_DISPLAY_NAME "opp 0.1.1") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "opp 0.1.1") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION "CPack opp project") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack opp project") +set(CPACK_PACKAGE_DIRECTORY "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +set(CPACK_PACKAGE_FILE_NAME "opp-0.1.1-Source") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "opp 0.1.1") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "opp 0.1.1") +set(CPACK_PACKAGE_NAME "opp") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "0.1.1") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "1") +set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.22/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.22/Templates/CPack.GenericWelcome.txt") +set(CPACK_RPM_PACKAGE_SOURCES "ON") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_SOURCE_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_SOURCE_INSTALLED_DIRECTORIES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase;/") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake") +set(CPACK_SOURCE_PACKAGE_FILE_NAME "opp-0.1.1-Source") +set(CPACK_SOURCE_RPM "OFF") +set(CPACK_SOURCE_TBZ2 "ON") +set(CPACK_SOURCE_TGZ "ON") +set(CPACK_SOURCE_TOPLEVEL_TAG "Linux-Source") +set(CPACK_SOURCE_TXZ "ON") +set(CPACK_SOURCE_TZ "ON") +set(CPACK_SOURCE_ZIP "OFF") +set(CPACK_STRIP_FILES "") +set(CPACK_SYSTEM_NAME "Linux") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Linux-Source") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/Makefile b/Increase_Bedore_pipe/Is_increase/build_out/Makefile new file mode 100644 index 0000000..5ace1a7 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/Makefile @@ -0,0 +1,631 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named modify_vendor + +# Build rule for target. +modify_vendor: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 modify_vendor +.PHONY : modify_vendor + +# fast build rule for target. +modify_vendor/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/build +.PHONY : modify_vendor/fast + +#============================================================================= +# Target rules for targets named gen_version_info + +# Build rule for target. +gen_version_info: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 gen_version_info +.PHONY : gen_version_info + +# fast build rule for target. +gen_version_info/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/build +.PHONY : gen_version_info/fast + +#============================================================================= +# Target rules for targets named cust_tf_parsers + +# Build rule for target. +cust_tf_parsers: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_tf_parsers +.PHONY : cust_tf_parsers + +# fast build rule for target. +cust_tf_parsers/fast: + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build +.PHONY : cust_tf_parsers/fast + +#============================================================================= +# Target rules for targets named cust_op_proto + +# Build rule for target. +cust_op_proto: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_op_proto +.PHONY : cust_op_proto + +# fast build rule for target. +cust_op_proto/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/build +.PHONY : cust_op_proto/fast + +#============================================================================= +# Target rules for targets named cust_optiling + +# Build rule for target. +cust_optiling: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_optiling +.PHONY : cust_optiling + +# fast build rule for target. +cust_optiling/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/build +.PHONY : cust_optiling/fast + +#============================================================================= +# Target rules for targets named cust_opapi + +# Build rule for target. +cust_opapi: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_opapi +.PHONY : cust_opapi + +# fast build rule for target. +cust_opapi/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/build +.PHONY : cust_opapi/fast + +#============================================================================= +# Target rules for targets named optiling_compat + +# Build rule for target. +optiling_compat: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 optiling_compat +.PHONY : optiling_compat + +# fast build rule for target. +optiling_compat/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/build +.PHONY : optiling_compat/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend310p + +# Build rule for target. +ops_info_gen_ascend310p: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend310p +.PHONY : ops_info_gen_ascend310p + +# fast build rule for target. +ops_info_gen_ascend310p/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build +.PHONY : ops_info_gen_ascend310p/fast + +#============================================================================= +# Target rules for targets named ascendc_impl_gen + +# Build rule for target. +ascendc_impl_gen: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_impl_gen +.PHONY : ascendc_impl_gen + +# fast build rule for target. +ascendc_impl_gen/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/build +.PHONY : ascendc_impl_gen/fast + +#============================================================================= +# Target rules for targets named binary + +# Build rule for target. +binary: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 binary +.PHONY : binary + +# fast build rule for target. +binary/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/build +.PHONY : binary/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p + +# Build rule for target. +ascendc_bin_ascend310p: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p +.PHONY : ascendc_bin_ascend310p + +# fast build rule for target. +ascendc_bin_ascend310p/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build +.PHONY : ascendc_bin_ascend310p/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend310p_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p_gen_ops_config +.PHONY : ascendc_bin_ascend310p_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend310p_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend310p_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend310p_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p_add_custom_copy +.PHONY : ascendc_bin_ascend310p_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend310p_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend310p_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend310p_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p_add_custom_0 +.PHONY : ascendc_bin_ascend310p_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend310p_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend310p_add_custom_0/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend310b + +# Build rule for target. +ops_info_gen_ascend310b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend310b +.PHONY : ops_info_gen_ascend310b + +# fast build rule for target. +ops_info_gen_ascend310b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build +.PHONY : ops_info_gen_ascend310b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b + +# Build rule for target. +ascendc_bin_ascend310b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b +.PHONY : ascendc_bin_ascend310b + +# fast build rule for target. +ascendc_bin_ascend310b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build +.PHONY : ascendc_bin_ascend310b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend310b_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b_gen_ops_config +.PHONY : ascendc_bin_ascend310b_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend310b_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend310b_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend310b_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b_add_custom_copy +.PHONY : ascendc_bin_ascend310b_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend310b_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend310b_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend310b_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b_add_custom_0 +.PHONY : ascendc_bin_ascend310b_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend310b_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend310b_add_custom_0/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend910 + +# Build rule for target. +ops_info_gen_ascend910: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend910 +.PHONY : ops_info_gen_ascend910 + +# fast build rule for target. +ops_info_gen_ascend910/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build +.PHONY : ops_info_gen_ascend910/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910 + +# Build rule for target. +ascendc_bin_ascend910: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910 +.PHONY : ascendc_bin_ascend910 + +# fast build rule for target. +ascendc_bin_ascend910/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build +.PHONY : ascendc_bin_ascend910/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend910_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910_gen_ops_config +.PHONY : ascendc_bin_ascend910_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend910_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend910_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend910_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910_add_custom_copy +.PHONY : ascendc_bin_ascend910_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend910_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend910_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend910_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910_add_custom_0 +.PHONY : ascendc_bin_ascend910_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend910_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend910_add_custom_0/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend910b + +# Build rule for target. +ops_info_gen_ascend910b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend910b +.PHONY : ops_info_gen_ascend910b + +# fast build rule for target. +ops_info_gen_ascend910b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build +.PHONY : ops_info_gen_ascend910b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b + +# Build rule for target. +ascendc_bin_ascend910b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b +.PHONY : ascendc_bin_ascend910b + +# fast build rule for target. +ascendc_bin_ascend910b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build +.PHONY : ascendc_bin_ascend910b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend910b_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b_gen_ops_config +.PHONY : ascendc_bin_ascend910b_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend910b_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend910b_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend910b_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b_add_custom_copy +.PHONY : ascendc_bin_ascend910b_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend910b_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend910b_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend910b_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b_add_custom_0 +.PHONY : ascendc_bin_ascend910b_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend910b_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend910b_add_custom_0/fast + +#============================================================================= +# Target rules for targets named npu_supported_ops + +# Build rule for target. +npu_supported_ops: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 npu_supported_ops +.PHONY : npu_supported_ops + +# fast build rule for target. +npu_supported_ops/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/build +.PHONY : npu_supported_ops/fast + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... ascendc_bin_ascend310b" + @echo "... ascendc_bin_ascend310b_add_custom_0" + @echo "... ascendc_bin_ascend310b_add_custom_copy" + @echo "... ascendc_bin_ascend310b_gen_ops_config" + @echo "... ascendc_bin_ascend310p" + @echo "... ascendc_bin_ascend310p_add_custom_0" + @echo "... ascendc_bin_ascend310p_add_custom_copy" + @echo "... ascendc_bin_ascend310p_gen_ops_config" + @echo "... ascendc_bin_ascend910" + @echo "... ascendc_bin_ascend910_add_custom_0" + @echo "... ascendc_bin_ascend910_add_custom_copy" + @echo "... ascendc_bin_ascend910_gen_ops_config" + @echo "... ascendc_bin_ascend910b" + @echo "... ascendc_bin_ascend910b_add_custom_0" + @echo "... ascendc_bin_ascend910b_add_custom_copy" + @echo "... ascendc_bin_ascend910b_gen_ops_config" + @echo "... ascendc_impl_gen" + @echo "... binary" + @echo "... gen_version_info" + @echo "... modify_vendor" + @echo "... npu_supported_ops" + @echo "... ops_info_gen_ascend310b" + @echo "... ops_info_gen_ascend310p" + @echo "... ops_info_gen_ascend910" + @echo "... ops_info_gen_ascend910b" + @echo "... optiling_compat" + @echo "... cust_op_proto" + @echo "... cust_opapi" + @echo "... cust_optiling" + @echo "... cust_tf_parsers" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json new file mode 100644 index 0000000..25eed1a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json @@ -0,0 +1,26 @@ +{ + "componentGroups" : {}, + "components" : {}, + "errorOnAbsoluteInstallDestination" : false, + "formatVersionMajor" : 1, + "formatVersionMinor" : 0, + "installationTypes" : {}, + "packageDescriptionFile" : "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt", + "packageDescriptionSummary" : "CPack opp project", + "packageName" : "opp", + "packageVersion" : "0.1.1", + "projects" : + [ + { + "component" : "ALL", + "components" : [], + "directory" : "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out", + "installationTypes" : [], + "projectName" : "opp", + "subDirectory" : "/" + } + ], + "setDestdir" : false, + "stripFiles" : false, + "warnOnAbsoluteInstallDestination" : false +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run new file mode 100644 index 0000000..2c20746 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run @@ -0,0 +1,972 @@ +#!/bin/bash +# This script was generated using Makeself 2.4.5 +# The license covering this archive and its contents, if any, is wholly independent of the Makeself license (GPL) +# 2022.3.19-Modified the MS_Help function and some options +# Huawei Technologies Co., Ltd. + +ORIG_UMASK=`umask` + +CRCsum="3946831741" +MD5="00000000000000000000000000000000" +SHA="2f51447a589c6589b3ed76b6e1684662a273860382d65cbf31fe7dde9ebcd293" +SIGNATURE="" +TMPROOT=${TMPDIR:="$HOME"} +if ! test -d "$TMPROOT"; then + TMPROOT="$PWD" +fi +export TMPDIR="$TMPROOT" +USER_PWD="$PWD" +if ! test -d "$USER_PWD"; then + exit 1 +fi +export USER_PWD +ARCHIVE_DIR=`dirname "$0"` +export ARCHIVE_DIR + +name_of_file="$0 " +pwd_of_file="$PWD" +label="version:1.0" +script="./install.sh" +scriptargs="" +cleanup_script="" +licensetxt="" +helpheader='' +targetdir="makeself-932073-20240525184804" +filesizes="103986" +totalsize="103986" +keep="n" +nooverwrite="n" +quiet="n" +accept="n" +nodiskspace="n" +export_conf="n" +decrypt_cmd="" +skip="671" + +print_cmd_arg="" +if type printf > /dev/null; then + print_cmd="printf" +elif test -x /usr/ucb/echo; then + print_cmd="/usr/ucb/echo" +else + print_cmd="echo" +fi + +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:$PATH + export PATH +fi + +if test -d /usr/sfw/bin; then + PATH=$PATH:/usr/sfw/bin + export PATH +fi + +unset CDPATH + +MS_Printf() +{ + $print_cmd $print_cmd_arg "$1" +} + +MS_PrintLicense() +{ + PAGER=${PAGER:=more} + if test x"$licensetxt" != x; then + PAGER_PATH=`exec <&- 2>&-; which $PAGER || command -v $PAGER || type $PAGER` + if test -x "$PAGER_PATH"; then + echo "$licensetxt" | $PAGER + else + echo "$licensetxt" + fi + if test x"$accept" != xy; then + while true + do + MS_Printf "Please type y to accept, n otherwise: " + read yn + if test x"$yn" = xn; then + keep=n + eval $finish; exit 1 + break; + elif test x"$yn" = xy; then + break; + fi + done + fi + fi +} + +MS_diskspace() +{ + ( + df -kP "$1" | tail -1 | awk '{ if ($4 ~ /%/) {print $3} else {print $4} }' + ) +} + +MS_dd() +{ + blocks=`expr $3 / 1024` + bytes=`expr $3 % 1024` + # Test for ibs, obs and conv feature + if dd if=/dev/zero of=/dev/null count=1 ibs=512 obs=512 conv=sync 2> /dev/null; then + dd if="$1" ibs=$2 skip=1 obs=1024 conv=sync 2> /dev/null | \ + { test $blocks -gt 0 && dd ibs=1024 obs=1024 count=$blocks ; \ + test $bytes -gt 0 && dd ibs=1 obs=1024 count=$bytes ; } 2> /dev/null + else + dd if="$1" bs=$2 skip=1 2> /dev/null + fi +} + +MS_dd_Progress() +{ + if test x"$noprogress" = xy; then + MS_dd "$@" + return $? + fi + file="$1" + offset=$2 + length=$3 + pos=0 + bsize=4194304 + while test $bsize -gt $length; do + bsize=`expr $bsize / 4` + done + blocks=`expr $length / $bsize` + bytes=`expr $length % $bsize` + ( + dd ibs=$offset skip=1 2>/dev/null + pos=`expr $pos \+ $bsize` + MS_Printf " 0%% " 1>&2 + if test $blocks -gt 0; then + while test $pos -le $length; do + dd bs=$bsize count=1 2>/dev/null + pcent=`expr $length / 100` + pcent=`expr $pos / $pcent` + if test $pcent -lt 100; then + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + if test $pcent -lt 10; then + MS_Printf " $pcent%% " 1>&2 + else + MS_Printf " $pcent%% " 1>&2 + fi + fi + pos=`expr $pos \+ $bsize` + done + fi + if test $bytes -gt 0; then + dd bs=$bytes count=1 2>/dev/null + fi + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + MS_Printf " 100%% " 1>&2 + ) < "$file" +} + +MS_Help() +{ + cat << EOH >&2 +Usage: $0 [options] +Options: + --help | -h Print this message + --info Print embedded info : title, default target directory, embedded script ... + --list Print the list of files in the archive + --check Checks integrity and version dependency of the archive + --quiet Quiet install mode, skip human-computer interactions + --nox11 Do not spawn an xterm + --noexec Do not run embedded script + --extract= Extract directly to a target directory (absolute or relative) + Usually used with --noexec to just extract files without running + --tar arg1 [arg2 ...] Access the contents of the archive through the tar command +${helpheader} +EOH +} + +MS_Verify_Sig() +{ + GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + test -x "$GPG_PATH" || GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + test -x "$MKTEMP_PATH" || MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + temp_sig=`mktemp -t XXXXX` + echo $SIGNATURE | base64 --decode > "$temp_sig" + gpg_output=`MS_dd "$1" $offset $totalsize | LC_ALL=C "$GPG_PATH" --verify "$temp_sig" - 2>&1` + gpg_res=$? + rm -f "$temp_sig" + if test $gpg_res -eq 0 && test `echo $gpg_output | grep -c Good` -eq 1; then + if test `echo $gpg_output | grep -c $sig_key` -eq 1; then + test x"$quiet" = xn && echo "GPG signature is good" >&2 + else + echo "GPG Signature key does not match" >&2 + exit 2 + fi + else + test x"$quiet" = xn && echo "GPG signature failed to verify" >&2 + exit 2 + fi +} + +MS_Check() +{ + OLD_PATH="$PATH" + PATH=${GUESS_MD5_PATH:-"$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which md5 || command -v md5 || type md5` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which digest || command -v digest || type digest` + PATH="$OLD_PATH" + + SHA_PATH=`exec <&- 2>&-; which shasum || command -v shasum || type shasum` + test -x "$SHA_PATH" || SHA_PATH=`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum` + + if test x"$quiet" = xn; then + MS_Printf "Verifying archive integrity..." + fi + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + fsize=`cat "$1" | wc -c | tr -d " "` + if test $totalsize -ne `expr $fsize - $offset`; then + echo " Unexpected archive size." >&2 + exit 2 + fi + verb=$2 + i=1 + for s in $filesizes + do + crc=`echo $CRCsum | cut -d" " -f$i` + if test -x "$SHA_PATH"; then + if test x"`basename $SHA_PATH`" = xshasum; then + SHA_ARG="-a 256" + fi + sha=`echo $SHA | cut -d" " -f$i` + if test x"$sha" = x0000000000000000000000000000000000000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded SHA256 checksum." >&2 + else + shasum=`MS_dd_Progress "$1" $offset $s | eval "$SHA_PATH $SHA_ARG" | cut -b-64`; + if test x"$shasum" != x"$sha"; then + echo "Error in SHA256 checksums: $shasum is different from $sha" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " SHA256 checksums are OK." >&2 + fi + crc="0000000000"; + fi + fi + if test -x "$MD5_PATH"; then + if test x"`basename $MD5_PATH`" = xdigest; then + MD5_ARG="-a md5" + fi + md5=`echo $MD5 | cut -d" " -f$i` + if test x"$md5" = x00000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded MD5 checksum." >&2 + else + md5sum=`MS_dd_Progress "$1" $offset $s | eval "$MD5_PATH $MD5_ARG" | cut -b-32`; + if test x"$md5sum" != x"$md5"; then + echo "Error in MD5 checksums: $md5sum is different from $md5" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " MD5 checksums are OK." >&2 + fi + crc="0000000000"; verb=n + fi + fi + if test x"$crc" = x0000000000; then + test x"$verb" = xy && echo " $1 does not contain a CRC checksum." >&2 + else + sum1=`MS_dd_Progress "$1" $offset $s | CMD_ENV=xpg4 cksum | awk '{print $1}'` + if test x"$sum1" != x"$crc"; then + echo "Error in checksums: $sum1 is different from $crc" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " CRC checksums are OK." >&2 + fi + fi + i=`expr $i + 1` + offset=`expr $offset + $s` + done + if test x"$quiet" = xn; then + echo " All good." + fi +} + +MS_Decompress() +{ + if test x"$decrypt_cmd" != x""; then + { eval "$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "gzip -cd" + else + eval "gzip -cd" + fi + + if test $? -ne 0; then + echo " ... Decompression failed." >&2 + fi +} + +UnTAR() +{ + if test x"$quiet" = xn; then + tar $1vf - 2>&1 || { echo " ... Extraction failed." >&2; kill -15 $$; } + else + tar $1f - 2>&1 || { echo Extraction failed. >&2; kill -15 $$; } + fi +} + +MS_exec_cleanup() { + if test x"$cleanup" = xy && test x"$cleanup_script" != x""; then + cleanup=n + cd "$tmpdir" + eval "\"$cleanup_script\" $scriptargs $cleanupargs" + fi +} + +MS_cleanup() +{ + echo 'Signal caught, cleaning up' >&2 + MS_exec_cleanup + cd "$TMPROOT" + rm -rf "$tmpdir" + eval $finish; exit 15 +} + +Script_Args_Check() +{ + script_supported_args=$(echo ${helpheader} | grep -o -E "\-\-[^ ]+" | awk -F"=" {'print $1'}) + arg_to_test=$(echo $1|awk -F"=" {'print $1'}) + + for arg in ${script_supported_args}; + do + if test x"$arg_to_test" = x"$arg" ;then + return + fi + done + + MS_Help + exit 1 +} + +finish=true +xterm_loop= +noprogress=n +nox11=n +copy=none +ownership=n +verbose=n +cleanup=y +cleanupargs= +sig_key= + +initargs="$@" + +while [ -n "$*" ] +do + case "$1" in + -h | --help) + MS_Help + exit 0 + ;; + -q | --quiet) + quiet=y + noprogress=y + shift + ;; + --info) + echo Identification: "$label" + echo Target directory: "$targetdir" + echo Uncompressed size: 300 KB + echo Compression: gzip + if test x"n" != x""; then + echo Encryption: n + fi + echo Date of packaging: Sat May 25 18:48:04 CST 2024 + echo Built with Makeself version 2.4.5 + echo Build command was: "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.sh \\ + \"--header\" \\ + \"/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself-header.sh\" \\ + \"--help-header\" \\ + \"./help.info\" \\ + \"--gzip\" \\ + \"--complevel\" \\ + \"4\" \\ + \"--nomd5\" \\ + \"--sha256\" \\ + \"./\" \\ + \"custom_opp_ubuntu_aarch64.run\" \\ + \"version:1.0\" \\ + \"./install.sh\"" + if test x"$script" != x; then + echo Script run after extraction: + echo " " $script $scriptargs + fi + if test x"" = xcopy; then + echo "Archive will copy itself to a temporary location" + fi + if test x"n" = xy; then + echo "Root permissions required for extraction" + fi + if test x"n" = xy; then + echo "directory $targetdir is permanent" + else + echo "$targetdir will be removed after extraction" + fi + exit 0 + ;; + --list) + echo Target directory: $targetdir + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | UnTAR t + offset=`expr $offset + $s` + done + exit 0 + ;; + --tar) + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + arg1="$2" + shift 2 || { MS_Help; exit 1; } + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | tar "$arg1" - "$@" + offset=`expr $offset + $s` + done + exit 0 + ;; + --check) + MS_Check "$0" y + scriptargs="$scriptargs $1" + shift + ;; + --noexec) + script="" + cleanup_script="" + shift + ;; + --extract=*) + keep=y + targetdir=`echo $1 | cut -d"=" -f2 ` + if ! shift; then MS_Help; exit 1; fi + ;; + --nox11) + nox11=y + shift + ;; + --xwin) + if test "n" = n; then + finish="echo Press Return to close this window...; read junk" + fi + xterm_loop=1 + shift + ;; + --phase2) + copy=phase2 + shift + ;; + --repack | --repack-path=*) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + if [[ ! "$1" =~ ^-.* ]]; then + scriptargs="$scriptargs '$1'" + shift + fi + ;; + *) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + ;; + esac +done + +quiet_para="" +if test x"$quiet" = xy; then + quiet_para="--quiet " +fi +scriptargs="--$name_of_file""--\"$pwd_of_file\""" $quiet_para""$scriptargs" + +if test x"$quiet" = xy -a x"$verbose" = xy; then + echo Cannot be verbose and quiet at the same time. >&2 + exit 1 +fi + +if test x"n" = xy -a `id -u` -ne 0; then + echo "Administrative privileges required for this archive (use su or sudo)" >&2 + exit 1 +fi + +if test x"$copy" \!= xphase2; then + MS_PrintLicense +fi + +case "$copy" in +copy) + tmpdir="$TMPROOT"/makeself.$RANDOM.`date +"%y%m%d%H%M%S"`.$$ + mkdir "$tmpdir" || { + echo "Could not create temporary directory $tmpdir" >&2 + exit 1 + } + SCRIPT_COPY="$tmpdir/makeself" + echo "Copying to a temporary location..." >&2 + cp "$0" "$SCRIPT_COPY" + chmod +x "$SCRIPT_COPY" + cd "$TMPROOT" + exec "$SCRIPT_COPY" --phase2 -- $initargs + ;; +phase2) + finish="$finish ; rm -rf `dirname $0`" + ;; +esac + +if test x"$nox11" = xn; then + if tty -s; then # Do we have a terminal? + : + else + if test x"$DISPLAY" != x -a x"$xterm_loop" = x; then # No, but do we have X? + if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable + GUESS_XTERMS="xterm gnome-terminal rxvt dtterm eterm Eterm xfce4-terminal lxterminal kvt konsole aterm terminology" + for a in $GUESS_XTERMS; do + if type $a >/dev/null 2>&1; then + XTERM=$a + break + fi + done + chmod a+x $0 || echo Please add execution rights on $0 + if test `echo "$0" | cut -c1` = "/"; then # Spawn a terminal! + exec $XTERM -e "$0 --xwin $initargs" + else + exec $XTERM -e "./$0 --xwin $initargs" + fi + fi + fi + fi +fi + +if test x"$targetdir" = x.; then + tmpdir="." +else + if test x"$keep" = xy; then + if test x"$nooverwrite" = xy && test -d "$targetdir"; then + echo "Target directory $targetdir already exists, aborting." >&2 + exit 1 + fi + if test x"$quiet" = xn; then + echo "Creating directory $targetdir" >&2 + fi + tmpdir="$targetdir" + dashp="-p" + else + tmpdir="$TMPROOT/selfgz$$$RANDOM" + dashp="" + fi + mkdir $dashp "$tmpdir" || { + echo 'Cannot create target directory' $tmpdir >&2 + echo 'You should try option --extract=' >&2 + eval $finish + exit 1 + } +fi + +location="`pwd`" +if test x"$SETUP_NOCHECK" != x1; then + MS_Check "$0" +fi +offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + +if test x"$verbose" = xy; then + MS_Printf "About to extract 300 KB in $tmpdir ... Proceed ? [Y/n] " + read yn + if test x"$yn" = xn; then + eval $finish; exit 1 + fi +fi + +if test x"$quiet" = xn; then + # Decrypting with openssl will ask for password, + # the prompt needs to start on new line + if test x"n" = x"openssl"; then + echo "Decrypting and uncompressing $label..." + else + MS_Printf "Uncompressing $label" + fi +fi +res=3 +if test x"$keep" = xn; then + trap MS_cleanup 1 2 3 15 +fi + +if test x"$nodiskspace" = xn; then + leftspace=`MS_diskspace "$tmpdir"` + if test -n "$leftspace"; then + if test "$leftspace" -lt 300; then + echo + echo "Not enough space left in "`dirname $tmpdir`" ($leftspace KB) to decompress $0 (300 KB)" >&2 + if test x"$keep" = xn; then + echo "Consider setting TMPDIR to a directory with more free space." + fi + eval $finish; exit 1 + fi + fi +fi + +for s in $filesizes +do + if MS_dd_Progress "$0" $offset $s | MS_Decompress | ( cd "$tmpdir"; umask $ORIG_UMASK ; UnTAR xp ) 1>/dev/null; then + if test x"$ownership" = xy; then + (cd "$tmpdir"; chown -R `id -u` .; chgrp -R `id -g` .) + fi + else + echo >&2 + echo "Unable to decompress $0" >&2 + eval $finish; exit 1 + fi + offset=`expr $offset + $s` +done +if test x"$quiet" = xn; then + echo +fi + +cd "$tmpdir" +res=0 +if test x"$script" != x; then + if test x"$export_conf" = x"y"; then + MS_BUNDLE="$0" + MS_LABEL="$label" + MS_SCRIPT="$script" + MS_SCRIPTARGS="$scriptargs" + MS_ARCHDIRNAME="$archdirname" + MS_KEEP="$KEEP" + MS_NOOVERWRITE="$NOOVERWRITE" + MS_COMPRESS="$COMPRESS" + MS_CLEANUP="$cleanup" + export MS_BUNDLE MS_LABEL MS_SCRIPT MS_SCRIPTARGS + export MS_ARCHDIRNAME MS_KEEP MS_NOOVERWRITE MS_COMPRESS + fi + + if test x"$verbose" = x"y"; then + yn="x" + while test x"$yn" != x -a x"$yn" != xy -a x"$yn" != xY -a x"$yn" != xn -a x"$yn" != xN + do + MS_Printf "OK to execute: $script $scriptargs $* ? [Y/n] " + read yn + if test x"$yn" = x -o x"$yn" = xy -o x"$yn" = xY; then + eval "\"$script\" $scriptargs \"\$@\""; res=$?; + elif test x"$yn" = xn -o x"$yn" = xN; then + echo "Unable to decompress $script ,because of aborting! ";res=$? + else + echo "Input value is unacceptable,please try again." + fi + done + else + eval "\"$script\" $scriptargs \"\$@\""; res=$? + fi + if test "$res" -ne 0; then + test x"$verbose" = xy && echo "The program '$script' returned an error code ($res)" >&2 + fi +fi + +MS_exec_cleanup + +if test x"$keep" = xn; then + cd "$TMPROOT" + rm -rf "$tmpdir" +fi +eval $finish; exit $res +Qf< pŕZaBk-x0`#Dz슱$_hvxwf=3kI86ťX{稄"X*G +9qՕ:8cb: `tMw~,"{_~{d0WN pek+BeKt ɴ.oi]֚*!̲UÊP`mYnNSՇ; MAL N.C7jAo/VY{u7kmcS)X +hKbU5{*UTmpHgTb,vƵmx,63:uZ1 +N30=4^2tw C\eTOU7׶,v}@ǺuJoEPD6D-2pIjW=f+jA[Wuj -;=Vm[^_牅,]fV,oeة&dFAB75 -4ޜŌ!&L@=[VR73#&T-2/X vmBK0cK`,PPnG fnWw\mcf +Wigv dƬQMWВWZU5.ż/HȺbW +#W5B[ZIɮȴ\!dn%_!$mU!tڪt/[P:b2b_xN_Y)lQ_6Ԛ)X˩] {gz /W1|UْNjEoPi[*^+SppV dD@h[U *xL@[ٚC9dCm)Mp_ӞSl,BNg'l|= 7´vAluOGwK?ydcGs{Gsoe@4q0OpƎWxŤLUV Shu=42CKcgı5!2mc'\`ZN Q}^)2@`Ms֧Hg%;%MO|)Y}[D0UzF18IAq=L R}g1܊SCz^wu*F0e?H\G+vށҀM\gQ sjk^Td(,Q˛)P4S +J*o ,@ks2lI~?F_W+fy>}\-sS,8Uw!r! O?j{Djb1aY-b,.C-'iI,bXRI~ӁYRй-Bw ]=A54866hѲ]q2]iHVlyd.=#,{[PfʺE)h!OT`jh}kZݡd}d]r`=BL^2loŜMKyʲl1dpCdz $꣺wrU(f|\Mgja]Ājؖ6zW{fC .ƒx1@d >mcʕd+gk\ɯdcykUyKBd1,ѱ6ֽ7_gJŴf@sc:Sc*Y "vR>?M28.K@7 +0ov :<0s@:O!צ_y +~AeL" +֊WXѲl\i]6Gt[x|1ByniW33brU,, ׎߳g2(o2Sr ɑK9Rn-/ YA.Yȋ{2<\nf_ +Aγs0}Z~Y!J1V(s>#gF9g7.yҟ{f#_|N,2:'LEР0_R 5TR:k>|hUR]jD:vRSRݞHuцv^P]φoCi5{84LXJӉ ,Sh* +Qܠdu[6Wn[>gz2<'E6߻U*EDVcʎ4ԙ#R Zq ~%(nζFn9Ż F>)0RۦhmpIYx"ַf!?fP󌴽7Vڕa,[-XQ~%Lem 憢h𪎒kݠ9ZuУ +(u,ż_jA%LS^=T25d]˕)ݒiTl3}*L7pyH $l}&3;282x:ĘFQ|qܬvI.GtX$3iMx' Ur}喨KYLn\dHϺVZKezk?C=5B䱅§9IcڵF ;9^Ƈw54 +{<\}>W]q뛰 G o4wg|m3|Iy5<~e&|6Sȃszλvpo?˿:/璎9=o&>srj a#Rܽ{{{N}g?c } RYT?7!O yF %X@Aq(@ +s=٧YY'he3*qO&Φr{.8Rwk@cqSq8#C>q&/-Ω8g\lOaz> v +yq'/,k]qd%$[D䡙$ӭ9s\UIYJ|6adT'G1+ҵY &(Pgyb%: |(|PgeUW%I=x(]@)].=j!~l +TzCyeU$98$oDf? 8\8W:c'Ü"R |G.b9҅;qF@xV^MؚbӅ'J|!p'Dh~t!/(E +OKwr\AQxoE|wq w& ʋq  DL\N{8]@xn%AZCˉr4pCxI90loX Iȋ}.[64߿bxJ]ȋ~e ?7 4!?ϣ ]CXa? +ehyxZ9>l8?bIqJE=XE'e°R}ә2|sY̿fܿ$\pz`wFWwT y)򥬞Ri*j6/i:"@l22G1W}PM͗չաúz%q5|~ ͩN 7[CfV]֯W:VF-?>8꺯> fmLˀWfrl##Wje+ȒX r(ZH.=K Ou!9Je8.J׵W׵5+u@ _/iesĨ:5:48~JzFS5VI߫ћ$=Sҏh~T׳N_)5zNu`S)>ѳPO;AayS<>casq{G XoUkZ T5{ʈߤJIR9H1J*|hx/$.j}br_/x O +\a}Yʕ5Su^*Ӿ~O[?0i;z1ۯ:o=w7w?؊7u=7v .}AQR;[]OplYugj~2^ܷK\.%v׷h&` w;WkV>"MO _^V4_#Fv6iskkWpQ8(gNv3 +'{̉O]d#?]ߗ7GGGG(:~/ J(Z Ev^#&٦O%ߵ(I':'}P&ҙ: ߥږ~5Y߿Wٮdvm }XZ2٧ɑ]] >KN.*퓍c J:_:Ut=+/ J86_J)9,86&~⣫c񐮸_@|$O3]i|˯{|H׏cDZV4ql*]*O7]FO?Z\ +Е([O{b^9=~l|N^i姷ǖFW N___/og}86Z-_"$ODZ8e@G/FUNNOB8׉.~ 䗊c['VuKs ˿~N|D~Уi(nrFS#k5\47nvfkmTk'~V"1(b FXKSKF)v4񬕱Ҧ +Yg&ømx~"j5cQ7?Pq0nq+g"Tv FLVT1BX?{0LhBs檰A|S6[bV +5";A7Yy dxod3cCQq{Z>353%?Ǖs3\2Rhm1 +k'3wvֲ562q6' L$gfmbXC\q$NA0` 0@}Su8 ˙Qt!cC"NCJUHd<*ZIq"ɗ`*jKFnxidrDx,X#LW12 OdRlC$ -- 9NJKcVta,πOnƣ;atRAߠ޽a<w$AzHJXlyBPײuIї?{o=up}[[ +fO.qBz [W!^`eϿ^|/U;p]Hceyz*G3jhDiVҴbg%6INTadTфQ,(UrH:x#Ŕtp$@ԔŤ'o"8sDc%ݎ`x-;m{$4V۝4n7W'xCVtҚ1!ahXv;9-<ѭ{C@hq;q#@3B&BĪ"/ұX0q'9 )%kI_sSG_+gmE#28ltGwwC+b~SX~Q+|NCgZ||Ha1lų')`D:'XVZ!n|A7Q۷t*N9W;Uap?[׼iKKu=jeC皲ɛDCK.EfTޚ`8ʆsDF1`VҰsf5ĉ #H +#,C-;#R׉$nZ;j Cl ^%158w-\86Lc$Ey3E6esxx4GP0fVո3;{0jChc{qo3yŐT.Uߊ b(WY\=#pj)&HڼIc.LkD.9Ŕp9iG.x/.7\OknQdF7(r! +eek`8F- =0E&Iw؊ GOp'SZ%<]1BAfch˩يR%e鈹?;FCgI" )Up"M6>OֿWRVW,#ΧD4=3oV1[ ")輢a,J>xCFM!#P#Itd5*O0stqjPşN؆eAd$ ]{4LeȕcBݤ0Fr\b)8!E.<.0 2(ΎŨ{({Pp ,T(X;2'7i~a>^؛rVEMst*ӞjE%BjRdQcԶeT$뱐r+F,(‘> +x;,a3~4~F:f ANu3Om2& SdkؽNL2-7ˮ&$ Y2qNaƵKF6Ai'K[iÎmK[eJ<:@ oh bQ,Jl(HIlںɂQ:uIVL~MdCֵ~+T K,I3l!R(D cD2fyX{;k*@JgŻR&hnWYy +Ael.%$})E%Le]*)*L'"~ Ӎc*o@4;=Ie-EP EEaDG aEc>sWw{)96;J0epQBj5'AQ&y#.W䎃Vඅ/E ^0o)DhM~mI1zʖ07%+^N 2/Ӡ"D/ X.KL@Qx9sx)[rql܇ bPh`,{lE譕B$ClXm3c&oz:Bˉ ~A IgddǾ %Xq4'C@p 9T$+XUʥ*Ti }$⺓ X* +?yo{ooC#E޼~g߯7?K3agrpnQ|{Vce h*|yWKS6G]ոic~N^aߕ'#}GjťtJkrf43chdb\*2\.;.,??3 +_.رJ|Xؾn=teyGVnm",% />JXs|9x}E(9\؇ƶ,W=}F>^CB8[ۖ߹ZX'KV|3rc-<\~ .{&]pϮ.Wݰ6yc:&2بp.Gt= gRT,͵gsH<bh,M[Mg>)UB:`}s7ie}$0*]&Rhfkk@' 2ؘ2 Mf%|c9<59>x6qiBvM"HAEA=Hp 10Jrs[ya4-[2V˕aʃ7zwWuc8mft$2f8H-+EfJ"d4IV>Os񈙏'x>f0qMtX +bBh7ql^e&+t䆉n@YGbDEwd&ؒf5&J3=+ A(f^Ê=*_2:G  xCVhHwݚjcgo :<|Xww^!6ʿj zt@3_:nK2"߳T~@BG !$cGsk37 g_v56o=#j&GC܏:[4Ywݪ1Jfp ؇5n;ڵgm+&l@;e81tLw>yۼX3hN43yꂆktHaXaTG}^u9svAֹpMFwbڛ N +Q>z9H&mMAAw OЗW>AO +5e!͞k;MFM*W];h1 `Mcٮ{5ޣu~PlH669qm '0SB\ѓŋ8n'8Vh/?&Mf)0Í*ׁɯ0 Qq~-$5̧> uagTwlwtL- +M6>8Ajrzͷ0?o#5 >|ڣQ LT!nPX +cڂ0Pu<~. A>R h]s=- _ɯ2x|ʎxj* *#^ȻD}o`0~ l[ލl$QQVA(BX6ޅth63sgr{j/au=kO? +_Sا[DT TnT@+k=!8^@eS` W`'ޟyN +v'C^RgbS仰]F[D ^+IGSS@>I^*!?^tĘieC*#"j7d;gUDIGNYv #I_hE<|)`7K삝<)*uPnɾꛤ@voic_|ñRO/3$?`OuL*H`7HY'IQ7BtwFt=/+̽nAiź8iX8dȘ́n9fbZ񟕸L6f(sz u/(j86yyI2yŪ@g g +/ٓ2}YOe1y$ο<\tJS6׾i<ߥMca6ly=f,A/`jš [6d[EFڶ"NYbNK=*ϯ,*vM#G{E~:*d,Ҟŭh6MT2#1٬8:1[ Z9Pu9Tua?cpb?ZO$) Qag@&Wb@R\;hWa(BEF +)n3`5Xď_MKCYZ8Px#-SqPn{ݪnT `Ҍ#ZCXc~=!L7A=Zk,3X+QNRco4n`{?ۦh?x;wZ >ip't:Xs~I}Qнtk]-2AAP]3'<: qA{mMܱu|T]qhvX,.'A/?| 鳟-S5K: pv[3tg'CqxB#ҪOk8wL )r[fΌZEiS:0hoiZy c M&^}|Q t1:g0P Zl붮ݣoO]&~ݽU3v3jAk/E>)GƤ}TuVG|WgE\P^ۢ:Y[@5j?u2VMo'웘Mm`fh9蟂62{U7[sgT[-|3 <7(b>g1_TKlZBܬF| SPC|E>v뛈iuՂ7ov|Zƺw+zSHWC^TAz+/ +;Q&OtM'(J}>QtSpх.`(_HZ,wȫ('tqBo o<6#zd +A9Ƒ +J@~ +(P>]w$o2ĂMʱǤ`?*'Rχ+"\ +<_+rqd ɣ<+u vZʱ /h]xP P P P e + r@qO6."x\lrIִ>رrˆ޴~Q~hrm<:gÕ~ri1A*OåLQy;eȸȿY\~VJfȸDC]O_ WV;a?'?܃U`U.'[H"Q+3H*gD,ƭx2Zh6OL̇s1sDT?qW?UϘA:y3T?p+U?UO5|0K1cUqUE?8s~QHz1pv>R'vim}G49ק#Oӊe:;۱>1 2{E8q+Z7c843t!0m0`\ Z7ct0^0%1vc'UM{K C?zC;k^gJt~YI)^xnU3ql(|!d;[t_]\y( ۃ:ѣ*@pLSV0>Z˟8 u߭eϵhgjT2nx8lgLMM8%la5̭*(:ֹdL}6=W>`2ړ>N%UӵW0}UteZq8ڊ$u9^Sx`:G 0_7>p3ML>|:D8w1EX64M/%12Qm) +%ծ[o{{z St'Lт_zT0E]\L}Z`a&(0E]x\LY`W&J?wo[r?}L+CL0?ӰɗÓtYbBKJ7s8߇5#}F}m⚺Ay+>~X9*#珉-CWÕF$_B/J%hKc/oQFWJ\e=-S/7ϽӊmX}qͪ:yFYuTI~s*>yܦJcO ]?:"MWaGNQB'iIF@|t:7INw݉qԥ#̢3q sz4=9yY8denݾFƮtꯪ[ު.f an~#3t`3V&Ot| +pݧy|YE~33̈́9NPv^NF?O.8y>NcvB^3qe{ ShMSP+urٺY,l=&BֿZc~˺]9ufOwcU+@+viviviviviWľ[[p|A?99#{xx+SUX忏Uݸ8z`qD"LR=(ҎKgfoP[ajh.iP]mKk|?yR%)YKvﲨS߇%{ g(FГW;^]_{ϯF{rW{L?Ѿ%ld(M絑 ?qUYj"?!ˌ/e<LS}M _K%嬤VQr%[qNʮ uv +cޥ0 +Ehw~ ] tdKcXf6Y`NYX֖¤80kSq5L3~F:-I8^;7ց kǮ ZJڪ7'JJ|8S8?KcErQ5yk=HEż9G%l'蕍 pPr$T|˜ysOV0"O?ALg0*sTcLio_~x8>9?.m-zTH>ps>RsӨVWOA/}6̞ǠJ3Vq9h'3o\?s~n//KN? qM?nJ?xOcP%+J4Ou8u7?|8e1U0ROu0s>Rs=-(I +ј"1{qIq1pLJ*KvVb?~-v^F|ezYXP<'~gWgxZ/L9 ++V|#.^u'9?m--/nɛ9Ts_yyǯnm;By9+ӣOc,j5#)G)f?</0dP{u36N6f?a$?k1<`R?&?8?'/4I9ٸApMjbxIy?|I&zԄXq73csLc&vI~ZM?٤]u0fϏMo3I+v+,cLҩabo7iU&e?dg*Io/Lvf82fĤ=Ԙܯ&INdxud~۵&r;MgI@:#|I${M& Sr]l&3iOMҙn2>;g \$cBw(q7+j*k`,/'*tze"s]>'zPߑI*9 +^4йxǩ|ޙĎ +x\O L%#Z㿕zPY#WU%+)/&ILrX&ݏ+UBAy% +a!+!i { k<1[ K]޵FV)m/y/! +<&,¬K +GױVj3:]£b@b*h$% W +4aspJ$s6{.3ERbz\^,!"do4o /۪Nw/Ϗ? Bjq6xF~5/r7匞Xy.JN5.nTr^WFVrăNwCY*4:ģXɌk%)!&I/rU"[RR[cXJ!XH15*tGzl+H'C;) AdGvK +X$G"4JEEd/"38j'osӱUJѡ ٷvQ\lnK -0%7HD=SP24_JZ4:hl/} 3ڕjC&uMcs` Sd8CGUQPw2L9 +:i#ǻP`/=< ø'bDW 0ZSH!NO#5Al +wZ<4{c 1t91rSc}qURalt6(3ԄZlA٤e0_ZPNl.- >Oh+\'ee ^mlpMq&Rڜ/ hXS J\4e 4}>K PBqҹL, +8a3L\SЏ!U9X@g-^PicNVѤ6M/ }QEfw=b0z4^sJBM>1Z^:ʭnE)6=lj2S=atbćE@h%8ܛF:oC#;8cw0v@tEl2eBA=nRGxîpK|D׭7*a ++OZOCC{{\Uwqh7oH9)_(x5\FNj ɵK]%{VWK%IԮ])WGY E]T<֟0+e_S'e,¥frʵL\q=q:џʓ?mN<>_GWM•'VaO _9ŞoeW0tG7[pgݔoCпumޕߊU:rw>7"?*^):<, :|:ߢϏJC}txwW>?V|&xx_9]ox!^A_+-TYV~W׋U\O5_z|/ ~Ư=CS&нGF\Nར~2&Hr%b GH_C\ѾqFu +n~z.g|>H\|AtU'0յtGg(κ4\mr NQ +-+$/"4)\Iw|&N۹|5/&x3/!x/%x%, >> ~9 +o%8!m/"%._E[KA3!_C/&w(59^B\ ^@pN'8XHpz}8YB +WW<չ gn57<XI8f`=QhCUyJ{^ }TۀMN:t #B|Bߍ }'z_|B? '&OQ>A '(F ݏ +'k(п@wO_|Br~-OwQ> !'|B Wh!O?|BP>B '7(ЖZ_@&D:B zBOyBzЗгQ~F_ }'t1'z' (ЋQA  z%'Ȕ;P>[Pu݆ ݉ D|B|Bߍ }'zPF~ OM(O|B? OQ't?'+(Я|B+3>dB𿾇q}/<ۿ|!/[-[i^>'K>qxm,!/fm_c1˰8cSUg'YxW?rY/qէ_ ` 8QCWHqV@iOGBܚ;'Q+Jԁ ِ6lbbPUoo^Fv %OKˠd'D;P;= _P5x1 [@v7@^?˘៖B=q.<$~/'ev:C(gsF¿;L#ᅫo~koiu,L,>\\l]5O 9{wBٙ@Bā<Oؒgp<5OݿGU]"wɍfxZoDZI@jUUf&!@J `Ֆ-GX[&f%Q$`Vo5G}>2s$(}_<^{^rα]9X?LN9ڮ󛾾ivs7V/6t:7K~Wo%ȯ2=n~I!t~w^>1t~t~n~ĂיίͯCXϑ/+ߵn~~$: +7 E=Wo__:/OE}Rux{ v ;NJ/ wSw}}w},ͰBRqdXI{OK/*KW7>RL<~iZiRN_4!ίOH[keJo7H__:n~}}Rnu dY_g:Z7hOOW?z w_$+M 76L7cw\.O/>G5nH/CIבk}{/g_g:򬯓oH!ϷWl!ϷƑ_i:'zf nn]HA;0sp|\qH\ǵq-3q]9.ǵuSq]D\zpz\Ƶq}q݂\\µqu'q}Z\ĵwp.\!Kv8hgcH~׾✛b9]mA{?k̳/;0z%bׅ=u׾l~Q<:h;Y,MK:RpMadQ]M[' -wht)lnu`Ny_;n ;a϶,G¿GX' +Kؿ"s~FXfþQOE|?~߈~{/ƖNmC> +{ث@6 {=[z|0KJ췞`}/ey>`<3%ەCO 킂Øۉػ۔w C`~n)zja뱿E8{rb/?m)`t؞-;XZb_dk-_F߰_?`dF:vv2m ئM #'[z2tjBJȺF  +F\_bX:,ߖ餻>`=݈w'<:i7*mMёpb[?ʡr[C00ߗc}1o%d0ڳ}%dmCC[CcO@;;`y*\ ;8Ķ {~=זy_/?}=pKorcw%0:g1t GO`΃X~91W(ζvG/Ͷv~17̶#O:g-NJA`džlϤc bfh0̶ $MuA ܷOd\:# F<{r}q] +a_F9"›쮐WG{%!B/˟Huxc|/C|8R@1-n}0|v(:avHX;E#/0vU"uz=6Au5sw=^VXK9i:պto._ӝj5$6*^b|TvV /XM ؈e_U;uړky=}=YG&Ru5<':fEj,a='Ɖ3Jl/|69&$뇺\Vb_^b_Q``J y2}˼߉+2dtG؅a"}A{i_[çx~0ෲmc{^=p0|Qݟq%v_/)}O_/-}[)~>+{m0-, ~>K^KI YA? v1=;x}O%sE0J;ϸ cr9fDvF꾼#З86}6q 軓|#d zwpwg}4]7mأm0fg`$VWZ~P\aK e(ood~ONݐ+`Z> yWkY*+8Zvy7y?;q>0-W'Bkfu%ߐ8V|:NpVhMsS\s>[wY|寮q't|8Vgxp> +5z\u' i?,|lx\^_IET%Q{tq F0vƒҘ=wrHX4ًBxA/Vt,o~j"~q_tZn@/yur,$~L?A}7ob-\0EvDe/lAK29PO4"EaL'[~L'Ov߉!//swr/s8үĸq[G.N{]3w|Z{|loXt6ȁҌ#!˽o%0w9ywz-)[ɍ馍nKWtscK}3frqږ7);i7yqi5qy %Vaڭ7Clm'd|{qh͠\ _DrL/}IH?I5 G7Wsȯ2#Ia+>iKwZlbCYn|rK :s㫓tt_|ǽZ6Et#ƫM`_.70z %{O[Kt:] +w 7EXOf:I8L{1*&;":}He>7cL]/{SocOqt#|kiLd7ktUfZ}t$7LCj݁$\YɽJW2i#>Kg#Iᳮ&ˮ$CE<6_,Wmu+X=yMn^>֙,Wͯu +ɽDM~r9nV_:tFV_{?V//4B/7+(i7?1/On~֗ RrΌGrqkܰALqԣW|Ɵ?dRt6 η]^zw"CWO:XϓKOg{)~WN'?Wv{{)~ZI;/4t~ VI϶'o_$Z"/OXRp XsǑ/Ig_3t߻n~\z{)~JZoi#j݋r;rR+`R>ʳ&\wזgO~r(Q7?u:ɽ_E'S{f I= Aa<t1vQߛbX׹-."\]R\T[μ:h? +?֍A1gw;,vx- eD׿{QzJLEvA?#h߾HAEsn - _'h"h>h!h*hi }Ov/= /vEFp>뱠\75˾>sF!`8y(+ .=Ɨƹ.*1aX x Rwy%K(¶V +5{E2yc?BA=V UWZf4~#B,]H+Zzxo1O1y*Y5e |6ᵮȲ{ 敡fUiMMю[W6㵈GYふb>Zz1/z (HKY/u62uY?urgJIN>kk|g =~@hGB_4:ʊn` !}ö2X؏2&3CCeXb7c*ɰ~*1G UdX +cnZa}fCJw]Ҽ1mͰsM:z43s萷:o^ƽs`emE˳I{sjm =xqe^Z0Y:3(Nǂά,{Sp׷/dFoe( ޏ+;6O +ؗSWZWiI+(^T技uRߚH5_=ʁ{4~}>QQܗc,黚+v1Jj xᣚ쑔V E?G^cSO'EcSGϱ}WB Q&ܯ؇p# E)>& %ү4}8֢9=փ.v~=%ޜ.\Y(i?29I&ik_6jرzY[(b5?2eWe+~ٯ.<_ +MuQ5$-xxD᫁ߢo"Pj]e4[;V/﫞Gx"ӉVuǚa CүҸ'LS6+'zPtc\/OxDRR;^'_>I1$%?I}LY=x)x#?W$> +x"S/J<!k#B}/x?hx`35HNX?z u/%H|4D<׸G >> /$ȐxmIyH5Odxnis/$Rm1)fۉCI| +|Y|]R>$?|JY~leR>'E%E򤜔Gkߡ$-F~C7 =1Kv9Y6iLYlO<0P~ <=$mA#+6DK|:FNgį~S+2_2rJ +/6z&?Y?QF~b~x@go'ަ"}ģ +_RaO<׀?aCcF~?F~^[/7)Q?1K$0UF~m +o#&O1*gS%F~/Hk^w6GJ</-mߗzPx>7#E>Ue[o %b'GOtcKJGx 3%~ S }1 $~xDgqċx!q~/ +7Is%*XwK/Kx_B$>CKm5H6#׀?as_XR?'Cz_? WI^[<_~G($ܯ臁JxDqU\ {< +I8Q}ԋx@Źw6oxrU{28F~m +F~: +#Wx)FN!|qO0*࣍>ʩ߯xTᓁi'K)b#3%RqEs5D\\5.UOnY}d\O!G?W k )x‡?&ۉG _M\8UԸCz/$Qq/k:eޓSԺd^WH.zvs ++?-oΛ~̳ː/7=Xs{"?*h?kG~q[땩yD>1"1W$3ʽЖ|b>7}]38`£U߃%27W'yVzagG$0!cN##@y%X1a=F8f֙c}T<73'y^ [z|,vмWK߅)'ۓ ׼쵲8^'9쵷fgѧ^CrշE}xճ9S}7=,zWz}t׳Ou}u]oWQz}rW{m9"bld%;r{ ay'bZ|[yDxB"xS?G> K4Nb^[w/K[??2X7K7o-־\o-3pݘ!Z@smI9Gp?Hhߖ6\Ny.qȷ0h}̍?CR%৞]o> :~̗p-ng'>"h/o #h^9m?E%aqKgsmQua&T?]ڏ`?횥>[ }>KW>N/|O|+tͧwTq=&)3P?靸, IY#^kOvo^Eɳ%6/luQyFZTM"%sfiH/"B>g'#N#_tM%}bny'Kǁ\wpx*w=@N9#Xk98r%*''NXe|׸d4Q64u"򵍵nFpgtԳNj]Q6_|9萏BHzW1V逳>w$dXvk~Y8kgNf>v4 5v})i_c?ķP&N<,3,uhayL EiB/MpKhZ>7z*b<+_HDZt|x#K%0xEWOO<(s?+rV5Y;5'~ LdzBKH4tVqV |oKJt;57#ITs'D|b ~bsA9 + cIV#ocߋtA*oX"Cj>gHW*!ֹH2f+'1`ɵgɫuD⌏m=Q?YVϯY-KfgFv@\UOȊ|u/Lqʏᙉx+aTwHJU9mе輻k[}i_;WXW}U";;{$[ßE]wn/"_)Q[|7l T~ྒ oYh7-(/^&b/:l9Nxg#2~}7F]8Rob岵"CA [hϨ{VbD2?C&U?ʀ/Gy?pվL#g1BL߈xfX9 CUBwrT C%k .=ż}kw=vs:yR$"[և\_s+;w;^}O_AKdq}x}??zǫ%?Ļ#O#TL?F]rw^c <F*>}w8%1dI>kUk]u7M>rG??:B8؊w]3 >oƈaOX jzq<ϘU+>[p-WO` n +nψ< + $\2|pVI"u Ra\ v`Dl&=ex|ɳ$0jz?i~KYVd&o bxre$gջ!xe}49~!JyݨS`2_<`O* ky>mrF|KbNߴQN)N|28qhd16qQcB\:=hިHoNiQqr'ƸcQ~#o]?KOr~r6l u{Pׇ +҉B߃>\^01H=S6_5fǫa+/<^?:-`L qu:$Vxm1cRA!(ܒkg8GhNL0f["6tC_rЉvtH+mݾ |_cS(a7!{ak'WsFGXFݥ>n=Brvnh%'?brQb\+^dC{=.@}͘\14, +l"|sK.kQ~G< gn}uUGLV Ho~[+>`wͬB,6F~įC +D1&q: -Cdm"1acX6qo3εǛ^\/iCVC֯e8F=ػ]屬ԁ)bIi3nc;WE'1u(ua\ֆS5o13$D84X7Tsgy2.W1W <|_kC60G8Őid5s=> +Y›\%R6͞{9Ҙ/pCg0~+5}$3E~wzH3tq,kIj\Eҽ9/A|h#}D뛸'kuc"8jr+-TJ[5|%x%tlV+N/{-:0$jl a>ȉhW57~RL0mؗ(o3SQ罣^Q/c ܎3׏c^9EޚH\yd^-˹>VI_0ԟEj-_A;^x{y/v7}."7qٷӼ~ߪqd\)vogO]¾'a]WDH?02 y ezxZc'f(]199}5-E=#>{rO'zEM!judh{ډB޼gwCc=vCޑDLjyɃ|\;c=~˯[~ ޗsq7l[߃c&ŰJ~|zu7%ks!fk;(Ƿ%gclA;>ہ ~+0b91k/e_X)k@;yY]{akXW}]e[Wc/7ᄅv| +2ǝPȁF 3#[Ƣ4k}e\M8U}/N:];wX ה1v9Yv9Bڱ;y1N5r~9?Ls6~m\vo9ׯW.]!Ǻj{ؼe\c &O:hӾ cXq8ſ2G0ނ~q~^q}'#љXQ#\,^Uoރq>A:S8Z[ fqJS<|w"Fv-[Nо}#){O0"i;>x!ƄoN-/(p?]Hz#~j?. {/oVku@^i*ؿ{^-q](E1w?zeíVYcƱcofqEb{'U': g/9&bbK9%gY*y ({S#GI__?c'TaX?|7tjh~%SY _@XGqs><=UORƄ7_H]7'3A31hKGrl>wZnen&>b苮f͗vrFoE#:ooex>u}z]xu + GRj:לK6@=<=xV%(Zd^M&R_:@\F辙O/eyW{c.G'Vy7|2՞ ;}q6XG~ō!Vtwa3_,挞Ŀ|1lKHxڡVŶjF|e=^f/A^yf7@^dK?$ln|KݴL1nXg%-Kп0yGs2Ν:x{+0~=5"nu2!GQb\p/3-΍¸k`dze+~ nɩv@qt-_{͒u `3Vdp~A eݞAd_|t^4<۽1x;F $z z1yaTY?$e,DmG*A ^Kf }|(kB08e"N􈓹.ʦs~O z y~$?GiU/S>~\HbKD-q,1f̕X3G~PF1QKtgfl}c/חacF/gr +|gٜ;'r\c䵘} +r<@!]pw.7~ko¦gj~T?qwvimk+6i!|Yfߎ"/Cw]{z[VmGV>[~2~Qs-ma>T)b~9'iE=o>wcҏgH?ַc؉uf~Ӛ~ ~Og?ozN_i~>QGg|V?_!-ݪzD;v ;zӳ@ /ة(fƣ7~`[Fm]&̒kEbܮ=>wvINµa>;mSviNC_Nihq44v:3+czE@SOCߕCZ/9k爥 l&0O(OJ쯽麭J{:9h/ Hz[q}wwJ> kq~R} +Um6?_vxZaqe+ѕӾ=hg\a{~_qyrƀ^iιѓ?PbQmwN{5O9ƕhʀ:DtmO+}}-e)ĵ,{3H', Cgq}c*yT"N ߶'Nn}miwsrG/r8r+wA\8_!_vA}6Kjw̏B3vC&q8i=ѻ:x}i;rg:v>QﳌS|Wˎ}-2n9zK>Kn]Lxg:#&6C`> X`6ϧr?!/-St!?S#Z#[ Җ۵-/r<4r5bzt~sTg߁2(jmmNzJzG\K::\PqJ&/F[6˵KO|!οy֯a>ɵn V5%&>X/2+CGNᇖGe=k7rh(ri # x,ֈR[t~mϿ7sO}DR_:~\LeuږY7r|hSڿ;l{2_Kwgb;Q׃칙'zöql.Wg&W(SD_&з,1V;+o|3}am+ZSDם.ǝiΠ;qgǺꟉ5 Fkչr^9dӓ*oG='3MͺTyvIU +59vrJ̞{{ ?'|>kd?m3,]:~8u OPuRdg ^N t,/j>wȻycA#Îv*cZQ5K?\4;>_&J /:Y0#`o;hiF0NljVƀ/'h] H(MDI=mٽDHP6P!l7@MFRv1<~`3:#ice97?]~kgT&oϞĘ&gTqS8e%┇MrpqJ} 'g K?N,spX|ɶFﺏtt{8܃8kǺ2 of])[=‡Hƅi>|1 :.DkPR|t_ΏS7<]t Qpot|jS-R/:9Ҧ4Gr&#T<=Ⱥ7MjESg>_x߽b}j։9ƛ3\?1]lyKELs4# +dqaoY+ Z[s=VqZgW@DWs,f>(ksʘwxӟ7iƊ#joAIqHmܻ}|ѽϱ Ɖs%[ mIb9lH(:8SBNOQb*,+',5V++!/Ū]ɯ7^)7>.Q0|՞< V}h #|TCP܏BC*E1r|y看w2:wXU։yYζME]MGL35UWo\g$>T:3/|6zxFŒׂn_nKpENaO8mvR-:omZl6v= zk䩌 r&_컨Wg闚 }r?AO?GW>{C;_ܭirt`~r!\3M9ԇhy+Z&uno7?FZh~0zX(xq*d88q~>!< +kŇWxa< C Aů@,yVX +=~ų@BYceE,l"wAJgMt~u<8 ÌނKq͙:拞e^2ilwo2:یwq7K!>4yMsvb z:>eï?3u83Y߁guߦvidL.eYށ,')Yks|~cꀵ>qv ʠ}m+3yk 's?8"u[ &2~!omxKp5([nYO\/VuoQo=Z?s⭇֋+ ~&e>^>Q>$3ݿ?ݯ}+oIxkxWv[g[ۿxk[K_;~>;~xS^s_;n㭇֩_]찍ϲWîxK>U;rN?#V%G3ro`S_U{M^W_U{HM5aO5t!Yx vIīC1,ފ1gb&獣ªG{}cKQKܻz|j*Xú4;~ĝX7wzcN'6fwjDW8Xw?|8928` Ns3gDg#rC\2A=>E'=&ămԥ/Q~MCC؟ yA?)DcѾ1pz7|EǗ_XXdaV'ʏ+/vM[9`SG+>y@!ǣ^A ;/ϕ&va9vΑB#=h qf雀D>WWحJZ? QsOho%פּhc"r_A,C,}Mvu9Mu?Ÿؘ1}īh_-| %s_IK|DOzf^r6r^kF~~/j^$Іm?L_%ǜzk؂lmG^ۄ6Ys=}w)C7<:~{+w Cf~<,Ծ=)_fg9pnm>[$çy*~yE}*:>[.im:.*c"{B7h|:R-}*x,Ҍ8#YpNJyc7nD15k1_ ᳞j L!;C=±t6׳m4Ծ73xaw'|!y?Z`݈6mXנ-ԋ^5[V5'b|.;Z*9|>bG4MB<<+w8y\o^W >+ ݗ݂iCЌ6ӽ cP}}nAǕмeyUw/;~Xs|Oq +ya6bȴ]9B_,ιNGڽvx_нtOɄ}._ ?a}4(k+Ӿ*}g}e.7;!׳a\ KtXmgv*nk@_X;&+u#Ftճuӄ\d>\e%W73֢b,έr_g\盹kz hB<ӾX~~F|#.0v=Շ}LQ 4r&EĘBԇP{ =̪]*#M["Z;Z?aI!h+~&z*|t#j]ڥ梦a_͎o}5<6qs_1Bo/5yL'x1[|7gv>! @:7!o]|ע?V0~ρts-U_r<95-ǟ '"SEYLKLsE>вa.Sf'+rSF.'oNoI.>eHQjK3Ŀ+c*.XhڣY3;~Z={8G. 3;s{?Uwνs\h^1o"^gO_ο">|^;ۥ1>Mxk=ꌨl.nљN}y8y8Ƽ|#>x@!j6b}yW ױ\k*ys6$eH?IMQr_M_.D[W(_Wqncnfs.s-r''ĚOßN>ڧi^L,D"}[UlAؽuVc,#?9b/;L[.8G;Uj+*>v}17-\%!؎@쵊#G33{47~ɋe 9N+wLX)ھl8LeS/rNu^|N}Fߋ}}; +{4+>Gi`}$OԷ;aDjm=:^>s8R>z^(#TEz˱D+YsMgdޥ=!~~W~W~WT]9߹$ OzI:(7ee==a a\=?c'7vR*>=gi>ߠ7bgw0&˵Q~sw"uwj(Yazv|||J+9o;ҞOظ#i_o/4]P//G{w= o3b#֦E_$Z/`A[(爵(1^F|$Zv#H"}"-/YnO>ߡ=?@Fԟ{_m퐥+w9fQû<賔󻖢 zTݖ1)摶ŒȎy/Z)bw-D[6e}܆ VE|֙ 6r\|}8}[vD!w"i[z@'S?p}. |2wҮ/ֿk*~'sLʋXbgrl +`lk=Ʈ/9=zl=syobL>Aw-˜Buށ~i^k^?ܕW{,s`ݔcf7d'||ګDK>MQX7z&b@[?PsxIZ9Aij7s&/ߞ}w9n=' uOgz_EMg.Bds(zBj\"o"8A&76([B=wD_7}Ώ<wvxOk~z)7c/+!ϟ0)nKd܀|%BT7iY#,c +n?kGv<FZzL;L\ wD|ʯl;â BRA7tƱ[^tgۈ2p~7`ڂg~7c9)qGhO&tg͐UG޿/ϗϺwzGeC63<;ynXY k?s:T5^X'T$Ao|%Љv*B S3"m!p Q$dA?gw8S|?̏?ECEۘy'z^s<;#O([yͲ^5PN=qX1ǷHό ˈޙg5Ϙ3:{lw'ú8&_g;y>gփ6x{{nkS]L;{xyx3]K#6LmͲn+}SzC_q(knil_-{Ŋþ% 1^طW7]=e{PܸrZ /φuѯ[>co +GSp^A#xǾb9Ul9{~l|$?γ)eZZW.? h?C~e+~xn:d<3wz<>u;(nyGy9 LWDg_]_'b B28vG(GpY?y=!}Zhk~/sw:b@3; OD )<&da#ۆy+ѷ4s\yXD 4Z?f }}cD+ft>sGgtwOͦsab|YCI\Y!q~s{aOxu↿#߭lx|b=fT磝|~~?y01nGS6ooUe:AOε^Է/VҁKha䷻39 Eg 1.--㻗c\oD{ wW(*:^}:{t@"l8`G}# ^Ҿʼn;GzhcXa\1jȨzĚzmH5[9ƎOX/x仱#\˜ǓO<dz9w.|W! :t +! >}Eu8G1:?:~M_\?: rhԺ)ML"~IJ7k^,ΠMx/2{j|6kܷeަ`SbɵabT W6 _5ߕaY1gnXx.8̬Jtґf?p5c^BXAA>~GkPxׯż^C7w޻i7;y9 8;7t8A}kp}vQ+srZr-y5-ɹk#J=Tlr}U}'+y5i^~+y75mDNqշ>h{ߥd˘bW!o6 QOACW vκaL4r%ۉcwݰoG>羾>7|Z/}k ^|[{D+ϚzϷv=Go;{i_4"S.Tjm/+q _+}Y~MUiwMң|~zhO}9q-e3_ۯm ;ź߱sۺ_-"M8^tq'kˆw]Žm¸>(xu@O|{0ۊU3''GZ'7AI}Ȅ1Iw>3Jr%:sR\miMB}m qxXwx;HϹ{ ߫mpX/団 wOc:Ͼد%c ҷn"7}3,|xwkN!m H<; +,w5k3+GFK%o•)yÉ~sKrҞ}WΏw8.w5G'1'uu;)cݎqݎf[;y]|$}, jrr8uZ%f9}W'ozq!l{Co_DAd_3.yv+ci,ʘS>#?o㱖9(6O/V[ZrgFv-O ܙ ځKsKܰ|G>x<"X?BKfoߠD-7m&9o@N &w8^"gd2HݪSNi4 bueǠ#'s{f8~9›.[ >:aTlrQp<6&6bd?C=~ eˋ4@koY ǩk/҃kw˸4#}͆mgC֗;ރ'ӷ{GT<%e߻U?:|9뇺?E?~C!U#@lD[r|z_1-~O_{rd6 gZy֠GD>3xƩL߃r];@ چʷn"U[ɋr*+|j †\;.!~|{ v˹Աg&ݓvTtG[ݟ~ ~-7@F s?=X{ڹ2{ i#t{_M{>hO]7,όц[=SmZ61ŮJbttqc O>LUEN{2{`;tzm1˼6{j'}%?u~4ؤI 9Ÿ9pO~X%΂|,Κ_Ίw +q(cF;.ς6:5`7>5৉ ˽zžtƊE/_bQ4$6i/3`W|V==%X?<~'xR,zߴMU65=2mSA:]l׿~v3_&!G!( kOyK;ڵ 㨳6 ]mhWP(>3qjW>.ߛ>,wO П@ԁN_t +.BؖK1Bzx6ĐvzY?Z*h)|<"zdcT{=o ڛuEy6{6h(ؾlz lg骍'lQCj{?WЉqqΒ h6yAGm@{^~Ss~'Zw0c2ڔ1>+|YnV񅳿=_9Q(ۜsҝw| zηwPϞ=xZ7~>7xZŅilҌ4GRsyH߮i|HNTBNN@?WzyfA<-}w }jݝ<ޯ*7 p Jgx8C( q$/Ϙ~]p|7,]F?E&Zo|/=9 hٌNC_xt𽿣?cyyEnp}e. ~,pW}exe]U_0KVU6ku s‹o:K*Kʯ*G֚Uu :!\se s7$;}uMմyq/ʪkϞn+vfU ZFAGtgpoNee -@SW"ݜ}|A+[PU7JԣFWͯuAUKϽ%$+aeIrEխ 0fYuP-Pu٭ ,k+dKQU HnlX0 bmj³ `)ի/_xQLoh_lV_SU^k xC]z,T5&W֢͛/+Rqv|4~'O|aUSJj߫‹ ɦN]!X fTM\>oARIW뼬.-QρBMRFTV5VMW=Θe&|I"ϼu~ jyƆ2[W[y>V54ke>2ÂlE&hHX/VWIj.L[8kVUv=}1/ӝ/;D/Vv}U9 ztzx +tE:MSzqKuCg1D#>)G@'4B]P>qWxauըw:4։9Ӯ|Փ(1k.'L&g(/y3k+:UkuUϟU_ w7. O;Zy$NT[7/C(0 C-sf"puCYէ)קRP>z>䪮tƐ2qނV|pߠI*Asf6J堐\WjJu _  DʯuI |^xvU/y)XUDrW*'{\]g!nfaԲ|N<^zz*FSq՟օI?ⳝ{,bdO/W* m['RtCGhP@BЁ²4Q;[uI@)' xo肫pfzl2JbnRJPRIO".S6$pU㥦}AQwL_?kTplhpܧs]Uw ATzYIZՠ.k_ɮ"LVU*y>NiJ]]mݴK7uz]#oW5ف)è@x.ZU~̪EgG%r)spYb*]^+.'ܪ)_J?b8T>D5)5qڜn4|dUI3J8dWzC5eL,FJKEy]:̂%HMA/tA s)}5OzgWC7۩S._P-$bzOrcB +Q? tF$03zMNgΔ#gzqY: 4u jy|QjPU{&?rFM`؜y+Ԕҹtsk?2Kk@wA {&^QW%$UeH.Eƣ^Qr.;衅Yʙdא9Hꊪ*XK*U geNuO^0 Un%ZV5z1oZаvToDh*c|,j COixd!{ 51QbPQ~sªݥ:{_?+՛sJ,?Qj)N\Q3PSo*:0ڛvW*Mi)*[U|( +Zj,b/i1K. ___Wg^ qgZi8X%YjsQeBoșLP~Ҙ0e)~DfWUKL:wБgZW)|rUѦS-hrߙVQrFUCi댑t +:er%br,G2>C&9pa&Ѓ0/9yh'&Ѧe*2JynſҚjյz1ߴZ*m2ĴyPB=G2SSq5&iR=afU/Q$Jt|=2y5=BP9=Pv.NsIߢ4rXH(EǹŅ9(@.8Va/~.H9 cfM[USeBc:1fI;#YÏ*=t@rHKNv1;\LhKZU}|-s]Vz/jE G҈Zj4ETy*‘Ӥr,\?7i)*MعVQׁqTEED%&ӫ%M`2h3Cl2ͲTbڪfP'8O{sAW!|Ej.W/|k :H6]2!Oc7LϕWإ:7 r5C)Y1?O^/w>SUԈYǓtꪪzI(\K4r7)dֻNrz+YotN'ɯW2]M#fcNS`SW;w=ם O`p7#)CC]x~,Q1㨺\r@Oz3\~t>3͜^K$-Ir<~`I +^~5ƶ%zL777V1\˽kt+ f#+O#.52djΓNW:Τz,3k C9I8E*T4Ĩtec]ݱnD{cWVN8ei+!dtzՐzc_#ϞȜjUTQ^)pLKZem]\'[Ѐ~AʙZV\t=!c[s9I#YL3`"1ye1dIH4UC4ۯ +pC5+q[DI,5ubٖ&ޥ:~~91Z9%emx>Lͱ 31G [\Ï +"4E^?B}]Y@;:>G5hg~ qd|TƦBỳ`Php)c㠇AWCg 4 v'BAA'Aϓ> , $o(zh&h h#h/u;pqfh+AׁKB㄃^/~ AKCӄo2!t,z4sc(4@(t> +UvvfVBAKRy4ͬBy|36#^a4XA ԆBUUփvv= +Z5ʿ +Xy$.tн٠GA@'A@e /ЅOB(ϫ'h>8h hg+.vY(% +v?%(yNNv +cS_ +P2aP`OaK-.qOrm]PhMp +Ճu=>F@ׁւNvVFm +e>ޏzF9pG+ ~|AkAG^C9*A|&}%({~AD"㠻@l1};:W( _QC?M>=Phz(;ʥ'/Y xj#3;ȸ>SC.['| |7]S#d4>#"T ; 0'SoѽϴK2:7%7~'Ϝ'/3§7ߍqIQ!Ði!SϹ?ߓԛXܟ Nz&OBi"Dh?aNOzHCOQحn;vok1uaڤbQF@R⋨ː/|eUg$Ls6ա7j_c0M}I=r~/?q)}g O'E .|:awSwt kT8@f28}1Z( A*㔌ޟ; v=]Ny7\OZIM9mðz˨vy|؏b2{>[Qg7r߰ƿ.MTϣIša/ՍGԍ +W*hm@ܙ'WF"I^`D'z{ >>`4sRM*;UAb"&~p +0LkOjfu#ߧQi>v>UT?mב)cߒח\׻/E -}ǭYmlZ{}'Vo-6?17tF։q\ux}a* n#,#u@NU\O/f[(~*!^d+i^|fqt)Mq6 1;yώcKmemFd<74fwߛғkc6Ξ?FB)cwsLOQ{RoІA<|!XC|an<8]/8~qR 5/^ӾtWD7yLх?;d&>(qRta$2GO1 >ړH 쳑cΓT*'z*YLL9Skp``&-X `Է"׈ρ$!w/: L5=Ίo5qRdQ\fU`Bōۛ ZBc ,u=2(76I2e 9;,?4l +i;D{U FWtQ߹,xyx(OOTyqr. +knF&E? ^|ijG8烟Q"pXۜ:ctc .V=?2YÞ^C>e\wMnO zn_S8iy$8*}|6C}L&߇ws6bjdjUC&)M*c{ 42m .i,׳z $ZNNxN&ϜRƉK@R=WF(:bo(Ko\'j+%4`w$LT3j +lz} +C!:b>F-0'_S>ʁvW2o:bNͷ[>V`@keJz0<SJkXj0ѰD^&I}Hg;=Fs}d{:>i?ZˡۜفPf*_ kvBvdES:9A&nH=#/su+&/[^wNyQIki?fYwns&ӧh'4TEy961w':{Ώcn8wYwJP/`i9`Yͽ3yC :_p+yZ$v۽{ [yϹ3r9wisMKF) ؇~ uVȩa+ڃZga ғ>UbJt:OEuNlX#bCxΚ V>6," 1k c^'iޔBAtaľ +1jJ ۧ i:ǠJ}{65!~$=~uj4藻 aOeq;SXdy3<=z_ܷWIyE42ؚšQ?eH*'*1CZe\?>aJdvGkj:ow n\]/V:e Ӽ UQo;xc[*^}iR7G/:H59u|n/>gje/Gtqt)ɯҭ7V^G ;:)zƾE {/[P4Ciklƿ]Ԗ9/3tzi',[G4B X,{bTZ + +n I.Oyߗ4dtKaaor۹Osl͢d? M)y3S}c E;䰽@ۊ3x{[:9/g P9е6q[n+:(VQgv]m< +|=:Fen'6#P&cOracWs=νkRw,j mp眵._g\XP6t-|Lȍ0lxyJ5}RmYYqRmqS +wg);VGw&|𙿈\sDkG Oh&`R +-0N=*y>uv0;lʠc ̽vf:ؤuN;k7lnv9؄ݼf6lV{r70q<`MK홓66mHjj5 +>~X4b3&2IѸv0l0'q;L!;-T_6Z.db59 Ngad]ŕ3_w噗ݬ7oE73w%n6o7l<y7ZF2s͆-9fSYf27;˗̬`awC|Qe@2W S͚ۤ3TF.QI켉̊$֕xA* Ko*v%AT9Y9 uʚHr~5H 'T<ОOKH0'8Ds6HfY9TT5nhgd +_ןNÜQuU&6  s ڎbULPQa:tS7iJD{^6uASQ?Él'e:Yf.vEwnqU}o7Bu94FiMA6%7IO'>Lf49٨Dv\7Ȧ&RnsZ/|J  +"i$y5 HY0$?*L,gT%OϷʕM]99YYٟٜgsso-^mYyY9wv^vcYmm՛YVSs{]֦ɟmengh綝moGԣu&cZY˲:ct˪k[#8nm)ld\$~s8IJ61z(;=!5 Xjc\؊,qZKQ%5AL&bPj~SSNtl(}591•/UJѫ q~"E$Wr21OoI⧏5tΚp[E|k-?ǘJ^ߊas(PEJaqgT-ddTkb-9t< UzcuJiL륞iYL{Ew%{-d͢z忀$,Z6 u &ֺ}kAԗJʿt}J_o5^Q&WR^OK\%1QJ_se Y0*J_,ڿZ/wEomߓORG-Y JJ'= 4ZR,צ;[kZv玺ֶ;S><az}V$IH+VJy+Yvފe++i{ǝ4 4lX\vz Bimn,Q-5}T]TfhDc9ի$FG?;ef3? [j붸66n( 8s)1u\̝≓ͭf j{bN9ziscaq`CYf}p9]HCw@j*uzӪUu2oye TS!U(\y|6>@TZHw9_@ 4lQ'|I_i n"W?y9?D^v~?Gzp]͈&QkIKD-沖ETzkT\?%>%[!GGI%W$ULE:OjZQN-{. ~c\I +*eŤ֓x墨*Uҡ=!?>WW?ᛊ[;~_xr$TlX@m:Pq_b tTԃ^YƲ ~e@{Ce#qD5ZضmNmu68E5Ojl^Z D?gYa6ֵf/L&G^c+^Id(ټpҚ(OI`5egT|~{C*vzn@k]c]u^ޞRZ6x 9m@umm07JYf{SZ +7VF{ohrߗ +4.s< fhH<1a nrb0ϙ[Tmk_(E[B-j!1n5"G c54!7ck + LաʣZFkDU๓RC]Pr1GS++$'ʖv Hc/*w|ꍾHuFjnkBy<< [sd+8N|$oJ'Wyp=ܰ#'gSI \bo/.zQ+0{sr=m5hv1ߢ!yke 1W[%sbC502QcTcҐܪ ݭސ\ZvcF)X]B:oH88xdӈ J}ESشWJ$~s5{ҤEZP} oxʵm.src/1Xr!yk 76oLЀJzi^WUuZov8{v:ڰCGpZ 0^$d=M;n^W]ɑn6Hxn1TՋ{?Xʵcg_ڰ bS946R`LT9y|Y]WhCK鶖"h\{EO픫Z";XWd-'~F\q5l#]9fR/~ȣJ(/75_|D~V[g[ʓOl̎?ԇ쐱ȟ@,A;f;$tW/d,Q;j4>W"ѷ`nMknٙBWY@/\?!CO`ߕoۙWT?;`?Xm_Ml?o=@VCJٽeҔw:m/ >%q&(|\IOt - ><$ˊKL >*q|O+AKA+-䫬-hH@^?#vYqw[A =A[y^lڂ$dLReW <ۂIm3$_b[|ϔ|Wq&wЂwv2lG=lg}ɫӆE,үU9Y$W#΋N+QYq~*?+ک?yBb44 !˙VQp9ԥ*J#N)PiT{4f pStkr {5|Jë5|ZӌY $<ڎJN=ᦆiq Wr\ս&5\?e pu%Y W`.o)IX_wpzJ. )pBl WVRrk~oED=4\kJR=4\ޚS{8)h~ B4So. Iû5|j5|Xo UG5q ]ÏkxOj\Z4z?jgioprW(%ixkxgh[piF)S×ix[Whx=Y*hJ /U^wix߭~hxwhG;5ܫ]n kn k8C /Q /^cF5|4|R7hii?~39?Q4\5S)C7M*4A 4<[ڭkx?%9 /p-JTjxӽ*}e?; j16,jne)Q~8"7i~Ʒ^wP,gɿ?O#ȿƿD5e_%O5~7__%"ɿ$M&M5{_HG 9S_ϒk;E%___koȿ3ɿۊox'xƧ߬ ?ׁw4&2B53_ȿ_N5~{ȿ{_D5~ _7k#_#a~k_ȿƷA5)ϒ_"ɿk|?_N5 o6 v#Q .f|5x]> #aإG!]݄ P|I^c^/}u8AdF5G"3|O?J}={.w]Dn^T]~ +]"FĘ~7-x!*N!n;#bp\\F{Tn{bT|EE,o,`tȭX䄽cAE{F25^6Hh{;-8M^lW` R}mj {Fޔ-gOw՞#{KWlWe~m7l/^ޔ=*/h{Y /h{4/wޔ|_SV{ ^~JN&?_Gp/h{Zu:yE;c{{|v7O<%@y&ZCzNzJd:tKȸ޹nzRUs)+9'J~v9MM(IIozm,pIgvw?n݃\v?nn7d69u*WIIo^B~|C^΢VyU4MYTyҫu[wrKvP02h$H'#JHF: MH+.@:Bg"mDZt H"t9ҙH@z)VӑDz9ҹHF+G:H"}i=mHt'Bڀt/қv#]tRA30#7"w B~nP~[1:RΟ bzv sJ9kv-s%Gʗuy2*ާlHk,Fɮ.a>pV\c:Jf^a>E IyhdgI .#ݖU5-{vk0jS5Z| nx}O˭s7֖.̃5gz =)ryv`tA;{Zߒ= +^֘>E60Bw s7@q:w@^{R ibݕ_{QzS?Tkfc^Gɔa G՘nP=b&6d(1ZvN">K&)Ϟ.u)zm{:A=J>&QvàXS1̶j 0Lv5w性+Jal}5>_Jȡqs0_;<6<0q ɞar2A>壐a20|K9/g_al`e7zg }8iXrs Zl5w>M+ ;|0bW[cd\ŸVW{zHgS(\֝ Υ @=x>A{Fz{{$wkĿkK jGjFo/7{G?däL;\t|XMu+xrM'i|F_Jv 1m@UR?KV?&tb=E|e& b`#VP|e@Cr-cեl炻ɍl={X6#O֋gggl ~ȗ$T%^-xE]~k3BYn*U3dHB\xvK_6c:ƻx^X bTXUL$d=q(D7(;ooeJcѾZ64?ukU/c]+j㛄Wb-lH@00l75v15Y*#Ųr޻NzǪ#.''/^# ҫiz;mak:=ָEbnzIPs[B%?'B>礷M/꓇Q~9z>gnr=WnzgҫwҫwKȭnzF|Z.wӋgHonz\Fz]Nz3y2w^$OFrx7=/Ws;M//Vs+vKJ~NzD^E(Ss;eыo+9u*%?^g _Us ^r@Io1P~^Io^t;7= 9FI!7 Y^b猓K7=1X +%?g7`K9⦗,?Iz޿C䛤?uӋ ^u7,hz 哤?Brhz7J~Nzg"J~Nznz"y7DSIM*oUsu~J~NzG3UX*9:3UX(y:]=L^*ůDIU7py%O'rBү^X)9:rJ~8R7P*9M/Q"R~Nz ÃލnzR 4nzLMz^M([H/}@ӻMH/}@'7= ~Al\rE*5H.EH{Dzr)#B;EH#-G(bnCW=:٣chD i-R]Dz9.s[G!G1 3bX[T AYZtİv_'̽;t̮Uӊa18R1ɣbI̕ڠK[cXWA0%L7Vr 4O۳WwLC:Ŏa-S1;1+ cu%xYwa%wZ1L u?-v}WŰ$wY1Ku Z>W-0UOl1oڊam :bX{fCn1cbu,wa ^Űv310IJst f`gЬ%~9d +T͙Fs;hNgV1KXY:u641 GX1,?*cXİ*H3ZV1˴1"İV15e21<31,/~8xgǰn.rʳx>_5;ZKlѱPU:vU +bgh0Psƚaܪ$4˾ck w?+kĽlՊ3:hxǓA.[y{vدd@.>7[gL=h:F+h6`;#8h^Q~*ZO^,J7h~yk:v5fk{%h^.#2eq%>g\~~nŕ3SڡQ#JEyoa15X?s!R`]!fNB۫&x҆l_,_m}|ncM6ld + :Yϊr.MBiLw(Oɿ}=O2_6ygYƌΫ͑3s9D,Q]ŅH4=]\^ /Fi,=Knz̏iz_璞:K{MO\(Ǔ:Kqjr%gܔ+~)W/w{ڦ+t7ꓷ?ufoNWdΠ3q~m4sϬryr\$G*ט'uKH=rNȕ̓ve#Rg 2\r:_Psg^P礷MOJ%?'߸酊d% %?'{ңw>WibYuxFw>I*"}]^ӽk|z._EN71LA,=CwfSgzWE 3.qKkIOg]/:KЛ*J<Л覇}/rM_"Qs+s ȟ*9 vKJ~Nz^7=^ICHއr=Q&EIoQ&(9Cm7h]N/HIoZGwH)wry&UgvWi*d:}M/Q!IOgM?B!.'enzأHXN]')M`kAӋk ٫q; *$PUA:틱sN\cGʘυ6اa'\4?Ί8ZmϨ؋ߧ* +K*f38hsL#Rw%pcʃfNw(-V4_| k򼦩}0}h8CUB>] P˅ØίC:`, +-(Ta ?Wxh]w0 j u +H|zBטQ6Jߌjm> xG6 I|p[ |G~x~ "HK#Cu:W?BC= +Wzeċ }K6|ti2: TQʙį|Le?rGlV,)╁i,iV>1qWS:@8MN5vcd%vGy>U~7~dy~Y'~ 'L|5f zg#=bh^|K28G| -;Q)ޠقwhc|euZeBy:CrW#ߊ|U\k|>׊ UPfMc^y<=>UfT3Qܝ3LDIJJyUjթQ=v;5Q~l \hS%0i7T_rߨ?v=,l˻Hk iiqe3D@.F{AmF@LZ:ѤlM\sfǣ-*,:0oD/BDvGt{uUⵕwS!/jfb\یo_E S`u߯`xP}yo_v7Lh;dŠmh8i5ST6eaKYZM @6eau߰YS! }2daSG8NL|eagv6Xߧz5 }`2|uA%h|eQv |zuD-=l@Ra%clO@Bi,U>EC2k^* d$rh'}2o UɎchXvV4[lKLoWcL%~õo 4_|/"7›'4Us-|jw¿ -Cwx<+vmi|`ϪyrMjB):{r |->`?_~~i|$3\ 5^:-Ob ' b"I{fU( {Zxx*OpBܴwg)˳Wt=6ף;,<@< WæO)<U _Dܟ'›'5|SA'Ot ?|m|}uR]ܯŠ,NA-| 4w +}i'4~O?A + Sr#i6pT5^4OEXm9j |Ϳ(Q6#kO,뻀2- |iZ>ڏ<#-B7_k?/Hˇh_ߘh8|HGW7OEGu~Oh2bO/~ͿjlG5~Kmϝb{Y6s'aI<'"gk|UqPxOqeA_  ExRf/ ]_pOUx',<@x?7|l7L>xBUϵ'ϴW5^tQo +Ҧ/]>BXG'4 o?>L<ԏ{,< O?n{*$}›'4:. @ܯW;G4S7ąG|?G 폮xTqlUڿ|E_?qmlWo''ia L.#7lί10L/F<ļg3f:qֿé{9eٳ̹dYwHu.9j٥ǺC|dOv]!y;Sܪ[/r(*ィP+[49Ͳ;h;8g#|6͆Gol=rbv}o +)BLg mąr??!6W]-8xђ (߉5fT]ouWg0A#Tc0lnYlqPa m/1h/x>Q xv;|6`9 _ w7yM[AwS}0(}E{T=ȑ|r~Dz1ߥ Ow,}쯿7]}VewuȻvڝ*>04mʇtVHi^hEkѶۤz(ڎ-xRag_@Ѧ)2狶$OA&Ge`,)#g +g܈7c|HTY|;0j)5(9׀2kTC^M AGWQ 7*|T|Gėo&?OYxCZڿzvSzܨ#G,>nW.>u;%qǶxG?oGg.9>ou?⏼lvTf]7]蓖_my_X89Y $ۿڿCw<}Ұ׎εY赃؂畮V}SH;;0xNbpՇ>TS⯣Rp,߀2/*i/?UX|yڱ\Ie[El@9^]u`{yRQ$Ɓ;^Ŀ<ؚt7~B YHc$kQ?02iHtxVɷPkOy߁ĸ>帮|=q[Yh@%|icúI|d +!l|_z >4m(dC^%;٠}ھQVzGYn-5Sƽ59y9%5ܼ] C޼L^u9w|Z1.F_~Qni +#  yOC]i2bD'9c~nj_(Gl,]zWNj0 v`*Wk?:R?0O5z!۶'\}+Q2yVɤ$JQòNt0K&q[}~靬¯u rD4>4JW + uW<MwRȾsN~C8nOMOEߍt86x+v_> 4?^R9>>CGR諰~+zQ^ ʁs~}ZM`/>Az#.)wX8_sNq1uʛElJ=ʡ¬9'VixfT։u!! =VXW޿.?%T?7{ϓ]J⻗Ǻs2|x \d0b\yXcy @4kty .\203Yy dd1&Cosby3%ۈLU]}ZR|P >7UY9 {_4^U!̱;灿yyX79#8_Qlꯗ[!ZX7ιgYE_Q9Q|4=E QOYt[ +1y56.l3@.Q1:jb.9L|&SBL]mvߣȰ7NQ.\`9.oD9sӭX"N^>$W\ȹr$֯IMgX|qrÄK0ٷ[YFV (wG~r}le8V(ܯoq,M%]m|Xoyn0sGVﮆ +o7 Eǯj<"dWvCQ224\ZP& +_C*>:#k\Ȑ6 )u-W3sެ-fowMM{ +([򷭳;uwBm1u 6mMs`mH6[}idymLƾ=j(ٯHj_OXLy>SHwŧsnLjpa`_r]XW3xǝC@ua +oШO_`l(_+:}yг;WcZ)?WWoacIedj;0iD_s_9j߳BH}͢"~0q|1%'G|mu8(Bs[0C,ߕZ9_my]L/riX{2JbMIy=zm nBIVu%og,_ga Ahxh1o>wr-Jk>{x@PGſ6[t,Q}{}"ݵ Ա7З+"C":3GӴ2#2[}~HjΕhO1'o@&`¶J}-3Se; ƚ؏Ȃ?>O9i_)}:_:qF%p1{|L?<d-QBSY Gc|gooT(*7W{|Vc:u/ĔP' a'3ƈek{:~ɲj|G;7ǿl_{t|*~7YenBhgn:}eYwlg:7RR;og]>g[? אaK?"VLge`o4%dMezYc3}l6aKFe@>aKzfe{@2osO?{`dڕ%N$ dssA+ʹ=qn8\qUۚ;fϵD=Xͬy?_s]?Ow{<ߙG9w<6qPV͏+(xoTf~P'+9]7gm +GfrزtYzr<*H sCt+W ;yc3~aO?k?Ϧ=q^j< G[v;y0 ;3wUfƮ&9[B;:΋ oͽTj*{ޡƺZ< <={WL=ϧf@>iy{LoyIz䘇q 4w:tmٺ}GO'o;"@=͋G95==8ъMԮnXLY.y^&N]O%={Sq#NAOZOkirRZOLOK>]Oå.Y}ydpȻ~(8xL6r=ǿmdWL\`yΗ:1(#e}? W[RYg:rnZ;_։)Wp=z~ mVosxx NMЙm*ݽl6yI}?~UV;8$NN53`ӏݛrһl{{O7o[;Wzwcyzv6^?D[e].a^sjv[ tދJy + ')X>kn"WN+O+G|?k3=ofͯGͯY˘_̯ .)k~/"_~ީ\?㩶RLE iEw>+&Igy%yWH +9\Wm7*ys!mkuЊωcqҁ e;%:Tgesrٽ]뛝N3}FK{^8/9?bJƥg ZT[ eij](NE81y +~>)N$؟N?։GnBbu:AňmE^jBZ/_/BRuĹ7|?CYZֳі/5YMOe){ޠGOiϣড়6(o)M+) +Ɓ?9ydh`F?(A9YcOmN>hIc\ZD'W:gzdx(OG̾?gO RV~C[o9jhoL;COo'i7>Xø~}mP)}~)e3G}< 3?Rg~}T#SNV.qLϙ=K;Ѿ*\wx~Ƴ$oTJ6Owo#GL 9Q*ן)zdu>ge˰wxDZ<>xjy+3 [r\6 Y֧|=l(h( _$~VT*nі^+^++!ۗg\ǕE}z96C sסrb}z>^~#Cym˅Oч&w#iZ6 +>Coo8~ص9b㠽K_"~hG_Nab۷4~vSi>^g[s]m;d6J$ڣ){i5}rvѵXWwuypr}:-mOD)[ߺxk9~oIBkߚH}ռ;SUnu}?{C?|}Zox϶dR۳-?l:-T˷ߊPnom9Uԫ}r*53٧OV-5/O[#N{,:}*q?1?8!׋ +*d}+Woѱbo&T!5kz5 ʅWW/;izN)☇z1b+N}(rVB1@hWҡV:JiuVzbTZ^ar< `y7Oo:h+~CdƖ̾ڏIyW^TnK>BKa\oGx#)/S{Rmϗ}Ǟ{5&5&pO:&?U7;nzL~h%?+yoyo;~-oޞwJxվ߬{:ny@r{xg8]17߰|]eBcγ_U e-7v~Otzg+Tl 1]ƲHGZҽ=WhcB}>-+9X|'Z= b~%TA m7z Of>KewkK;l};c^%ʼc< dcAߒ c޲nG: [׆w<`L /[5h޽H2_ڷy\O-.c*_޷x HhЭA#fHZZ~s->o.|/ҫ[Y3#|oykC煯;!a>ZJյyMY })uU YcV*> )x"gnWmzw5>s}QsKA>Gheۡ +ftK?t-͵9(*$0GuoqAI6{uo{9~AC1f͗XjӁ|KU@@Oa5)v=/2w'b>OC߆S^{qڏ)1LͪW2TJǪD)y8,3 LKgQHS6ːe+z/j9/oy2^eqE徉r sXwoWmg|l;8Pz~ns-?/:3Tw<ɋ1,ްgL'MP+ s,:<]z]7*;RNww&t,|MM~Y۬{,/ljl^vx"t{ڥI~7~(ʖ(+,|q/Vz>Í 3z;ǹV!j]T,_|KxXw<5x9c<=xjGNz<@aq/^\g/czb;} u,N_hX*^˟g/H}t>OgD'xǚm~7ܼ%=ݔ~cm+w=U<jo] ̇ AWay\i{}~x?IҶAq>纾<{`VBxƇ Ez&`& oڦ<%-S}UvƧy'9C/ee ]>G}'c#}x-"Xy'%DЍ59_߀nLo\lj.lFQsO߀Xz\,7YeQss#c-Iʈɞwy<\ھl4>2-gwsfg߿wDHLgRn8Tj3N.+OYNgʿCS>M~9/y?ٖ9踏G'2gŔYf͓{2j3Fiٞ~y¼|\~Rݕ ]g*g;M^ُ#Jrh:E94Yrh$9\jˁ,G`9,9E9SrkqF6h^W`owt&3PanSRz/ϩSVxb'{y xG?yq4q8qËZ>8 {vD{/S}{==oH=ߏbGJEi +Efaȍ墭< 乵0>r%'CݓcB^Y~ryzz. ^lĚ ~o zoP\`@ct؜`_K!l֖MyK} |Tչ0 Ry? >J[-W3dLL p &@ <[bkbwGj8Ǟ= ]~^[ZZk?^ji%Wkq>3SŸ o5"?3ב]s˘[+9nE]MY<|{Z\s➂\>j7^1W2\< mt>kÃuv\@{.vylO9?r*߻ q 5v|Fk\9Yi ګ+L2_ wO WydsN58ݍ~w}U} }ː6c-E>@c#uCl9#O ʋNf(LxE{wsZ=%߆|^A6mP1gӻt˿k"/nA>vzFtV'a$  9fߚ|WS7ӑ#bēyXϟ#>0pƇćyݓ/Fvm\[`:^> SݸXg;e,t C<.a>̟#bgqF|}42OUڙ0RO2IGTR^~7zwV1ݭ35>)y>o-yHkSZq~[^.vSGk\q)7'!ZYx,ֱJy\uyw5alr;nط[FޅKsr~/}Ɲï_`n8==zyN/6*:Mii6=~ cYޡ!p-xd,lt`VmNm͎5v[ignƮ7k(~ygϓB63N`ukPKieu/SqLE3e~Ky̺#NWp6|8K|.1y]WiIyJ_KuL)^"u7t%gQ.۬Y͹7Þ/G7o"75fFvM/<:8dhFFmOjmOk,Sn׆?C7bgs͟ +ouFLZ9wS.=^qF,c}c'dLw0hq=:~9jc«-S1U?~ ceM1q]7sBOyMusІkht:!Jʈ0e9 SGg1^獣Or|M=˖7%_\'*a>=F縑cCIݧ.XzྃK3yt^ԴQ-mV%ю72eqk`ί*v1@cW~n75Xx: c{>=w۲¾˽*8h10߂\"^M]_e|a_`͜x 'X0?(bG7qCpP1V~GYjF~P>e.>+޹}=-1j 3xoZrC4oʛϪp_;6:Z-G>R{h۪pywX}ݺ\ICvqX墨5#Q*ƗV;hmV#y|oYp]Hsj۸WGs1ga9/mc{U=ǢgVA8B> (<ׇ|| #{u v.rpkڑ폯;k=n:]s6*FW_~739pO߿B|vӋ֭'9_w1%ϩ <Sܟz;ypk[z.;hԸ{rN~HXAѫ/'ۚny\'y6twa^`~kQ`녜8ZlWmS}QzSFNM_ |ltzᛜSw?xq=֤Yʞ #R!K~#v3Fg~p9=[׭1N7yd rY:|ý'|p9s:*ragzzOFoc3GH? n-#P"sW}N[0z\bof]ڨ3mg{ywJﳞ/s?-Y/!هsr}d߂>_AKcϮ٥#mI3\};cߎqߎfݎvیg; >ȃܻ{Iݑg&guxOE6r񆈳1~xXb\g\ydK޻5si9/S< +umhxgC;E Mn+'"n!uS߰>=1;^8>vyU~;|n؅c;/wR>[#UI9qKs{I~sgzpI?nm|oaOءlv9H?/:dg臻)]&Ps\~7&}!I-zalgH|gY{&krliCgsϝMAv;ϼv<їؖU^y?7#ZOw ߗ~ߡCàGH,tyjsgɼJ%uMyyWm!8}'YWc@>A8=9@˻ȫ^D^iyV"%I]pOD8 {v<1tmF6qf&s9<(+vƭ_X. q~ k3|Cifԝ+yB^ϟ9)%|v҆[]}sN3R"[WvΉ:=9bƷ_469QlId{dޅkË<_ouucE/=|tΚe>|r1'c k`'R%rEo~3j] {Q1~e_"6hs +N>tV7.o{C`+]79߼t! +bY'w'3?^[4݇u:=׹uv }@ny#)C\߯[X}9:3s|\o]?9l1+S>ߑ>'cꀾxN2ch煽ަ= }]Sk_/o#us 8ޱ[ +-3k!R8;zd!u$k"oPT}~L]'͚\9kuM^^BOw'>G!P?WU[*f*B?=#!H4ϬK7T;ȟ:luL?UïE3qC{c|WCdaat[Q}|?I׬ + QO&"04/]+DQ yBdnEʸ Db"xIдbdmS!/ A7,./VVvO8VqD +zS*Vzh{Efvo%9"Q_Yр0ǂ?Dj8~YJߢ%JiR!GFA7Ԅ|rJѐ_pmDu;T{d(.g<ဌUj(}8CDyC0 ~L)5Ɇh*LK:  +: =qBLѾxެINk!ZGut!/x1D/vU^3)8%fN$fy_("#$`Esըʁ+&IUҟz;YBEb{B0"|~_O 2. +GΡ/#(/;T)GL|+ur{<b)3,*pcO cT$M-7ifقE3}phl6݇ -饥g*&&L`BY$L.Azӯw&bpȏ y 2{TZZ/+Yՙ7(6N,7X`HM3g,!L;U*LV.ȔmBK/M^(}ܖl>݀>1}(gfhh[E$Y?m5E$oH/5h'qʥ1*r6on$XR*2+L$Dja896c4%2G Y5;ScJUdHW|PҋX$(r䔫_Cl?E7̈́MyFX^l^]KR=ѿTzJ5W.~0_36pDkTyꐷ[X^Y\1Yea9 {M$H7vhkZIT\D7IëgI&VYx?!H+'Q,Mrl甖Hu?t6sƌRcz1bg‰k̬v=⦘YkgX %hX$AS3-VI;+_KgWcoN)aZYhd=vV4~ VI[D8(T F1S*R|ԫM_&Uje0 ʉ]mHؔ= |A r/S2`@,֐U^ +hP$ͽͿ_l{KG_kPv ȫ7LXJc)+kd] :Y]) /A$Ų6K"s[/._dC%F/7̑OS-)-uf)VPTҜ<4Pzn[@҅71E*QWaq{Z˹^ >y &Zx#QG{̄31Noof5Ǔ:o_!Sղ>+0&~qz!-Afը :ڢrEAѡiY_^EWóEgH::DN|M)CUZSC:[ LI( օ=7552jߐ:Ǧrƈi'b|2Vrv啻1qFL?eb&NU~X.L]dvyMĔD8dc}g3-P%2~ƢdC5ĆTQZ/TfC0^$1zaj:VN"YW+)侀=(SP #{Ri$K.ґR`f +,.X& _n!5?z]0eov2n5 P!YZ >EF|sHEcH,X C?|MYp?!ϻ,)NصRQWUYiכ"yI530Mt8Zsɛ@I 5ʑ(S-^$]Nл|Y-trH5O:F6:$-tx 0!JB,GD c +4Eh/7LMO/u~KΠ<J;t DC+T +0}~6<1O?]!feK/ef;3X4>IMDԍmd  +!j02Hb JrcQ?-c&q |N6Uo7ByC4rQDfpn4E/eM.E߈9JB~@ݏyE.){ՏΗDؙ`5usQexp`{e|jeu x ![bYQ=O.z6@wekYO]~,,oȲO6)X C1JjV> `įGmF=x psQ((f,"h x7``1: 3x+0, p,hB?W?K`|@; /e]zeUw +ȇ,G~qyM_U<~~=]4|ԉzps$ +rK zx(p } +>!ek#raW2k=|z]_nVe^ +zýsvxZ܋~ۃY2*Njw~3nHczjnHIPy%܃xQ6^*Q&:Uo -Qz4nq{ƭDTB'$N is1$^J<|4yg=p&8?A+pˁP:nk-J-)V/|%-ZmtTt "esӀ9_6SrZ=ݛ\&se{: rmss (]Lao)nw[!b\XVW VWͱ%GÃ)'--#%lP;Dx,J(Rǁ5xفy]h+?mu!mm%uh˰m ·ߚ'F؀[rj!p]!m+ڱUܲպUqkStVWז6ͮMm]{s~L3Ox9D=({~eўuk\3,N bCyq~w>IWEݡ*.mh-mFpb }t{b=,fҼÅC?퟼?ދ&QU Qr0ݽ;scv%Z%S%5?^!1ƅq@-ߺ:ЯꝳV m'dbllHGyi!5kIr +|- ^|YaR9XᅀV~_oqK>)>'m*oUkC>?:_rO"@"6l4h3up£G +r]eL",B9^|N}w/qlF|ƒÑ;L3?g9s"%9sT )0%e({*~;#]v_^?Iƀ?*f` +kɫ+(+({{e{= qU 2>F s3Mf|WC.hʽ>G*k= weAS}| @chO 5yyyyGt<}oEbsx`%C?n{[Y Sތ>]xpn~ +6ܻ_U~xGr'4KN\>T=is (lX=XeW9xF>L{OĿLuϞ6ZfC,cZ({ܫ?6:âOy,Mw1tgx{_RRuŁCͳV].Lre4 kOZg0nb[-}Gaҟo;Gl ̃_~{^=|eyXpߟϩN\UCZă^!zC)ig ߙQC(8?>}]XlϣN0~nN Ê{|Bk153q#kX9U^Q,?8#C=: pc)5ϣ)E1=tZ.{8.K51h*|uM(_!n߻i^ws Pm料y۹z7Ń9ߛ8.kK̻շw?5 T߇M|B2.e 3BFY["pqג/y[.{f] Bv&4]z VozYt ++q3]khرX-ڟfxUđ9,~Gt_ڰ[5޾4#~w ڋseoG]ޥɹV>N2nP[j!UeͤIAKq9R uIY0'&lh _0(sb> vwЛ+BUKV +q^ D瀲2R]@tP [0䘗6`i]!9qy%,撑\@5e3J"NW&trIW@BW\:rDc3}b&Wp2plM*މ ~h6{LU/gCxNe)kO; ɴVRUBrvCZ:%K^ X4j"3(Ԝ/ JE&cIW-dtl넴\mAy[/YU }bC ZvA:-iH:J . L\RrwLoɴPr9;XU4\Y 3et8 4O[,%NDz{|:eҨmV2a01+RɢWiwY`-2nNCcdByGu3=^"0G# k{y[#" JXxyy4+oy>4?c?i#/O,T+>:k(_y9 v=|oKQ.D nC]Cސoy|$ww#ot-/7D@tE3Dܯ X Fl IBp_`ry/VOr)Jѡn^ix**ɔyHeH~.Wc"/ȏ -󽞮ZLOHTiaR>k٣w=ҡ-AiY^(EӪeYY,##HiboD|~}qqk3a9cOjs-d* F4RYn1oelHo`쿛;8L' +=~O5R0Jq4D*A/St$kW_#mU 1H^K?WCX)#-/%)dxv@x1j;^Z U œ/jWY1v>R# ;)>u-+wv42r!nSI -싗 eom$OmaPxo2 +Q;xKa07ʵ#怎68ϤJ6@͒t䷦b ֆm*֓cLÖĚfj'>Pvq2AUvxD x,0ԓI^t-`G jkH"5k _hO]O&U舽߳ZJE/FS*ȝH#@셒A/T K9]٤_ڻ4`TQsjqL6kR}6ڟʙiA T@ K|3?TM7 ¾mɃ&E$^hT@[ΖvibS x͛lR;75P(<$ͱ&ΉLI|.$S$_>0T}e{zWtJ!?M)%H]ڬ0Ⴝf%R)) vmrEv",f[ VEiqMG6|]@G v o¿B/YoYƆPe$Z Yܪ1Vys+Vm_$2-FaoiNMBPΝN]c?w4ɺ`gR3N{ϾclVV[KuaaacC \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh new file mode 100644 index 0000000..8468c5a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh @@ -0,0 +1,318 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +QUIET="y" + +while true +do + case $1 in + --quiet) + QUIET="y" + shift + ;; + --install-path=*) + INSTALL_PATH=$(echo $1 | cut -d"=" -f2-) + INSTALL_PATH=${INSTALL_PATH%*/} + shift + ;; + --*) + shift + ;; + *) + break + ;; + esac +done + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [ -n "${INSTALL_PATH}" ]; then + if [[ ! "${INSTALL_PATH}" = /* ]]; then + log "[ERROR] use absolute path for --install-path argument" + exit 1 + fi + if [ ! -d ${INSTALL_PATH} ]; then + mkdir ${INSTALL_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${INSTALL_PATH} failed" + exit 1 + fi + fi + targetdir=${INSTALL_PATH} +elif [ -n "${ASCEND_CUSTOM_OPP_PATH}" ]; then + if [ ! -d ${ASCEND_CUSTOM_OPP_PATH} ]; then + mkdir -p ${ASCEND_CUSTOM_OPP_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${ASCEND_CUSTOM_OPP_PATH} failed" + fi + fi + targetdir=${ASCEND_CUSTOM_OPP_PATH} +else + if [ "x${ASCEND_OPP_PATH}" == "x" ]; then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 + fi + targetdir="${ASCEND_OPP_PATH}" +fi + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + has_same_file=-1 + for file_a in ${sourcedir}/$vendordir/$1/*; do + file_b=${file_a##*/}; + if [ "ls ${targetdir}/$vendordir/$1" = "" ]; then + log "[INFO] ${targetdir}/$vendordir/$1 is empty !!" + return 1 + fi + grep -q $file_b <<<`ls ${targetdir}/$vendordir/$1`; + if [[ $? -eq 0 ]]; then + echo -n "${file_b} " + has_same_file=0 + fi + done + if [ 0 -eq $has_same_file ]; then + if test $QUIET = "n"; then + echo "[INFO]: has old version in ${targetdir}/$vendordir/$1, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + + while true + do + read orn + if [ "$orn" = n ]; then + return 0 + elif [ "$orn" = m ]; then + break; + elif [ "$0rn" = r ]; then + [ -n "${targetdir}/$vendordir/$1/" ] && rm -rf "${targetdir}/$vendordir/$1"/* + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace or merge old ops $1 files .g....." + fi + + log "copy new ops $1 files ......" + if [ -d ${targetdir}/$vendordir/$1/ ]; then + chmod -R +w "$targetdir/$vendordir/$1/" >/dev/null 2>&1 + fi + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} +upgrade_proto() +{ + if [ ! -f ${sourcedir}/$vendordir/custom.proto ]; then + log "[INFO] no need to upgrade custom.proto files" + return 0 + fi + if [ ! -d ${targetdir}/$vendordir/framework/caffe ];then + log "[INFO] create ${targetdir}/$vendordir/framework/caffe." + mkdir -p ${targetdir}/$vendordir/framework/caffe + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/framework/caffe failed" + return 1 + fi + else + if [ -f ${targetdir}/$vendordir/framework/caffe/custom.proto ]; then + # 有老版本,判断是否要覆盖式安装 + if test $QUIET = "n"; then + echo "[INFO] ${targetdir}/$vendordir/framework/caffe has old version"\ + "custom.proto file. Do you want to replace? [y/n] " + + while true + do + read yn + if [ "$yn" = n ]; then + return 0 + elif [ "$yn" = y ]; then + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace old caffe.proto files ......" + fi + chmod -R +w "$targetdir/$vendordir/framework/caffe/" >/dev/null 2>&1 + cp -rf ${sourcedir}/$vendordir/custom.proto ${targetdir}/$vendordir/framework/caffe/ + if [ $? -ne 0 ];then + log "[ERROR] copy new custom.proto failed" + return 1 + fi + log "[INFO] copy custom.proto success" + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +delete_optiling_file() +{ + if [ ! -d ${targetdir}/vendors ];then + log "[INFO] $1 not exist, no need to uninstall" + return 0 + fi + sys_info=$(uname -m) + if [ ! -d ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/lib/linux/${sys_info} ];then + rm -rf ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/liboptiling.so + fi + return 0 +} + +log "[INFO] copy uninstall sh success" + +if [ ! -d ${targetdir}/vendors ];then + log "[INFO] create ${targetdir}/vendors." + mkdir -p ${targetdir}/vendors + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/vendors failed" + return 1 + fi +fi +chmod u+w ${targetdir}/vendors + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +delete_optiling_file op_impl +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +upgrade_proto +if [ $? -ne 0 ];then + exit 1 +fi + +# set the set_env.bash +if [ -n "${INSTALL_PATH}" ] && [ -d ${INSTALL_PATH} ]; then + _ASCEND_CUSTOM_OPP_PATH=${targetdir}/${vendordir} + bin_path="${_ASCEND_CUSTOM_OPP_PATH}/bin" + set_env_variable="#!/bin/bash\nexport ASCEND_CUSTOM_OPP_PATH=${_ASCEND_CUSTOM_OPP_PATH}:\${ASCEND_CUSTOM_OPP_PATH}" + if [ ! -d ${bin_path} ]; then + mkdir -p ${bin_path} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${bin_path} failed" + exit 1 + fi + fi + echo -e ${set_env_variable} > ${bin_path}/set_env.bash + if [ $? -ne 0 ]; then + log "[ERROR] write ASCEND_CUSTOM_OPP_PATH to set_env.bash failed" + exit 1 + else + log "[INFO] using requirements: when custom module install finished or before you run the custom module, \ + execute the command [ source ${bin_path}/set_env.bash ] to set the environment path" + fi +else + config_file=${targetdir}/vendors/config.ini + if [ ! -f ${config_file} ]; then + touch ${config_file} + chmod 640 ${config_file} + echo "load_priority=$vendor_name" > ${config_file} + if [ $? -ne 0 ];then + echo "echo load_priority failed" + exit 1 + fi + else + found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" + found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') + vendor=$(echo $found_vendor | tr -s ' ' ',') + if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" + fi + fi +fi + +chmod u-w ${targetdir}/vendors + +if [ -d ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/ ]; then + chmod -R 440 ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/* >/dev/null 2>&1 +fi +if [ -f ${targetdir}/ascend_install.info ]; then + chmod -R 440 ${targetdir}/ascend_install.info +fi +if [ -f ${targetdir}/scene.info ]; then + chmod -R 440 ${targetdir}/scene.info +fi +if [ -f ${targetdir}/version.info ]; then + chmod -R 440 ${targetdir}/version.info +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info new file mode 100644 index 0000000..0ec7257 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info @@ -0,0 +1 @@ +custom_opp_compiler_version=7.3.T10.0.B528 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh new file mode 100644 index 0000000..e091734 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh @@ -0,0 +1,151 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [[ "x${ASCEND_OPP_PATH}" == "x" ]];then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 +fi + +targetdir=${ASCEND_OPP_PATH} + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + vendor_installed_dir=$(ls "$targetdir/vendors" 2> /dev/null) + for i in $vendor_installed_dir;do + vendor_installed_file=$(ls "$vendor_installed_dir/$vendor_name/$i" 2> /dev/null) + if [ "$i" = "$vendor_name" ] && [ "$vendor_installed_file" != "" ]; then + echo "[INFO]: $vendor_name custom opp package has been installed on the path $vendor_installed_dir, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + fi + while true + do + read mrn + if [ "$mrn" = m ]; then + break + elif [ "$mrn" = r ]; then + [ -n "$vendor_installed_file"] && rm -rf "$vendor_installed_file" + break + elif [ "$mrn" = n ]; then + return 0 + else + echo "[WARNING]: Input error, please input m or r or n to choose!" + fi + done + done + log "[INFO] replace old ops $1 files ......" + fi + + log "copy new ops $1 files ......" + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +log "[INFO] copy uninstall sh success" + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +config_file=${targetdir}/vendors/config.ini +found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" +found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') +vendor=$(echo $found_vendor | tr -s ' ' ',') +if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" +fi + +changemode() +{ + if [ -d ${targetdir} ];then + chmod -R 550 ${targetdir}>/dev/null 2>&1 + fi + + return 0 +} +echo "[ops_custom]changemode..." +#changemode +if [ $? -ne 0 ];then + exit 1 +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp new file mode 100644 index 0000000..b6088c2 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp @@ -0,0 +1,199 @@ +#include +#include "graph/types.h" +#include "aclnn_add_custom.h" + +namespace { +typedef struct { + uint32_t id; + const char *funcName; + bool hasReg; +} NnopbaseDfxId; +typedef struct { + ge::DataType dtype; + ge::Format format; +} TensorDesc; +typedef struct { + TensorDesc *inputsDesc; + size_t inputsNum; + TensorDesc *outputsDesc; + size_t outputsNum; +} SupportInfo; +typedef struct { + SupportInfo *supportInfo; + size_t num; +} OpSocSupportInfo; +typedef struct { + OpSocSupportInfo *socSupportInfo; + size_t num; +} OpSupportList; +enum SocType { + SOC_VERSION_ASCEND910A = 1, + SOC_VERSION_ASCEND910B, + SOC_VERSION_ASCEND910C, + SOC_VERSION_ASCEND910D, + SOC_VERSION_ASCEND310P, + SOC_VERSION_ASCEND310B, + SOC_VERSION_BS9SX1A, + SOC_VERSION_MC61AM21A, + SOC_VERSION_ASCEND610Lite +}; +enum NnopbaseAttrDtype { + kNnopbaseBool = 0U, + kNnopbaseFloat, + kNnopbaseInt, + kNnopbaseString, + kNnopbaseAttrEnd +}; +uint32_t socSupportList[] = {SOC_VERSION_ASCEND310B,SOC_VERSION_ASCEND310P,SOC_VERSION_ASCEND910A,SOC_VERSION_ASCEND910B}; +uint32_t socSupportListLen = 4; + +TensorDesc inputDesc0_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc0_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list0_0 = {inputDesc0_0, 2, outputDesc0_0, 1}; +SupportInfo supportInfo0[1] = {list0_0}; +OpSocSupportInfo socSupportInfo0= {supportInfo0, 1}; + +TensorDesc inputDesc1_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc1_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list1_0 = {inputDesc1_0, 2, outputDesc1_0, 1}; +SupportInfo supportInfo1[1] = {list1_0}; +OpSocSupportInfo socSupportInfo1= {supportInfo1, 1}; + +TensorDesc inputDesc2_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc2_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list2_0 = {inputDesc2_0, 2, outputDesc2_0, 1}; +SupportInfo supportInfo2[1] = {list2_0}; +OpSocSupportInfo socSupportInfo2= {supportInfo2, 1}; + +TensorDesc inputDesc3_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc3_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list3_0 = {inputDesc3_0, 2, outputDesc3_0, 1}; +SupportInfo supportInfo3[1] = {list3_0}; +OpSocSupportInfo socSupportInfo3= {supportInfo3, 1}; + +OpSocSupportInfo opSocSupportList[4] = {socSupportInfo0, socSupportInfo1, socSupportInfo2, socSupportInfo3}; +OpSupportList supportList = {opSocSupportList, 4}; + +[[maybe_unused]] uint32_t NNOPBASE_AddCustom = 0U; +} // namespace + +extern void NnopbaseOpLogE(const aclnnStatus code, const char *const expr); + +#ifdef __cplusplus +extern "C" { +#endif + +extern aclnnStatus NnopbaseCreateExecutorSpace(void **space); +extern void *NnopbaseGetExecutor(void *space, const char *opType, char *inputsDesc, uint32_t inputNum, + char *outputsDesc, uint32_t outputNum, char *attrsDesc, uint32_t attrsNum); +extern aclnnStatus NnopbaseAddInput(void *executor, const aclTensor *tensor, const uint32_t index); +extern aclnnStatus NnopbaseAddIgnoreContinuesInput(void *executor, + const aclTensor *tensor, const uint32_t index); +extern aclnnStatus NnopbaseAddIntArrayInput(void *executor, const aclIntArray *array, const uint32_t index); +extern aclnnStatus NnopbaseAddBoolArrayInput(void *executor, const aclBoolArray *array, const uint32_t index); +extern aclnnStatus NnopbaseAddFloatArrayInput(void *executor, const aclFloatArray *array, const uint32_t index); +extern aclnnStatus NnopbaseAddOutput(void *executor, const aclTensor *tensor, const uint32_t index); +extern aclnnStatus NnopbaseAddDynamicInput(void *executor, const aclTensorList *tensor_list, const uint32_t index); +extern aclnnStatus NnopbaseAddDynamicOutput(void *executor, const aclTensorList *tensor_list, const uint32_t index); +extern aclnnStatus NnopbaseAddAttrWithDtype(void *executor, void *attrAddr, size_t attrLen, const size_t index, const NnopbaseAttrDtype dtype); +extern aclnnStatus NnopbaseAddIntArrayAttr(void *executor, const aclIntArray* array, const size_t index); +extern aclnnStatus NnopbaseAddFloatArrayAttr(void *executor, const aclFloatArray* array, const size_t index); +extern aclnnStatus NnopbaseAddBoolArrayAttr(void *executor, const aclBoolArray* array, const size_t index); +extern aclnnStatus NnopbaseAddArrayAttrWithDtype(void *executor, void *array, const size_t len, const size_t elementSize, const size_t index, const NnopbaseAttrDtype dtype); +extern uint64_t NnopbaseMsprofSysTime(); +extern aclnnStatus NnopbaseAddTilingId(void *executor, NnopbaseDfxId *tilingId); +extern void NnopbaseReportApiInfo(const uint64_t beginTime, NnopbaseDfxId &dfxId); +extern aclnnStatus NnopbaseRunForWorkspace(void *executor, uint64_t *workspaceLen); +extern aclnnStatus NnopbaseRunWithWorkspace(void *executor, aclrtStream stream, void *workspace, uint64_t workspaceSize); +extern aclnnStatus NnopbaseAddSupportList(void *executor, OpSupportList *list, uint32_t *socSupportList, size_t socSupportListLen); +extern aclnnStatus NnopbaseAddScalarInput(void *executor, const aclScalar *scalar, const uint32_t index, const int32_t srcIndex, const ge::DataType dtype); +extern aclnnStatus NnopbaseAddScalarListInput(void *executor, const aclScalarList *scalarList, const uint32_t index, const int32_t srcIndex, const ge::DataType dtype); +extern void NnopbaseAddOpTypeId(void *executor, const uint32_t opTypeId); + +#define ACLNN_SUCCESS 0 +#define ACLNN_ERR_PARAM_NULLPTR 161001 + +#define NNOPBASE_ASSERT_OK_RETVAL(v) \ + do { \ + const aclnnStatus _chk_stutus = (v); \ + if (_chk_stutus != ACLNN_SUCCESS) { \ + NnopbaseOpLogE(_chk_stutus, #v); \ + return _chk_stutus; \ + } \ + } while (false) + +#define NNOPBASE_ASSERT_NOTNULL_RETVAL(v) \ + do { \ + if ((v) == nullptr) { \ + NnopbaseOpLogE(ACLNN_ERR_PARAM_NULLPTR, #v " != nullptr"); \ + return ACLNN_ERR_PARAM_NULLPTR; \ + } \ + } while (false) + +aclnnStatus aclnnAddCustomGetWorkspaceSize( + const aclTensor *x, + const aclTensor *y, + const aclTensor *out, + uint64_t *workspaceSize, + aclOpExecutor **executor) +{ + uint64_t timeStamp = NnopbaseMsprofSysTime(); + static NnopbaseDfxId dfxId = {0x60000, __func__, false}; + static NnopbaseDfxId tilingId = {0x60000, "aclnnAddCustomTiling", false}; + void *nnopExecutor; + static void *executorSpace = NULL; + const char *opType = "AddCustom"; + char inputDesc[] = {1, 1}; + char outputDesc[] = {1}; + char attrDesc[] = {}; + + NNOPBASE_ASSERT_NOTNULL_RETVAL(x); + NNOPBASE_ASSERT_NOTNULL_RETVAL(y); + NNOPBASE_ASSERT_NOTNULL_RETVAL(out); + + if (!executorSpace) { + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseCreateExecutorSpace(&executorSpace)); + } + nnopExecutor = NnopbaseGetExecutor(executorSpace, opType, inputDesc, sizeof(inputDesc) / sizeof(char), outputDesc, + sizeof(outputDesc) / sizeof(char), attrDesc, sizeof(attrDesc) / sizeof(char)); + NNOPBASE_ASSERT_NOTNULL_RETVAL(nnopExecutor); + NNOPBASE_ASSERT_NOTNULL_RETVAL(executor); + *executor = reinterpret_cast(nnopExecutor); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddTilingId(*executor, &tilingId)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddInput(*executor, x, 0)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddInput(*executor, y, 1)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddOutput(*executor, out, 0)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddSupportList(*executor, &supportList, socSupportList, socSupportListLen)); + aclnnStatus ret = NnopbaseRunForWorkspace(*executor, workspaceSize); + NnopbaseReportApiInfo(timeStamp, dfxId); + return ret; +} + +aclnnStatus aclnnAddCustom( + void *workspace, + uint64_t workspaceSize, + aclOpExecutor *executor, + aclrtStream stream) +{ + uint64_t timeStamp = NnopbaseMsprofSysTime(); + static NnopbaseDfxId dfxId = {0x60000, __func__, false}; + aclnnStatus ret = NnopbaseRunWithWorkspace(executor, stream, workspace, workspaceSize); + NnopbaseReportApiInfo(timeStamp, dfxId); + return ret; +} + +#ifdef __cplusplus +} +#endif diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.h similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h rename to Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.h diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310b-ops-info.ini b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310b-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310b-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310p-ops-info.ini b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310p-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend310p-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910-ops-info.ini b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910b-ops-info.ini b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910b-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/autogen/aic-ascend910b-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/custom_compile_options.ini b/Increase_Bedore_pipe/Is_increase/build_out/autogen/custom_compile_options.ini new file mode 100644 index 0000000..e69de29 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/libascend_all_ops.so b/Increase_Bedore_pipe/Is_increase/build_out/autogen/libascend_all_ops.so new file mode 100644 index 0000000000000000000000000000000000000000..e57397c8f3a7319b7c1b8fd118223add22033dc8 GIT binary patch literal 988080 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%0D6XWrsTI6 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

>;3Eo;c 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%0Dgo6{xMBofnlt5U{Qm>BRJckcymzwp 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%0AY(4E>NI!)wr90bcXYa>gzht?(rB}h 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 NOiZ+c2ZFB?{~x)`aT)*s literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc b/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc new file mode 100644 index 0000000..ea46ba4 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc @@ -0,0 +1,5 @@ +#include "op_proto.h" +namespace ge { + +} + diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc/op_proto.h b/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.h similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc/op_proto.h rename to Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.h diff --git a/Increase_Bedore_pipe/Is_increase/build_out/cmake_install.cmake b/Increase_Bedore_pipe/Is_increase/build_out/cmake_install.cmake new file mode 100644 index 0000000..51643a3 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/cmake_install.cmake @@ -0,0 +1,81 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/cmake_install.cmake") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/cmake_install.cmake") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/cmake_install.cmake") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/." TYPE DIRECTORY PERMISSIONS OWNER_EXECUTE OWNER_READ GROUP_READ FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/scripts/") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/custom.proto") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/version.info") +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run b/Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run new file mode 100644 index 0000000..2c20746 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run @@ -0,0 +1,972 @@ +#!/bin/bash +# This script was generated using Makeself 2.4.5 +# The license covering this archive and its contents, if any, is wholly independent of the Makeself license (GPL) +# 2022.3.19-Modified the MS_Help function and some options +# Huawei Technologies Co., Ltd. + +ORIG_UMASK=`umask` + +CRCsum="3946831741" +MD5="00000000000000000000000000000000" +SHA="2f51447a589c6589b3ed76b6e1684662a273860382d65cbf31fe7dde9ebcd293" +SIGNATURE="" +TMPROOT=${TMPDIR:="$HOME"} +if ! test -d "$TMPROOT"; then + TMPROOT="$PWD" +fi +export TMPDIR="$TMPROOT" +USER_PWD="$PWD" +if ! test -d "$USER_PWD"; then + exit 1 +fi +export USER_PWD +ARCHIVE_DIR=`dirname "$0"` +export ARCHIVE_DIR + +name_of_file="$0 " +pwd_of_file="$PWD" +label="version:1.0" +script="./install.sh" +scriptargs="" +cleanup_script="" +licensetxt="" +helpheader='' +targetdir="makeself-932073-20240525184804" +filesizes="103986" +totalsize="103986" +keep="n" +nooverwrite="n" +quiet="n" +accept="n" +nodiskspace="n" +export_conf="n" +decrypt_cmd="" +skip="671" + +print_cmd_arg="" +if type printf > /dev/null; then + print_cmd="printf" +elif test -x /usr/ucb/echo; then + print_cmd="/usr/ucb/echo" +else + print_cmd="echo" +fi + +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:$PATH + export PATH +fi + +if test -d /usr/sfw/bin; then + PATH=$PATH:/usr/sfw/bin + export PATH +fi + +unset CDPATH + +MS_Printf() +{ + $print_cmd $print_cmd_arg "$1" +} + +MS_PrintLicense() +{ + PAGER=${PAGER:=more} + if test x"$licensetxt" != x; then + PAGER_PATH=`exec <&- 2>&-; which $PAGER || command -v $PAGER || type $PAGER` + if test -x "$PAGER_PATH"; then + echo "$licensetxt" | $PAGER + else + echo "$licensetxt" + fi + if test x"$accept" != xy; then + while true + do + MS_Printf "Please type y to accept, n otherwise: " + read yn + if test x"$yn" = xn; then + keep=n + eval $finish; exit 1 + break; + elif test x"$yn" = xy; then + break; + fi + done + fi + fi +} + +MS_diskspace() +{ + ( + df -kP "$1" | tail -1 | awk '{ if ($4 ~ /%/) {print $3} else {print $4} }' + ) +} + +MS_dd() +{ + blocks=`expr $3 / 1024` + bytes=`expr $3 % 1024` + # Test for ibs, obs and conv feature + if dd if=/dev/zero of=/dev/null count=1 ibs=512 obs=512 conv=sync 2> /dev/null; then + dd if="$1" ibs=$2 skip=1 obs=1024 conv=sync 2> /dev/null | \ + { test $blocks -gt 0 && dd ibs=1024 obs=1024 count=$blocks ; \ + test $bytes -gt 0 && dd ibs=1 obs=1024 count=$bytes ; } 2> /dev/null + else + dd if="$1" bs=$2 skip=1 2> /dev/null + fi +} + +MS_dd_Progress() +{ + if test x"$noprogress" = xy; then + MS_dd "$@" + return $? + fi + file="$1" + offset=$2 + length=$3 + pos=0 + bsize=4194304 + while test $bsize -gt $length; do + bsize=`expr $bsize / 4` + done + blocks=`expr $length / $bsize` + bytes=`expr $length % $bsize` + ( + dd ibs=$offset skip=1 2>/dev/null + pos=`expr $pos \+ $bsize` + MS_Printf " 0%% " 1>&2 + if test $blocks -gt 0; then + while test $pos -le $length; do + dd bs=$bsize count=1 2>/dev/null + pcent=`expr $length / 100` + pcent=`expr $pos / $pcent` + if test $pcent -lt 100; then + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + if test $pcent -lt 10; then + MS_Printf " $pcent%% " 1>&2 + else + MS_Printf " $pcent%% " 1>&2 + fi + fi + pos=`expr $pos \+ $bsize` + done + fi + if test $bytes -gt 0; then + dd bs=$bytes count=1 2>/dev/null + fi + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + MS_Printf " 100%% " 1>&2 + ) < "$file" +} + +MS_Help() +{ + cat << EOH >&2 +Usage: $0 [options] +Options: + --help | -h Print this message + --info Print embedded info : title, default target directory, embedded script ... + --list Print the list of files in the archive + --check Checks integrity and version dependency of the archive + --quiet Quiet install mode, skip human-computer interactions + --nox11 Do not spawn an xterm + --noexec Do not run embedded script + --extract= Extract directly to a target directory (absolute or relative) + Usually used with --noexec to just extract files without running + --tar arg1 [arg2 ...] Access the contents of the archive through the tar command +${helpheader} +EOH +} + +MS_Verify_Sig() +{ + GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + test -x "$GPG_PATH" || GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + test -x "$MKTEMP_PATH" || MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + temp_sig=`mktemp -t XXXXX` + echo $SIGNATURE | base64 --decode > "$temp_sig" + gpg_output=`MS_dd "$1" $offset $totalsize | LC_ALL=C "$GPG_PATH" --verify "$temp_sig" - 2>&1` + gpg_res=$? + rm -f "$temp_sig" + if test $gpg_res -eq 0 && test `echo $gpg_output | grep -c Good` -eq 1; then + if test `echo $gpg_output | grep -c $sig_key` -eq 1; then + test x"$quiet" = xn && echo "GPG signature is good" >&2 + else + echo "GPG Signature key does not match" >&2 + exit 2 + fi + else + test x"$quiet" = xn && echo "GPG signature failed to verify" >&2 + exit 2 + fi +} + +MS_Check() +{ + OLD_PATH="$PATH" + PATH=${GUESS_MD5_PATH:-"$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which md5 || command -v md5 || type md5` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which digest || command -v digest || type digest` + PATH="$OLD_PATH" + + SHA_PATH=`exec <&- 2>&-; which shasum || command -v shasum || type shasum` + test -x "$SHA_PATH" || SHA_PATH=`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum` + + if test x"$quiet" = xn; then + MS_Printf "Verifying archive integrity..." + fi + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + fsize=`cat "$1" | wc -c | tr -d " "` + if test $totalsize -ne `expr $fsize - $offset`; then + echo " Unexpected archive size." >&2 + exit 2 + fi + verb=$2 + i=1 + for s in $filesizes + do + crc=`echo $CRCsum | cut -d" " -f$i` + if test -x "$SHA_PATH"; then + if test x"`basename $SHA_PATH`" = xshasum; then + SHA_ARG="-a 256" + fi + sha=`echo $SHA | cut -d" " -f$i` + if test x"$sha" = x0000000000000000000000000000000000000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded SHA256 checksum." >&2 + else + shasum=`MS_dd_Progress "$1" $offset $s | eval "$SHA_PATH $SHA_ARG" | cut -b-64`; + if test x"$shasum" != x"$sha"; then + echo "Error in SHA256 checksums: $shasum is different from $sha" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " SHA256 checksums are OK." >&2 + fi + crc="0000000000"; + fi + fi + if test -x "$MD5_PATH"; then + if test x"`basename $MD5_PATH`" = xdigest; then + MD5_ARG="-a md5" + fi + md5=`echo $MD5 | cut -d" " -f$i` + if test x"$md5" = x00000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded MD5 checksum." >&2 + else + md5sum=`MS_dd_Progress "$1" $offset $s | eval "$MD5_PATH $MD5_ARG" | cut -b-32`; + if test x"$md5sum" != x"$md5"; then + echo "Error in MD5 checksums: $md5sum is different from $md5" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " MD5 checksums are OK." >&2 + fi + crc="0000000000"; verb=n + fi + fi + if test x"$crc" = x0000000000; then + test x"$verb" = xy && echo " $1 does not contain a CRC checksum." >&2 + else + sum1=`MS_dd_Progress "$1" $offset $s | CMD_ENV=xpg4 cksum | awk '{print $1}'` + if test x"$sum1" != x"$crc"; then + echo "Error in checksums: $sum1 is different from $crc" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " CRC checksums are OK." >&2 + fi + fi + i=`expr $i + 1` + offset=`expr $offset + $s` + done + if test x"$quiet" = xn; then + echo " All good." + fi +} + +MS_Decompress() +{ + if test x"$decrypt_cmd" != x""; then + { eval "$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "gzip -cd" + else + eval "gzip -cd" + fi + + if test $? -ne 0; then + echo " ... Decompression failed." >&2 + fi +} + +UnTAR() +{ + if test x"$quiet" = xn; then + tar $1vf - 2>&1 || { echo " ... Extraction failed." >&2; kill -15 $$; } + else + tar $1f - 2>&1 || { echo Extraction failed. >&2; kill -15 $$; } + fi +} + +MS_exec_cleanup() { + if test x"$cleanup" = xy && test x"$cleanup_script" != x""; then + cleanup=n + cd "$tmpdir" + eval "\"$cleanup_script\" $scriptargs $cleanupargs" + fi +} + +MS_cleanup() +{ + echo 'Signal caught, cleaning up' >&2 + MS_exec_cleanup + cd "$TMPROOT" + rm -rf "$tmpdir" + eval $finish; exit 15 +} + +Script_Args_Check() +{ + script_supported_args=$(echo ${helpheader} | grep -o -E "\-\-[^ ]+" | awk -F"=" {'print $1'}) + arg_to_test=$(echo $1|awk -F"=" {'print $1'}) + + for arg in ${script_supported_args}; + do + if test x"$arg_to_test" = x"$arg" ;then + return + fi + done + + MS_Help + exit 1 +} + +finish=true +xterm_loop= +noprogress=n +nox11=n +copy=none +ownership=n +verbose=n +cleanup=y +cleanupargs= +sig_key= + +initargs="$@" + +while [ -n "$*" ] +do + case "$1" in + -h | --help) + MS_Help + exit 0 + ;; + -q | --quiet) + quiet=y + noprogress=y + shift + ;; + --info) + echo Identification: "$label" + echo Target directory: "$targetdir" + echo Uncompressed size: 300 KB + echo Compression: gzip + if test x"n" != x""; then + echo Encryption: n + fi + echo Date of packaging: Sat May 25 18:48:04 CST 2024 + echo Built with Makeself version 2.4.5 + echo Build command was: "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.sh \\ + \"--header\" \\ + \"/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself-header.sh\" \\ + \"--help-header\" \\ + \"./help.info\" \\ + \"--gzip\" \\ + \"--complevel\" \\ + \"4\" \\ + \"--nomd5\" \\ + \"--sha256\" \\ + \"./\" \\ + \"custom_opp_ubuntu_aarch64.run\" \\ + \"version:1.0\" \\ + \"./install.sh\"" + if test x"$script" != x; then + echo Script run after extraction: + echo " " $script $scriptargs + fi + if test x"" = xcopy; then + echo "Archive will copy itself to a temporary location" + fi + if test x"n" = xy; then + echo "Root permissions required for extraction" + fi + if test x"n" = xy; then + echo "directory $targetdir is permanent" + else + echo "$targetdir will be removed after extraction" + fi + exit 0 + ;; + --list) + echo Target directory: $targetdir + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | UnTAR t + offset=`expr $offset + $s` + done + exit 0 + ;; + --tar) + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + arg1="$2" + shift 2 || { MS_Help; exit 1; } + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | tar "$arg1" - "$@" + offset=`expr $offset + $s` + done + exit 0 + ;; + --check) + MS_Check "$0" y + scriptargs="$scriptargs $1" + shift + ;; + --noexec) + script="" + cleanup_script="" + shift + ;; + --extract=*) + keep=y + targetdir=`echo $1 | cut -d"=" -f2 ` + if ! shift; then MS_Help; exit 1; fi + ;; + --nox11) + nox11=y + shift + ;; + --xwin) + if test "n" = n; then + finish="echo Press Return to close this window...; read junk" + fi + xterm_loop=1 + shift + ;; + --phase2) + copy=phase2 + shift + ;; + --repack | --repack-path=*) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + if [[ ! "$1" =~ ^-.* ]]; then + scriptargs="$scriptargs '$1'" + shift + fi + ;; + *) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + ;; + esac +done + +quiet_para="" +if test x"$quiet" = xy; then + quiet_para="--quiet " +fi +scriptargs="--$name_of_file""--\"$pwd_of_file\""" $quiet_para""$scriptargs" + +if test x"$quiet" = xy -a x"$verbose" = xy; then + echo Cannot be verbose and quiet at the same time. >&2 + exit 1 +fi + +if test x"n" = xy -a `id -u` -ne 0; then + echo "Administrative privileges required for this archive (use su or sudo)" >&2 + exit 1 +fi + +if test x"$copy" \!= xphase2; then + MS_PrintLicense +fi + +case "$copy" in +copy) + tmpdir="$TMPROOT"/makeself.$RANDOM.`date +"%y%m%d%H%M%S"`.$$ + mkdir "$tmpdir" || { + echo "Could not create temporary directory $tmpdir" >&2 + exit 1 + } + SCRIPT_COPY="$tmpdir/makeself" + echo "Copying to a temporary location..." >&2 + cp "$0" "$SCRIPT_COPY" + chmod +x "$SCRIPT_COPY" + cd "$TMPROOT" + exec "$SCRIPT_COPY" --phase2 -- $initargs + ;; +phase2) + finish="$finish ; rm -rf `dirname $0`" + ;; +esac + +if test x"$nox11" = xn; then + if tty -s; then # Do we have a terminal? + : + else + if test x"$DISPLAY" != x -a x"$xterm_loop" = x; then # No, but do we have X? + if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable + GUESS_XTERMS="xterm gnome-terminal rxvt dtterm eterm Eterm xfce4-terminal lxterminal kvt konsole aterm terminology" + for a in $GUESS_XTERMS; do + if type $a >/dev/null 2>&1; then + XTERM=$a + break + fi + done + chmod a+x $0 || echo Please add execution rights on $0 + if test `echo "$0" | cut -c1` = "/"; then # Spawn a terminal! + exec $XTERM -e "$0 --xwin $initargs" + else + exec $XTERM -e "./$0 --xwin $initargs" + fi + fi + fi + fi +fi + +if test x"$targetdir" = x.; then + tmpdir="." +else + if test x"$keep" = xy; then + if test x"$nooverwrite" = xy && test -d "$targetdir"; then + echo "Target directory $targetdir already exists, aborting." >&2 + exit 1 + fi + if test x"$quiet" = xn; then + echo "Creating directory $targetdir" >&2 + fi + tmpdir="$targetdir" + dashp="-p" + else + tmpdir="$TMPROOT/selfgz$$$RANDOM" + dashp="" + fi + mkdir $dashp "$tmpdir" || { + echo 'Cannot create target directory' $tmpdir >&2 + echo 'You should try option --extract=' >&2 + eval $finish + exit 1 + } +fi + +location="`pwd`" +if test x"$SETUP_NOCHECK" != x1; then + MS_Check "$0" +fi +offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + +if test x"$verbose" = xy; then + MS_Printf "About to extract 300 KB in $tmpdir ... Proceed ? [Y/n] " + read yn + if test x"$yn" = xn; then + eval $finish; exit 1 + fi +fi + +if test x"$quiet" = xn; then + # Decrypting with openssl will ask for password, + # the prompt needs to start on new line + if test x"n" = x"openssl"; then + echo "Decrypting and uncompressing $label..." + else + MS_Printf "Uncompressing $label" + fi +fi +res=3 +if test x"$keep" = xn; then + trap MS_cleanup 1 2 3 15 +fi + +if test x"$nodiskspace" = xn; then + leftspace=`MS_diskspace "$tmpdir"` + if test -n "$leftspace"; then + if test "$leftspace" -lt 300; then + echo + echo "Not enough space left in "`dirname $tmpdir`" ($leftspace KB) to decompress $0 (300 KB)" >&2 + if test x"$keep" = xn; then + echo "Consider setting TMPDIR to a directory with more free space." + fi + eval $finish; exit 1 + fi + fi +fi + +for s in $filesizes +do + if MS_dd_Progress "$0" $offset $s | MS_Decompress | ( cd "$tmpdir"; umask $ORIG_UMASK ; UnTAR xp ) 1>/dev/null; then + if test x"$ownership" = xy; then + (cd "$tmpdir"; chown -R `id -u` .; chgrp -R `id -g` .) + fi + else + echo >&2 + echo "Unable to decompress $0" >&2 + eval $finish; exit 1 + fi + offset=`expr $offset + $s` +done +if test x"$quiet" = xn; then + echo +fi + +cd "$tmpdir" +res=0 +if test x"$script" != x; then + if test x"$export_conf" = x"y"; then + MS_BUNDLE="$0" + MS_LABEL="$label" + MS_SCRIPT="$script" + MS_SCRIPTARGS="$scriptargs" + MS_ARCHDIRNAME="$archdirname" + MS_KEEP="$KEEP" + MS_NOOVERWRITE="$NOOVERWRITE" + MS_COMPRESS="$COMPRESS" + MS_CLEANUP="$cleanup" + export MS_BUNDLE MS_LABEL MS_SCRIPT MS_SCRIPTARGS + export MS_ARCHDIRNAME MS_KEEP MS_NOOVERWRITE MS_COMPRESS + fi + + if test x"$verbose" = x"y"; then + yn="x" + while test x"$yn" != x -a x"$yn" != xy -a x"$yn" != xY -a x"$yn" != xn -a x"$yn" != xN + do + MS_Printf "OK to execute: $script $scriptargs $* ? [Y/n] " + read yn + if test x"$yn" = x -o x"$yn" = xy -o x"$yn" = xY; then + eval "\"$script\" $scriptargs \"\$@\""; res=$?; + elif test x"$yn" = xn -o x"$yn" = xN; then + echo "Unable to decompress $script ,because of aborting! ";res=$? + else + echo "Input value is unacceptable,please try again." + fi + done + else + eval "\"$script\" $scriptargs \"\$@\""; res=$? + fi + if test "$res" -ne 0; then + test x"$verbose" = xy && echo "The program '$script' returned an error code ($res)" >&2 + fi +fi + +MS_exec_cleanup + +if test x"$keep" = xn; then + cd "$TMPROOT" + rm -rf "$tmpdir" +fi +eval $finish; exit $res +Qf< pŕZaBk-x0`#Dz슱$_hvxwf=3kI86ťX{稄"X*G +9qՕ:8cb: `tMw~,"{_~{d0WN pek+BeKt ɴ.oi]֚*!̲UÊP`mYnNSՇ; MAL N.C7jAo/VY{u7kmcS)X +hKbU5{*UTmpHgTb,vƵmx,63:uZ1 +N30=4^2tw C\eTOU7׶,v}@ǺuJoEPD6D-2pIjW=f+jA[Wuj -;=Vm[^_牅,]fV,oeة&dFAB75 -4ޜŌ!&L@=[VR73#&T-2/X vmBK0cK`,PPnG fnWw\mcf +Wigv dƬQMWВWZU5.ż/HȺbW +#W5B[ZIɮȴ\!dn%_!$mU!tڪt/[P:b2b_xN_Y)lQ_6Ԛ)X˩] {gz /W1|UْNjEoPi[*^+SppV dD@h[U *xL@[ٚC9dCm)Mp_ӞSl,BNg'l|= 7´vAluOGwK?ydcGs{Gsoe@4q0OpƎWxŤLUV Shu=42CKcgı5!2mc'\`ZN Q}^)2@`Ms֧Hg%;%MO|)Y}[D0UzF18IAq=L R}g1܊SCz^wu*F0e?H\G+vށҀM\gQ sjk^Td(,Q˛)P4S +J*o ,@ks2lI~?F_W+fy>}\-sS,8Uw!r! O?j{Djb1aY-b,.C-'iI,bXRI~ӁYRй-Bw ]=A54866hѲ]q2]iHVlyd.=#,{[PfʺE)h!OT`jh}kZݡd}d]r`=BL^2loŜMKyʲl1dpCdz $꣺wrU(f|\Mgja]Ājؖ6zW{fC .ƒx1@d >mcʕd+gk\ɯdcykUyKBd1,ѱ6ֽ7_gJŴf@sc:Sc*Y "vR>?M28.K@7 +0ov :<0s@:O!צ_y +~AeL" +֊WXѲl\i]6Gt[x|1ByniW33brU,, ׎߳g2(o2Sr ɑK9Rn-/ YA.Yȋ{2<\nf_ +Aγs0}Z~Y!J1V(s>#gF9g7.yҟ{f#_|N,2:'LEР0_R 5TR:k>|hUR]jD:vRSRݞHuцv^P]φoCi5{84LXJӉ ,Sh* +Qܠdu[6Wn[>gz2<'E6߻U*EDVcʎ4ԙ#R Zq ~%(nζFn9Ż F>)0RۦhmpIYx"ַf!?fP󌴽7Vڕa,[-XQ~%Lem 憢h𪎒kݠ9ZuУ +(u,ż_jA%LS^=T25d]˕)ݒiTl3}*L7pyH $l}&3;282x:ĘFQ|qܬvI.GtX$3iMx' Ur}喨KYLn\dHϺVZKezk?C=5B䱅§9IcڵF ;9^Ƈw54 +{<\}>W]q뛰 G o4wg|m3|Iy5<~e&|6Sȃszλvpo?˿:/璎9=o&>srj a#Rܽ{{{N}g?c } RYT?7!O yF %X@Aq(@ +s=٧YY'he3*qO&Φr{.8Rwk@cqSq8#C>q&/-Ω8g\lOaz> v +yq'/,k]qd%$[D䡙$ӭ9s\UIYJ|6adT'G1+ҵY &(Pgyb%: |(|PgeUW%I=x(]@)].=j!~l +TzCyeU$98$oDf? 8\8W:c'Ü"R |G.b9҅;qF@xV^MؚbӅ'J|!p'Dh~t!/(E +OKwr\AQxoE|wq w& ʋq  DL\N{8]@xn%AZCˉr4pCxI90loX Iȋ}.[64߿bxJ]ȋ~e ?7 4!?ϣ ]CXa? +ehyxZ9>l8?bIqJE=XE'e°R}ә2|sY̿fܿ$\pz`wFWwT y)򥬞Ri*j6/i:"@l22G1W}PM͗չաúz%q5|~ ͩN 7[CfV]֯W:VF-?>8꺯> fmLˀWfrl##Wje+ȒX r(ZH.=K Ou!9Je8.J׵W׵5+u@ _/iesĨ:5:48~JzFS5VI߫ћ$=Sҏh~T׳N_)5zNu`S)>ѳPO;AayS<>casq{G XoUkZ T5{ʈߤJIR9H1J*|hx/$.j}br_/x O +\a}Yʕ5Su^*Ӿ~O[?0i;z1ۯ:o=w7w?؊7u=7v .}AQR;[]OplYugj~2^ܷK\.%v׷h&` w;WkV>"MO _^V4_#Fv6iskkWpQ8(gNv3 +'{̉O]d#?]ߗ7GGGG(:~/ J(Z Ev^#&٦O%ߵ(I':'}P&ҙ: ߥږ~5Y߿Wٮdvm }XZ2٧ɑ]] >KN.*퓍c J:_:Ut=+/ J86_J)9,86&~⣫c񐮸_@|$O3]i|˯{|H׏cDZV4ql*]*O7]FO?Z\ +Е([O{b^9=~l|N^i姷ǖFW N___/og}86Z-_"$ODZ8e@G/FUNNOB8׉.~ 䗊c['VuKs ˿~N|D~Уi(nrFS#k5\47nvfkmTk'~V"1(b FXKSKF)v4񬕱Ҧ +Yg&ømx~"j5cQ7?Pq0nq+g"Tv FLVT1BX?{0LhBs檰A|S6[bV +5";A7Yy dxod3cCQq{Z>353%?Ǖs3\2Rhm1 +k'3wvֲ562q6' L$gfmbXC\q$NA0` 0@}Su8 ˙Qt!cC"NCJUHd<*ZIq"ɗ`*jKFnxidrDx,X#LW12 OdRlC$ -- 9NJKcVta,πOnƣ;atRAߠ޽a<w$AzHJXlyBPײuIї?{o=up}[[ +fO.qBz [W!^`eϿ^|/U;p]Hceyz*G3jhDiVҴbg%6INTadTфQ,(UrH:x#Ŕtp$@ԔŤ'o"8sDc%ݎ`x-;m{$4V۝4n7W'xCVtҚ1!ahXv;9-<ѭ{C@hq;q#@3B&BĪ"/ұX0q'9 )%kI_sSG_+gmE#28ltGwwC+b~SX~Q+|NCgZ||Ha1lų')`D:'XVZ!n|A7Q۷t*N9W;Uap?[׼iKKu=jeC皲ɛDCK.EfTޚ`8ʆsDF1`VҰsf5ĉ #H +#,C-;#R׉$nZ;j Cl ^%158w-\86Lc$Ey3E6esxx4GP0fVո3;{0jChc{qo3yŐT.Uߊ b(WY\=#pj)&HڼIc.LkD.9Ŕp9iG.x/.7\OknQdF7(r! +eek`8F- =0E&Iw؊ GOp'SZ%<]1BAfch˩يR%e鈹?;FCgI" )Up"M6>OֿWRVW,#ΧD4=3oV1[ ")輢a,J>xCFM!#P#Itd5*O0stqjPşN؆eAd$ ]{4LeȕcBݤ0Fr\b)8!E.<.0 2(ΎŨ{({Pp ,T(X;2'7i~a>^؛rVEMst*ӞjE%BjRdQcԶeT$뱐r+F,(‘> +x;,a3~4~F:f ANu3Om2& SdkؽNL2-7ˮ&$ Y2qNaƵKF6Ai'K[iÎmK[eJ<:@ oh bQ,Jl(HIlںɂQ:uIVL~MdCֵ~+T K,I3l!R(D cD2fyX{;k*@JgŻR&hnWYy +Ael.%$})E%Le]*)*L'"~ Ӎc*o@4;=Ie-EP EEaDG aEc>sWw{)96;J0epQBj5'AQ&y#.W䎃Vඅ/E ^0o)DhM~mI1zʖ07%+^N 2/Ӡ"D/ X.KL@Qx9sx)[rql܇ bPh`,{lE譕B$ClXm3c&oz:Bˉ ~A IgddǾ %Xq4'C@p 9T$+XUʥ*Ti }$⺓ X* +?yo{ooC#E޼~g߯7?K3agrpnQ|{Vce h*|yWKS6G]ոic~N^aߕ'#}GjťtJkrf43chdb\*2\.;.,??3 +_.رJ|Xؾn=teyGVnm",% />JXs|9x}E(9\؇ƶ,W=}F>^CB8[ۖ߹ZX'KV|3rc-<\~ .{&]pϮ.Wݰ6yc:&2بp.Gt= gRT,͵gsH<bh,M[Mg>)UB:`}s7ie}$0*]&Rhfkk@' 2ؘ2 Mf%|c9<59>x6qiBvM"HAEA=Hp 10Jrs[ya4-[2V˕aʃ7zwWuc8mft$2f8H-+EfJ"d4IV>Os񈙏'x>f0qMtX +bBh7ql^e&+t䆉n@YGbDEwd&ؒf5&J3=+ A(f^Ê=*_2:G  xCVhHwݚjcgo :<|Xww^!6ʿj zt@3_:nK2"߳T~@BG !$cGsk37 g_v56o=#j&GC܏:[4Ywݪ1Jfp ؇5n;ڵgm+&l@;e81tLw>yۼX3hN43yꂆktHaXaTG}^u9svAֹpMFwbڛ N +Q>z9H&mMAAw OЗW>AO +5e!͞k;MFM*W];h1 `Mcٮ{5ޣu~PlH669qm '0SB\ѓŋ8n'8Vh/?&Mf)0Í*ׁɯ0 Qq~-$5̧> uagTwlwtL- +M6>8Ajrzͷ0?o#5 >|ڣQ LT!nPX +cڂ0Pu<~. A>R h]s=- _ɯ2x|ʎxj* *#^ȻD}o`0~ l[ލl$QQVA(BX6ޅth63sgr{j/au=kO? +_Sا[DT TnT@+k=!8^@eS` W`'ޟyN +v'C^RgbS仰]F[D ^+IGSS@>I^*!?^tĘieC*#"j7d;gUDIGNYv #I_hE<|)`7K삝<)*uPnɾꛤ@voic_|ñRO/3$?`OuL*H`7HY'IQ7BtwFt=/+̽nAiź8iX8dȘ́n9fbZ񟕸L6f(sz u/(j86yyI2yŪ@g g +/ٓ2}YOe1y$ο<\tJS6׾i<ߥMca6ly=f,A/`jš [6d[EFڶ"NYbNK=*ϯ,*vM#G{E~:*d,Ҟŭh6MT2#1٬8:1[ Z9Pu9Tua?cpb?ZO$) Qag@&Wb@R\;hWa(BEF +)n3`5Xď_MKCYZ8Px#-SqPn{ݪnT `Ҍ#ZCXc~=!L7A=Zk,3X+QNRco4n`{?ۦh?x;wZ >ip't:Xs~I}Qнtk]-2AAP]3'<: qA{mMܱu|T]qhvX,.'A/?| 鳟-S5K: pv[3tg'CqxB#ҪOk8wL )r[fΌZEiS:0hoiZy c M&^}|Q t1:g0P Zl붮ݣoO]&~ݽU3v3jAk/E>)GƤ}TuVG|WgE\P^ۢ:Y[@5j?u2VMo'웘Mm`fh9蟂62{U7[sgT[-|3 <7(b>g1_TKlZBܬF| SPC|E>v뛈iuՂ7ov|Zƺw+zSHWC^TAz+/ +;Q&OtM'(J}>QtSpх.`(_HZ,wȫ('tqBo o<6#zd +A9Ƒ +J@~ +(P>]w$o2ĂMʱǤ`?*'Rχ+"\ +<_+rqd ɣ<+u vZʱ /h]xP P P P e + r@qO6."x\lrIִ>رrˆ޴~Q~hrm<:gÕ~ri1A*OåLQy;eȸȿY\~VJfȸDC]O_ WV;a?'?܃U`U.'[H"Q+3H*gD,ƭx2Zh6OL̇s1sDT?qW?UϘA:y3T?p+U?UO5|0K1cUqUE?8s~QHz1pv>R'vim}G49ק#Oӊe:;۱>1 2{E8q+Z7c843t!0m0`\ Z7ct0^0%1vc'UM{K C?zC;k^gJt~YI)^xnU3ql(|!d;[t_]\y( ۃ:ѣ*@pLSV0>Z˟8 u߭eϵhgjT2nx8lgLMM8%la5̭*(:ֹdL}6=W>`2ړ>N%UӵW0}UteZq8ڊ$u9^Sx`:G 0_7>p3ML>|:D8w1EX64M/%12Qm) +%ծ[o{{z St'Lт_zT0E]\L}Z`a&(0E]x\LY`W&J?wo[r?}L+CL0?ӰɗÓtYbBKJ7s8߇5#}F}m⚺Ay+>~X9*#珉-CWÕF$_B/J%hKc/oQFWJ\e=-S/7ϽӊmX}qͪ:yFYuTI~s*>yܦJcO ]?:"MWaGNQB'iIF@|t:7INw݉qԥ#̢3q sz4=9yY8denݾFƮtꯪ[ު.f an~#3t`3V&Ot| +pݧy|YE~33̈́9NPv^NF?O.8y>NcvB^3qe{ ShMSP+urٺY,l=&BֿZc~˺]9ufOwcU+@+viviviviviWľ[[p|A?99#{xx+SUX忏Uݸ8z`qD"LR=(ҎKgfoP[ajh.iP]mKk|?yR%)YKvﲨS߇%{ g(FГW;^]_{ϯF{rW{L?Ѿ%ld(M絑 ?qUYj"?!ˌ/e<LS}M _K%嬤VQr%[qNʮ uv +cޥ0 +Ehw~ ] tdKcXf6Y`NYX֖¤80kSq5L3~F:-I8^;7ց kǮ ZJڪ7'JJ|8S8?KcErQ5yk=HEż9G%l'蕍 pPr$T|˜ysOV0"O?ALg0*sTcLio_~x8>9?.m-zTH>ps>RsӨVWOA/}6̞ǠJ3Vq9h'3o\?s~n//KN? qM?nJ?xOcP%+J4Ou8u7?|8e1U0ROu0s>Rs=-(I +ј"1{qIq1pLJ*KvVb?~-v^F|ezYXP<'~gWgxZ/L9 ++V|#.^u'9?m--/nɛ9Ts_yyǯnm;By9+ӣOc,j5#)G)f?</0dP{u36N6f?a$?k1<`R?&?8?'/4I9ٸApMjbxIy?|I&zԄXq73csLc&vI~ZM?٤]u0fϏMo3I+v+,cLҩabo7iU&e?dg*Io/Lvf82fĤ=Ԙܯ&INdxud~۵&r;MgI@:#|I${M& Sr]l&3iOMҙn2>;g \$cBw(q7+j*k`,/'*tze"s]>'zPߑI*9 +^4йxǩ|ޙĎ +x\O L%#Z㿕zPY#WU%+)/&ILrX&ݏ+UBAy% +a!+!i { k<1[ K]޵FV)m/y/! +<&,¬K +GױVj3:]£b@b*h$% W +4aspJ$s6{.3ERbz\^,!"do4o /۪Nw/Ϗ? Bjq6xF~5/r7匞Xy.JN5.nTr^WFVrăNwCY*4:ģXɌk%)!&I/rU"[RR[cXJ!XH15*tGzl+H'C;) AdGvK +X$G"4JEEd/"38j'osӱUJѡ ٷvQ\lnK -0%7HD=SP24_JZ4:hl/} 3ڕjC&uMcs` Sd8CGUQPw2L9 +:i#ǻP`/=< ø'bDW 0ZSH!NO#5Al +wZ<4{c 1t91rSc}qURalt6(3ԄZlA٤e0_ZPNl.- >Oh+\'ee ^mlpMq&Rڜ/ hXS J\4e 4}>K PBqҹL, +8a3L\SЏ!U9X@g-^PicNVѤ6M/ }QEfw=b0z4^sJBM>1Z^:ʭnE)6=lj2S=atbćE@h%8ܛF:oC#;8cw0v@tEl2eBA=nRGxîpK|D׭7*a ++OZOCC{{\Uwqh7oH9)_(x5\FNj ɵK]%{VWK%IԮ])WGY E]T<֟0+e_S'e,¥frʵL\q=q:џʓ?mN<>_GWM•'VaO _9ŞoeW0tG7[pgݔoCпumޕߊU:rw>7"?*^):<, :|:ߢϏJC}txwW>?V|&xx_9]ox!^A_+-TYV~W׋U\O5_z|/ ~Ư=CS&нGF\Nར~2&Hr%b GH_C\ѾqFu +n~z.g|>H\|AtU'0յtGg(κ4\mr NQ +-+$/"4)\Iw|&N۹|5/&x3/!x/%x%, >> ~9 +o%8!m/"%._E[KA3!_C/&w(59^B\ ^@pN'8XHpz}8YB +WW<չ gn57<XI8f`=QhCUyJ{^ }TۀMN:t #B|Bߍ }'z_|B? '&OQ>A '(F ݏ +'k(п@wO_|Br~-OwQ> !'|B Wh!O?|BP>B '7(ЖZ_@&D:B zBOyBzЗгQ~F_ }'t1'z' (ЋQA  z%'Ȕ;P>[Pu݆ ݉ D|B|Bߍ }'zPF~ OM(O|B? OQ't?'+(Я|B+3>dB𿾇q}/<ۿ|!/[-[i^>'K>qxm,!/fm_c1˰8cSUg'YxW?rY/qէ_ ` 8QCWHqV@iOGBܚ;'Q+Jԁ ِ6lbbPUoo^Fv %OKˠd'D;P;= _P5x1 [@v7@^?˘៖B=q.<$~/'ev:C(gsF¿;L#ᅫo~koiu,L,>\\l]5O 9{wBٙ@Bā<Oؒgp<5OݿGU]"wɍfxZoDZI@jUUf&!@J `Ֆ-GX[&f%Q$`Vo5G}>2s$(}_<^{^rα]9X?LN9ڮ󛾾ivs7V/6t:7K~Wo%ȯ2=n~I!t~w^>1t~t~n~ĂיίͯCXϑ/+ߵn~~$: +7 E=Wo__:/OE}Rux{ v ;NJ/ wSw}}w},ͰBRqdXI{OK/*KW7>RL<~iZiRN_4!ίOH[keJo7H__:n~}}Rnu dY_g:Z7hOOW?z w_$+M 76L7cw\.O/>G5nH/CIבk}{/g_g:򬯓oH!ϷWl!ϷƑ_i:'zf nn]HA;0sp|\qH\ǵq-3q]9.ǵuSq]D\zpz\Ƶq}q݂\\µqu'q}Z\ĵwp.\!Kv8hgcH~׾✛b9]mA{?k̳/;0z%bׅ=u׾l~Q<:h;Y,MK:RpMadQ]M[' -wht)lnu`Ny_;n ;a϶,G¿GX' +Kؿ"s~FXfþQOE|?~߈~{/ƖNmC> +{ث@6 {=[z|0KJ췞`}/ey>`<3%ەCO 킂Øۉػ۔w C`~n)zja뱿E8{rb/?m)`t؞-;XZb_dk-_F߰_?`dF:vv2m ئM #'[z2tjBJȺF  +F\_bX:,ߖ餻>`=݈w'<:i7*mMёpb[?ʡr[C00ߗc}1o%d0ڳ}%dmCC[CcO@;;`y*\ ;8Ķ {~=זy_/?}=pKorcw%0:g1t GO`΃X~91W(ζvG/Ͷv~17̶#O:g-NJA`džlϤc bfh0̶ $MuA ܷOd\:# F<{r}q] +a_F9"›쮐WG{%!B/˟Huxc|/C|8R@1-n}0|v(:avHX;E#/0vU"uz=6Au5sw=^VXK9i:պto._ӝj5$6*^b|TvV /XM ؈e_U;uړky=}=YG&Ru5<':fEj,a='Ɖ3Jl/|69&$뇺\Vb_^b_Q``J y2}˼߉+2dtG؅a"}A{i_[çx~0ෲmc{^=p0|Qݟq%v_/)}O_/-}[)~>+{m0-, ~>K^KI YA? v1=;x}O%sE0J;ϸ cr9fDvF꾼#З86}6q 軓|#d zwpwg}4]7mأm0fg`$VWZ~P\aK e(ood~ONݐ+`Z> yWkY*+8Zvy7y?;q>0-W'Bkfu%ߐ8V|:NpVhMsS\s>[wY|寮q't|8Vgxp> +5z\u' i?,|lx\^_IET%Q{tq F0vƒҘ=wrHX4ًBxA/Vt,o~j"~q_tZn@/yur,$~L?A}7ob-\0EvDe/lAK29PO4"EaL'[~L'Ov߉!//swr/s8үĸq[G.N{]3w|Z{|loXt6ȁҌ#!˽o%0w9ywz-)[ɍ馍nKWtscK}3frqږ7);i7yqi5qy %Vaڭ7Clm'd|{qh͠\ _DrL/}IH?I5 G7Wsȯ2#Ia+>iKwZlbCYn|rK :s㫓tt_|ǽZ6Et#ƫM`_.70z %{O[Kt:] +w 7EXOf:I8L{1*&;":}He>7cL]/{SocOqt#|kiLd7ktUfZ}t$7LCj݁$\YɽJW2i#>Kg#Iᳮ&ˮ$CE<6_,Wmu+X=yMn^>֙,Wͯu +ɽDM~r9nV_:tFV_{?V//4B/7+(i7?1/On~֗ RrΌGrqkܰALqԣW|Ɵ?dRt6 η]^zw"CWO:XϓKOg{)~WN'?Wv{{)~ZI;/4t~ VI϶'o_$Z"/OXRp XsǑ/Ig_3t߻n~\z{)~JZoi#j݋r;rR+`R>ʳ&\wזgO~r(Q7?u:ɽ_E'S{f I= Aa<t1vQߛbX׹-."\]R\T[μ:h? +?֍A1gw;,vx- eD׿{QzJLEvA?#h߾HAEsn - _'h"h>h!h*hi }Ov/= /vEFp>뱠\75˾>sF!`8y(+ .=Ɨƹ.*1aX x Rwy%K(¶V +5{E2yc?BA=V UWZf4~#B,]H+Zzxo1O1y*Y5e |6ᵮȲ{ 敡fUiMMю[W6㵈GYふb>Zz1/z (HKY/u62uY?urgJIN>kk|g =~@hGB_4:ʊn` !}ö2X؏2&3CCeXb7c*ɰ~*1G UdX +cnZa}fCJw]Ҽ1mͰsM:z43s萷:o^ƽs`emE˳I{sjm =xqe^Z0Y:3(Nǂά,{Sp׷/dFoe( ޏ+;6O +ؗSWZWiI+(^T技uRߚH5_=ʁ{4~}>QQܗc,黚+v1Jj xᣚ쑔V E?G^cSO'EcSGϱ}WB Q&ܯ؇p# E)>& %ү4}8֢9=փ.v~=%ޜ.\Y(i?29I&ik_6jرzY[(b5?2eWe+~ٯ.<_ +MuQ5$-xxD᫁ߢo"Pj]e4[;V/﫞Gx"ӉVuǚa CүҸ'LS6+'zPtc\/OxDRR;^'_>I1$%?I}LY=x)x#?W$> +x"S/J<!k#B}/x?hx`35HNX?z u/%H|4D<׸G >> /$ȐxmIyH5Odxnis/$Rm1)fۉCI| +|Y|]R>$?|JY~leR>'E%E򤜔Gkߡ$-F~C7 =1Kv9Y6iLYlO<0P~ <=$mA#+6DK|:FNgį~S+2_2rJ +/6z&?Y?QF~b~x@go'ަ"}ģ +_RaO<׀?aCcF~?F~^[/7)Q?1K$0UF~m +o#&O1*gS%F~/Hk^w6GJ</-mߗzPx>7#E>Ue[o %b'GOtcKJGx 3%~ S }1 $~xDgqċx!q~/ +7Is%*XwK/Kx_B$>CKm5H6#׀?as_XR?'Cz_? WI^[<_~G($ܯ臁JxDqU\ {< +I8Q}ԋx@Źw6oxrU{28F~m +F~: +#Wx)FN!|qO0*࣍>ʩ߯xTᓁi'K)b#3%RqEs5D\\5.UOnY}d\O!G?W k )x‡?&ۉG _M\8UԸCz/$Qq/k:eޓSԺd^WH.zvs ++?-oΛ~̳ː/7=Xs{"?*h?kG~q[땩yD>1"1W$3ʽЖ|b>7}]38`£U߃%27W'yVzagG$0!cN##@y%X1a=F8f֙c}T<73'y^ [z|,vмWK߅)'ۓ ׼쵲8^'9쵷fgѧ^CrշE}xճ9S}7=,zWz}t׳Ou}u]oWQz}rW{m9"bld%;r{ ay'bZ|[yDxB"xS?G> K4Nb^[w/K[??2X7K7o-־\o-3pݘ!Z@smI9Gp?Hhߖ6\Ny.qȷ0h}̍?CR%৞]o> :~̗p-ng'>"h/o #h^9m?E%aqKgsmQua&T?]ڏ`?횥>[ }>KW>N/|O|+tͧwTq=&)3P?靸, IY#^kOvo^Eɳ%6/luQyFZTM"%sfiH/"B>g'#N#_tM%}bny'Kǁ\wpx*w=@N9#Xk98r%*''NXe|׸d4Q64u"򵍵nFpgtԳNj]Q6_|9萏BHzW1V逳>w$dXvk~Y8kgNf>v4 5v})i_c?ķP&N<,3,uhayL EiB/MpKhZ>7z*b<+_HDZt|x#K%0xEWOO<(s?+rV5Y;5'~ LdzBKH4tVqV |oKJt;57#ITs'D|b ~bsA9 + cIV#ocߋtA*oX"Cj>gHW*!ֹH2f+'1`ɵgɫuD⌏m=Q?YVϯY-KfgFv@\UOȊ|u/Lqʏᙉx+aTwHJU9mе輻k[}i_;WXW}U";;{$[ßE]wn/"_)Q[|7l T~ྒ oYh7-(/^&b/:l9Nxg#2~}7F]8Rob岵"CA [hϨ{VbD2?C&U?ʀ/Gy?pվL#g1BL߈xfX9 CUBwrT C%k .=ż}kw=vs:yR$"[և\_s+;w;^}O_AKdq}x}??zǫ%?Ļ#O#TL?F]rw^c <F*>}w8%1dI>kUk]u7M>rG??:B8؊w]3 >oƈaOX jzq<ϘU+>[p-WO` n +nψ< + $\2|pVI"u Ra\ v`Dl&=ex|ɳ$0jz?i~KYVd&o bxre$gջ!xe}49~!JyݨS`2_<`O* ky>mrF|KbNߴQN)N|28qhd16qQcB\:=hިHoNiQqr'ƸcQ~#o]?KOr~r6l u{Pׇ +҉B߃>\^01H=S6_5fǫa+/<^?:-`L qu:$Vxm1cRA!(ܒkg8GhNL0f["6tC_rЉvtH+mݾ |_cS(a7!{ak'WsFGXFݥ>n=Brvnh%'?brQb\+^dC{=.@}͘\14, +l"|sK.kQ~G< gn}uUGLV Ho~[+>`wͬB,6F~įC +D1&q: -Cdm"1acX6qo3εǛ^\/iCVC֯e8F=ػ]屬ԁ)bIi3nc;WE'1u(ua\ֆS5o13$D84X7Tsgy2.W1W <|_kC60G8Őid5s=> +Y›\%R6͞{9Ҙ/pCg0~+5}$3E~wzH3tq,kIj\Eҽ9/A|h#}D뛸'kuc"8jr+-TJ[5|%x%tlV+N/{-:0$jl a>ȉhW57~RL0mؗ(o3SQ罣^Q/c ܎3׏c^9EޚH\yd^-˹>VI_0ԟEj-_A;^x{y/v7}."7qٷӼ~ߪqd\)vogO]¾'a]WDH?02 y ezxZc'f(]199}5-E=#>{rO'zEM!judh{ډB޼gwCc=vCޑDLjyɃ|\;c=~˯[~ ޗsq7l[߃c&ŰJ~|zu7%ks!fk;(Ƿ%gclA;>ہ ~+0b91k/e_X)k@;yY]{akXW}]e[Wc/7ᄅv| +2ǝPȁF 3#[Ƣ4k}e\M8U}/N:];wX ה1v9Yv9Bڱ;y1N5r~9?Ls6~m\vo9ׯW.]!Ǻj{ؼe\c &O:hӾ cXq8ſ2G0ނ~q~^q}'#љXQ#\,^Uoރq>A:S8Z[ fqJS<|w"Fv-[Nо}#){O0"i;>x!ƄoN-/(p?]Hz#~j?. {/oVku@^i*ؿ{^-q](E1w?zeíVYcƱcofqEb{'U': g/9&bbK9%gY*y ({S#GI__?c'TaX?|7tjh~%SY _@XGqs><=UORƄ7_H]7'3A31hKGrl>wZnen&>b苮f͗vrFoE#:ooex>u}z]xu + GRj:לK6@=<=xV%(Zd^M&R_:@\F辙O/eyW{c.G'Vy7|2՞ ;}q6XG~ō!Vtwa3_,挞Ŀ|1lKHxڡVŶjF|e=^f/A^yf7@^dK?$ln|KݴL1nXg%-Kп0yGs2Ν:x{+0~=5"nu2!GQb\p/3-΍¸k`dze+~ nɩv@qt-_{͒u `3Vdp~A eݞAd_|t^4<۽1x;F $z z1yaTY?$e,DmG*A ^Kf }|(kB08e"N􈓹.ʦs~O z y~$?GiU/S>~\HbKD-q,1f̕X3G~PF1QKtgfl}c/חacF/gr +|gٜ;'r\c䵘} +r<@!]pw.7~ko¦gj~T?qwvimk+6i!|Yfߎ"/Cw]{z[VmGV>[~2~Qs-ma>T)b~9'iE=o>wcҏgH?ַc؉uf~Ӛ~ ~Og?ozN_i~>QGg|V?_!-ݪzD;v ;zӳ@ /ة(fƣ7~`[Fm]&̒kEbܮ=>wvINµa>;mSviNC_Nihq44v:3+czE@SOCߕCZ/9k爥 l&0O(OJ쯽麭J{:9h/ Hz[q}wwJ> kq~R} +Um6?_vxZaqe+ѕӾ=hg\a{~_qyrƀ^iιѓ?PbQmwN{5O9ƕhʀ:DtmO+}}-e)ĵ,{3H', Cgq}c*yT"N ߶'Nn}miwsrG/r8r+wA\8_!_vA}6Kjw̏B3vC&q8i=ѻ:x}i;rg:v>QﳌS|Wˎ}-2n9zK>Kn]Lxg:#&6C`> X`6ϧr?!/-St!?S#Z#[ Җ۵-/r<4r5bzt~sTg߁2(jmmNzJzG\K::\PqJ&/F[6˵KO|!οy֯a>ɵn V5%&>X/2+CGNᇖGe=k7rh(ri # x,ֈR[t~mϿ7sO}DR_:~\LeuږY7r|hSڿ;l{2_Kwgb;Q׃칙'zöql.Wg&W(SD_&з,1V;+o|3}am+ZSDם.ǝiΠ;qgǺꟉ5 Fkչr^9dӓ*oG='3MͺTyvIU +59vrJ̞{{ ?'|>kd?m3,]:~8u OPuRdg ^N t,/j>wȻycA#Îv*cZQ5K?\4;>_&J /:Y0#`o;hiF0NljVƀ/'h] H(MDI=mٽDHP6P!l7@MFRv1<~`3:#ice97?]~kgT&oϞĘ&gTqS8e%┇MrpqJ} 'g K?N,spX|ɶFﺏtt{8܃8kǺ2 of])[=‡Hƅi>|1 :.DkPR|t_ΏS7<]t Qpot|jS-R/:9Ҧ4Gr&#T<=Ⱥ7MjESg>_x߽b}j։9ƛ3\?1]lyKELs4# +dqaoY+ Z[s=VqZgW@DWs,f>(ksʘwxӟ7iƊ#joAIqHmܻ}|ѽϱ Ɖs%[ mIb9lH(:8SBNOQb*,+',5V++!/Ū]ɯ7^)7>.Q0|՞< V}h #|TCP܏BC*E1r|y看w2:wXU։yYζME]MGL35UWo\g$>T:3/|6zxFŒׂn_nKpENaO8mvR-:omZl6v= zk䩌 r&_컨Wg闚 }r?AO?GW>{C;_ܭirt`~r!\3M9ԇhy+Z&uno7?FZh~0zX(xq*d88q~>!< +kŇWxa< C Aů@,yVX +=~ų@BYceE,l"wAJgMt~u<8 ÌނKq͙:拞e^2ilwo2:یwq7K!>4yMsvb z:>eï?3u83Y߁guߦvidL.eYށ,')Yks|~cꀵ>qv ʠ}m+3yk 's?8"u[ &2~!omxKp5([nYO\/VuoQo=Z?s⭇֋+ ~&e>^>Q>$3ݿ?ݯ}+oIxkxWv[g[ۿxk[K_;~>;~xS^s_;n㭇֩_]찍ϲWîxK>U;rN?#V%G3ro`S_U{M^W_U{HM5aO5t!Yx vIīC1,ފ1gb&獣ªG{}cKQKܻz|j*Xú4;~ĝX7wzcN'6fwjDW8Xw?|8928` Ns3gDg#rC\2A=>E'=&ămԥ/Q~MCC؟ yA?)DcѾ1pz7|EǗ_XXdaV'ʏ+/vM[9`SG+>y@!ǣ^A ;/ϕ&va9vΑB#=h qf雀D>WWحJZ? QsOho%פּhc"r_A,C,}Mvu9Mu?Ÿؘ1}īh_-| %s_IK|DOzf^r6r^kF~~/j^$Іm?L_%ǜzk؂lmG^ۄ6Ys=}w)C7<:~{+w Cf~<,Ծ=)_fg9pnm>[$çy*~yE}*:>[.im:.*c"{B7h|:R-}*x,Ҍ8#YpNJyc7nD15k1_ ᳞j L!;C=±t6׳m4Ծ73xaw'|!y?Z`݈6mXנ-ԋ^5[V5'b|.;Z*9|>bG4MB<<+w8y\o^W >+ ݗ݂iCЌ6ӽ cP}}nAǕмeyUw/;~Xs|Oq +ya6bȴ]9B_,ιNGڽvx_нtOɄ}._ ?a}4(k+Ӿ*}g}e.7;!׳a\ KtXmgv*nk@_X;&+u#Ftճuӄ\d>\e%W73֢b,έr_g\盹kz hB<ӾX~~F|#.0v=Շ}LQ 4r&EĘBԇP{ =̪]*#M["Z;Z?aI!h+~&z*|t#j]ڥ梦a_͎o}5<6qs_1Bo/5yL'x1[|7gv>! @:7!o]|ע?V0~ρts-U_r<95-ǟ '"SEYLKLsE>вa.Sf'+rSF.'oNoI.>eHQjK3Ŀ+c*.XhڣY3;~Z={8G. 3;s{?Uwνs\h^1o"^gO_ο">|^;ۥ1>Mxk=ꌨl.nљN}y8y8Ƽ|#>x@!j6b}yW ױ\k*ys6$eH?IMQr_M_.D[W(_Wqncnfs.s-r''ĚOßN>ڧi^L,D"}[UlAؽuVc,#?9b/;L[.8G;Uj+*>v}17-\%!؎@쵊#G33{47~ɋe 9N+wLX)ھl8LeS/rNu^|N}Fߋ}}; +{4+>Gi`}$OԷ;aDjm=:^>s8R>z^(#TEz˱D+YsMgdޥ=!~~W~W~WT]9߹$ OzI:(7ee==a a\=?c'7vR*>=gi>ߠ7bgw0&˵Q~sw"uwj(Yazv|||J+9o;ҞOظ#i_o/4]P//G{w= o3b#֦E_$Z/`A[(爵(1^F|$Zv#H"}"-/YnO>ߡ=?@Fԟ{_m퐥+w9fQû<賔󻖢 zTݖ1)摶ŒȎy/Z)bw-D[6e}܆ VE|֙ 6r\|}8}[vD!w"i[z@'S?p}. |2wҮ/ֿk*~'sLʋXbgrl +`lk=Ʈ/9=zl=syobL>Aw-˜Buށ~i^k^?ܕW{,s`ݔcf7d'||ګDK>MQX7z&b@[?PsxIZ9Aij7s&/ߞ}w9n=' uOgz_EMg.Bds(zBj\"o"8A&76([B=wD_7}Ώ<wvxOk~z)7c/+!ϟ0)nKd܀|%BT7iY#,c +n?kGv<FZzL;L\ wD|ʯl;â BRA7tƱ[^tgۈ2p~7`ڂg~7c9)qGhO&tg͐UG޿/ϗϺwzGeC63<;ynXY k?s:T5^X'T$Ao|%Љv*B S3"m!p Q$dA?gw8S|?̏?ECEۘy'z^s<;#O([yͲ^5PN=qX1ǷHό ˈޙg5Ϙ3:{lw'ú8&_g;y>gփ6x{{nkS]L;{xyx3]K#6LmͲn+}SzC_q(knil_-{Ŋþ% 1^طW7]=e{PܸrZ /φuѯ[>co +GSp^A#xǾb9Ul9{~l|$?γ)eZZW.? h?C~e+~xn:d<3wz<>u;(nyGy9 LWDg_]_'b B28vG(GpY?y=!}Zhk~/sw:b@3; OD )<&da#ۆy+ѷ4s\yXD 4Z?f }}cD+ft>sGgtwOͦsab|YCI\Y!q~s{aOxu↿#߭lx|b=fT磝|~~?y01nGS6ooUe:AOε^Է/VҁKha䷻39 Eg 1.--㻗c\oD{ wW(*:^}:{t@"l8`G}# ^Ҿʼn;GzhcXa\1jȨzĚzmH5[9ƎOX/x仱#\˜ǓO<dz9w.|W! :t +! >}Eu8G1:?:~M_\?: rhԺ)ML"~IJ7k^,ΠMx/2{j|6kܷeަ`SbɵabT W6 _5ߕaY1gnXx.8̬Jtґf?p5c^BXAA>~GkPxׯż^C7w޻i7;y9 8;7t8A}kp}vQ+srZr-y5-ɹk#J=Tlr}U}'+y5i^~+y75mDNqշ>h{ߥd˘bW!o6 QOACW vκaL4r%ۉcwݰoG>羾>7|Z/}k ^|[{D+ϚzϷv=Go;{i_4"S.Tjm/+q _+}Y~MUiwMң|~zhO}9q-e3_ۯm ;ź߱sۺ_-"M8^tq'kˆw]Žm¸>(xu@O|{0ۊU3''GZ'7AI}Ȅ1Iw>3Jr%:sR\miMB}m qxXwx;HϹ{ ߫mpX/団 wOc:Ͼد%c ҷn"7}3,|xwkN!m H<; +,w5k3+GFK%o•)yÉ~sKrҞ}WΏw8.w5G'1'uu;)cݎqݎf[;y]|$}, jrr8uZ%f9}W'ozq!l{Co_DAd_3.yv+ci,ʘS>#?o㱖9(6O/V[ZrgFv-O ܙ ځKsKܰ|G>x<"X?BKfoߠD-7m&9o@N &w8^"gd2HݪSNi4 bueǠ#'s{f8~9›.[ >:aTlrQp<6&6bd?C=~ eˋ4@koY ǩk/҃kw˸4#}͆mgC֗;ރ'ӷ{GT<%e߻U?:|9뇺?E?~C!U#@lD[r|z_1-~O_{rd6 gZy֠GD>3xƩL߃r];@ چʷn"U[ɋr*+|j †\;.!~|{ v˹Աg&ݓvTtG[ݟ~ ~-7@F s?=X{ڹ2{ i#t{_M{>hO]7,όц[=SmZ61ŮJbttqc O>LUEN{2{`;tzm1˼6{j'}%?u~4ؤI 9Ÿ9pO~X%΂|,Κ_Ίw +q(cF;.ς6:5`7>5৉ ˽zžtƊE/_bQ4$6i/3`W|V==%X?<~'xR,zߴMU65=2mSA:]l׿~v3_&!G!( kOyK;ڵ 㨳6 ]mhWP(>3qjW>.ߛ>,wO П@ԁN_t +.BؖK1Bzx6ĐvzY?Z*h)|<"zdcT{=o ڛuEy6{6h(ؾlz lg骍'lQCj{?WЉqqΒ h6yAGm@{^~Ss~'Zw0c2ڔ1>+|YnV񅳿=_9Q(ۜsҝw| zηwPϞ=xZ7~>7xZŅilҌ4GRsyH߮i|HNTBNN@?WzyfA<-}w }jݝ<ޯ*7 p Jgx8C( q$/Ϙ~]p|7,]F?E&Zo|/=9 hٌNC_xt𽿣?cyyEnp}e. ~,pW}exe]U_0KVU6ku s‹o:K*Kʯ*G֚Uu :!\se s7$;}uMմyq/ʪkϞn+vfU ZFAGtgpoNee -@SW"ݜ}|A+[PU7JԣFWͯuAUKϽ%$+aeIrEխ 0fYuP-Pu٭ ,k+dKQU HnlX0 bmj³ `)ի/_xQLoh_lV_SU^k xC]z,T5&W֢͛/+Rqv|4~'O|aUSJj߫‹ ɦN]!X fTM\>oARIW뼬.-QρBMRFTV5VMW=Θe&|I"ϼu~ jyƆ2[W[y>V54ke>2ÂlE&hHX/VWIj.L[8kVUv=}1/ӝ/;D/Vv}U9 ztzx +tE:MSzqKuCg1D#>)G@'4B]P>qWxauըw:4։9Ӯ|Փ(1k.'L&g(/y3k+:UkuUϟU_ w7. O;Zy$NT[7/C(0 C-sf"puCYէ)קRP>z>䪮tƐ2qނV|pߠI*Asf6J堐\WjJu _  DʯuI |^xvU/y)XUDrW*'{\]g!nfaԲ|N<^zz*FSq՟օI?ⳝ{,bdO/W* m['RtCGhP@BЁ²4Q;[uI@)' xo肫pfzl2JbnRJPRIO".S6$pU㥦}AQwL_?kTplhpܧs]Uw ATzYIZՠ.k_ɮ"LVU*y>NiJ]]mݴK7uz]#oW5ف)è@x.ZU~̪EgG%r)spYb*]^+.'ܪ)_J?b8T>D5)5qڜn4|dUI3J8dWzC5eL,FJKEy]:̂%HMA/tA s)}5OzgWC7۩S._P-$bzOrcB +Q? tF$03zMNgΔ#gzqY: 4u jy|QjPU{&?rFM`؜y+Ԕҹtsk?2Kk@wA {&^QW%$UeH.Eƣ^Qr.;衅Yʙdא9Hꊪ*XK*U geNuO^0 Un%ZV5z1oZаvToDh*c|,j COixd!{ 51QbPQ~sªݥ:{_?+՛sJ,?Qj)N\Q3PSo*:0ڛvW*Mi)*[U|( +Zj,b/i1K. ___Wg^ qgZi8X%YjsQeBoșLP~Ҙ0e)~DfWUKL:wБgZW)|rUѦS-hrߙVQrFUCi댑t +:er%br,G2>C&9pa&Ѓ0/9yh'&Ѧe*2JynſҚjյz1ߴZ*m2ĴyPB=G2SSq5&iR=afU/Q$Jt|=2y5=BP9=Pv.NsIߢ4rXH(EǹŅ9(@.8Va/~.H9 cfM[USeBc:1fI;#YÏ*=t@rHKNv1;\LhKZU}|-s]Vz/jE G҈Zj4ETy*‘Ӥr,\?7i)*MعVQׁqTEED%&ӫ%M`2h3Cl2ͲTbڪfP'8O{sAW!|Ej.W/|k :H6]2!Oc7LϕWإ:7 r5C)Y1?O^/w>SUԈYǓtꪪzI(\K4r7)dֻNrz+YotN'ɯW2]M#fcNS`SW;w=ם O`p7#)CC]x~,Q1㨺\r@Oz3\~t>3͜^K$-Ir<~`I +^~5ƶ%zL777V1\˽kt+ f#+O#.52djΓNW:Τz,3k C9I8E*T4Ĩtec]ݱnD{cWVN8ei+!dtzՐzc_#ϞȜjUTQ^)pLKZem]\'[Ѐ~AʙZV\t=!c[s9I#YL3`"1ye1dIH4UC4ۯ +pC5+q[DI,5ubٖ&ޥ:~~91Z9%emx>Lͱ 31G [\Ï +"4E^?B}]Y@;:>G5hg~ qd|TƦBỳ`Php)c㠇AWCg 4 v'BAA'Aϓ> , $o(zh&h h#h/u;pqfh+AׁKB㄃^/~ AKCӄo2!t,z4sc(4@(t> +UvvfVBAKRy4ͬBy|36#^a4XA ԆBUUփvv= +Z5ʿ +Xy$.tн٠GA@'A@e /ЅOB(ϫ'h>8h hg+.vY(% +v?%(yNNv +cS_ +P2aP`OaK-.qOrm]PhMp +Ճu=>F@ׁւNvVFm +e>ޏzF9pG+ ~|AkAG^C9*A|&}%({~AD"㠻@l1};:W( _QC?M>=Phz(;ʥ'/Y xj#3;ȸ>SC.['| |7]S#d4>#"T ; 0'SoѽϴK2:7%7~'Ϝ'/3§7ߍqIQ!Ði!SϹ?ߓԛXܟ Nz&OBi"Dh?aNOzHCOQحn;vok1uaڤbQF@R⋨ː/|eUg$Ls6ա7j_c0M}I=r~/?q)}g O'E .|:awSwt kT8@f28}1Z( A*㔌ޟ; v=]Ny7\OZIM9mðz˨vy|؏b2{>[Qg7r߰ƿ.MTϣIša/ՍGԍ +W*hm@ܙ'WF"I^`D'z{ >>`4sRM*;UAb"&~p +0LkOjfu#ߧQi>v>UT?mב)cߒח\׻/E -}ǭYmlZ{}'Vo-6?17tF։q\ux}a* n#,#u@NU\O/f[(~*!^d+i^|fqt)Mq6 1;yώcKmemFd<74fwߛғkc6Ξ?FB)cwsLOQ{RoІA<|!XC|an<8]/8~qR 5/^ӾtWD7yLх?;d&>(qRta$2GO1 >ړH 쳑cΓT*'z*YLL9Skp``&-X `Է"׈ρ$!w/: L5=Ίo5qRdQ\fU`Bōۛ ZBc ,u=2(76I2e 9;,?4l +i;D{U FWtQ߹,xyx(OOTyqr. +knF&E? ^|ijG8烟Q"pXۜ:ctc .V=?2YÞ^C>e\wMnO zn_S8iy$8*}|6C}L&߇ws6bjdjUC&)M*c{ 42m .i,׳z $ZNNxN&ϜRƉK@R=WF(:bo(Ko\'j+%4`w$LT3j +lz} +C!:b>F-0'_S>ʁvW2o:bNͷ[>V`@keJz0<SJkXj0ѰD^&I}Hg;=Fs}d{:>i?ZˡۜفPf*_ kvBvdES:9A&nH=#/su+&/[^wNyQIki?fYwns&ӧh'4TEy961w':{Ώcn8wYwJP/`i9`Yͽ3yC :_p+yZ$v۽{ [yϹ3r9wisMKF) ؇~ uVȩa+ڃZga ғ>UbJt:OEuNlX#bCxΚ V>6," 1k c^'iޔBAtaľ +1jJ ۧ i:ǠJ}{65!~$=~uj4藻 aOeq;SXdy3<=z_ܷWIyE42ؚšQ?eH*'*1CZe\?>aJdvGkj:ow n\]/V:e Ӽ UQo;xc[*^}iR7G/:H59u|n/>gje/Gtqt)ɯҭ7V^G ;:)zƾE {/[P4Ciklƿ]Ԗ9/3tzi',[G4B X,{bTZ + +n I.Oyߗ4dtKaaor۹Osl͢d? M)y3S}c E;䰽@ۊ3x{[:9/g P9е6q[n+:(VQgv]m< +|=:Fen'6#P&cOracWs=νkRw,j mp眵._g\XP6t-|Lȍ0lxyJ5}RmYYqRmqS +wg);VGw&|𙿈\sDkG Oh&`R +-0N=*y>uv0;lʠc ̽vf:ؤuN;k7lnv9؄ݼf6lV{r70q<`MK홓66mHjj5 +>~X4b3&2IѸv0l0'q;L!;-T_6Z.db59 Ngad]ŕ3_w噗ݬ7oE73w%n6o7l<y7ZF2s͆-9fSYf27;˗̬`awC|Qe@2W S͚ۤ3TF.QI켉̊$֕xA* Ko*v%AT9Y9 uʚHr~5H 'T<ОOKH0'8Ds6HfY9TT5nhgd +_ןNÜQuU&6  s ڎbULPQa:tS7iJD{^6uASQ?Él'e:Yf.vEwnqU}o7Bu94FiMA6%7IO'>Lf49٨Dv\7Ȧ&RnsZ/|J  +"i$y5 HY0$?*L,gT%OϷʕM]99YYٟٜgsso-^mYyY9wv^vcYmm՛YVSs{]֦ɟmengh綝moGԣu&cZY˲:ct˪k[#8nm)ld\$~s8IJ61z(;=!5 Xjc\؊,qZKQ%5AL&bPj~SSNtl(}591•/UJѫ q~"E$Wr21OoI⧏5tΚp[E|k-?ǘJ^ߊas(PEJaqgT-ddTkb-9t< UzcuJiL륞iYL{Ew%{-d͢z忀$,Z6 u &ֺ}kAԗJʿt}J_o5^Q&WR^OK\%1QJ_se Y0*J_,ڿZ/wEomߓORG-Y JJ'= 4ZR,צ;[kZv玺ֶ;S><az}V$IH+VJy+Yvފe++i{ǝ4 4lX\vz Bimn,Q-5}T]TfhDc9ի$FG?;ef3? [j붸66n( 8s)1u\̝≓ͭf j{bN9ziscaq`CYf}p9]HCw@j*uzӪUu2oye TS!U(\y|6>@TZHw9_@ 4lQ'|I_i n"W?y9?D^v~?Gzp]͈&QkIKD-沖ETzkT\?%>%[!GGI%W$ULE:OjZQN-{. ~c\I +*eŤ֓x墨*Uҡ=!?>WW?ᛊ[;~_xr$TlX@m:Pq_b tTԃ^YƲ ~e@{Ce#qD5ZضmNmu68E5Ojl^Z D?gYa6ֵf/L&G^c+^Id(ټpҚ(OI`5egT|~{C*vzn@k]c]u^ޞRZ6x 9m@umm07JYf{SZ +7VF{ohrߗ +4.s< fhH<1a nrb0ϙ[Tmk_(E[B-j!1n5"G c54!7ck + LաʣZFkDU๓RC]Pr1GS++$'ʖv Hc/*w|ꍾHuFjnkBy<< [sd+8N|$oJ'Wyp=ܰ#'gSI \bo/.zQ+0{sr=m5hv1ߢ!yke 1W[%sbC502QcTcҐܪ ݭސ\ZvcF)X]B:oH88xdӈ J}ESشWJ$~s5{ҤEZP} oxʵm.src/1Xr!yk 76oLЀJzi^WUuZov8{v:ڰCGpZ 0^$d=M;n^W]ɑn6Hxn1TՋ{?Xʵcg_ڰ bS946R`LT9y|Y]WhCK鶖"h\{EO픫Z";XWd-'~F\q5l#]9fR/~ȣJ(/75_|D~V[g[ʓOl̎?ԇ쐱ȟ@,A;f;$tW/d,Q;j4>W"ѷ`nMknٙBWY@/\?!CO`ߕoۙWT?;`?Xm_Ml?o=@VCJٽeҔw:m/ >%q&(|\IOt - ><$ˊKL >*q|O+AKA+-䫬-hH@^?#vYqw[A =A[y^lڂ$dLReW <ۂIm3$_b[|ϔ|Wq&wЂwv2lG=lg}ɫӆE,үU9Y$W#΋N+QYq~*?+ک?yBb44 !˙VQp9ԥ*J#N)PiT{4f pStkr {5|Jë5|ZӌY $<ڎJN=ᦆiq Wr\ս&5\?e pu%Y W`.o)IX_wpzJ. )pBl WVRrk~oED=4\kJR=4\ޚS{8)h~ B4So. Iû5|j5|Xo UG5q ]ÏkxOj\Z4z?jgioprW(%ixkxgh[piF)S×ix[Whx=Y*hJ /U^wix߭~hxwhG;5ܫ]n kn k8C /Q /^cF5|4|R7hii?~39?Q4\5S)C7M*4A 4<[ڭkx?%9 /p-JTjxӽ*}e?; j16,jne)Q~8"7i~Ʒ^wP,gɿ?O#ȿƿD5e_%O5~7__%"ɿ$M&M5{_HG 9S_ϒk;E%___koȿ3ɿۊox'xƧ߬ ?ׁw4&2B53_ȿ_N5~{ȿ{_D5~ _7k#_#a~k_ȿƷA5)ϒ_"ɿk|?_N5 o6 v#Q .f|5x]> #aإG!]݄ P|I^c^/}u8AdF5G"3|O?J}={.w]Dn^T]~ +]"FĘ~7-x!*N!n;#bp\\F{Tn{bT|EE,o,`tȭX䄽cAE{F25^6Hh{;-8M^lW` R}mj {Fޔ-gOw՞#{KWlWe~m7l/^ޔ=*/h{Y /h{4/wޔ|_SV{ ^~JN&?_Gp/h{Zu:yE;c{{|v7O<%@y&ZCzNzJd:tKȸ޹nzRUs)+9'J~v9MM(IIozm,pIgvw?n݃\v?nn7d69u*WIIo^B~|C^΢VyU4MYTyҫu[wrKvP02h$H'#JHF: MH+.@:Bg"mDZt H"t9ҙH@z)VӑDz9ҹHF+G:H"}i=mHt'Bڀt/қv#]tRA30#7"w B~nP~[1:RΟ bzv sJ9kv-s%Gʗuy2*ާlHk,Fɮ.a>pV\c:Jf^a>E IyhdgI .#ݖU5-{vk0jS5Z| nx}O˭s7֖.̃5gz =)ryv`tA;{Zߒ= +^֘>E60Bw s7@q:w@^{R ibݕ_{QzS?Tkfc^Gɔa G՘nP=b&6d(1ZvN">K&)Ϟ.u)zm{:A=J>&QvàXS1̶j 0Lv5w性+Jal}5>_Jȡqs0_;<6<0q ɞar2A>壐a20|K9/g_al`e7zg }8iXrs Zl5w>M+ ;|0bW[cd\ŸVW{zHgS(\֝ Υ @=x>A{Fz{{$wkĿkK jGjFo/7{G?däL;\t|XMu+xrM'i|F_Jv 1m@UR?KV?&tb=E|e& b`#VP|e@Cr-cեl炻ɍl={X6#O֋gggl ~ȗ$T%^-xE]~k3BYn*U3dHB\xvK_6c:ƻx^X bTXUL$d=q(D7(;ooeJcѾZ64?ukU/c]+j㛄Wb-lH@00l75v15Y*#Ųr޻NzǪ#.''/^# ҫiz;mak:=ָEbnzIPs[B%?'B>礷M/꓇Q~9z>gnr=WnzgҫwҫwKȭnzF|Z.wӋgHonz\Fz]Nz3y2w^$OFrx7=/Ws;M//Vs+vKJ~NzD^E(Ss;eыo+9u*%?^g _Us ^r@Io1P~^Io^t;7= 9FI!7 Y^b猓K7=1X +%?g7`K9⦗,?Iz޿C䛤?uӋ ^u7,hz 哤?Brhz7J~Nzg"J~Nznz"y7DSIM*oUsu~J~NzG3UX*9:3UX(y:]=L^*ůDIU7py%O'rBү^X)9:rJ~8R7P*9M/Q"R~Nz ÃލnzR 4nzLMz^M([H/}@ӻMH/}@'7= ~Al\rE*5H.EH{Dzr)#B;EH#-G(bnCW=:٣chD i-R]Dz9.s[G!G1 3bX[T AYZtİv_'̽;t̮Uӊa18R1ɣbI̕ڠK[cXWA0%L7Vr 4O۳WwLC:Ŏa-S1;1+ cu%xYwa%wZ1L u?-v}WŰ$wY1Ku Z>W-0UOl1oڊam :bX{fCn1cbu,wa ^Űv310IJst f`gЬ%~9d +T͙Fs;hNgV1KXY:u641 GX1,?*cXİ*H3ZV1˴1"İV15e21<31,/~8xgǰn.rʳx>_5;ZKlѱPU:vU +bgh0Psƚaܪ$4˾ck w?+kĽlՊ3:hxǓA.[y{vدd@.>7[gL=h:F+h6`;#8h^Q~*ZO^,J7h~yk:v5fk{%h^.#2eq%>g\~~nŕ3SڡQ#JEyoa15X?s!R`]!fNB۫&x҆l_,_m}|ncM6ld + :Yϊr.MBiLw(Oɿ}=O2_6ygYƌΫ͑3s9D,Q]ŅH4=]\^ /Fi,=Knz̏iz_璞:K{MO\(Ǔ:Kqjr%gܔ+~)W/w{ڦ+t7ꓷ?ufoNWdΠ3q~m4sϬryr\$G*ט'uKH=rNȕ̓ve#Rg 2\r:_Psg^P礷MOJ%?'߸酊d% %?'{ңw>WibYuxFw>I*"}]^ӽk|z._EN71LA,=CwfSgzWE 3.qKkIOg]/:KЛ*J<Л覇}/rM_"Qs+s ȟ*9 vKJ~Nz^7=^ICHއr=Q&EIoQ&(9Cm7h]N/HIoZGwH)wry&UgvWi*d:}M/Q!IOgM?B!.'enzأHXN]')M`kAӋk ٫q; *$PUA:틱sN\cGʘυ6اa'\4?Ί8ZmϨ؋ߧ* +K*f38hsL#Rw%pcʃfNw(-V4_| k򼦩}0}h8CUB>] P˅ØίC:`, +-(Ta ?Wxh]w0 j u +H|zBטQ6Jߌjm> xG6 I|p[ |G~x~ "HK#Cu:W?BC= +Wzeċ }K6|ti2: TQʙį|Le?rGlV,)╁i,iV>1qWS:@8MN5vcd%vGy>U~7~dy~Y'~ 'L|5f zg#=bh^|K28G| -;Q)ޠقwhc|euZeBy:CrW#ߊ|U\k|>׊ UPfMc^y<=>UfT3Qܝ3LDIJJyUjթQ=v;5Q~l \hS%0i7T_rߨ?v=,l˻Hk iiqe3D@.F{AmF@LZ:ѤlM\sfǣ-*,:0oD/BDvGt{uUⵕwS!/jfb\یo_E S`u߯`xP}yo_v7Lh;dŠmh8i5ST6eaKYZM @6eau߰YS! }2daSG8NL|eagv6Xߧz5 }`2|uA%h|eQv |zuD-=l@Ra%clO@Bi,U>EC2k^* d$rh'}2o UɎchXvV4[lKLoWcL%~õo 4_|/"7›'4Us-|jw¿ -Cwx<+vmi|`ϪyrMjB):{r |->`?_~~i|$3\ 5^:-Ob ' b"I{fU( {Zxx*OpBܴwg)˳Wt=6ף;,<@< WæO)<U _Dܟ'›'5|SA'Ot ?|m|}uR]ܯŠ,NA-| 4w +}i'4~O?A + Sr#i6pT5^4OEXm9j |Ϳ(Q6#kO,뻀2- |iZ>ڏ<#-B7_k?/Hˇh_ߘh8|HGW7OEGu~Oh2bO/~ͿjlG5~Kmϝb{Y6s'aI<'"gk|UqPxOqeA_  ExRf/ ]_pOUx',<@x?7|l7L>xBUϵ'ϴW5^tQo +Ҧ/]>BXG'4 o?>L<ԏ{,< O?n{*$}›'4:. @ܯW;G4S7ąG|?G 폮xTqlUڿ|E_?qmlWo''ia L.#7lί10L/F<ļg3f:qֿé{9eٳ̹dYwHu.9j٥ǺC|dOv]!y;Sܪ[/r(*ィP+[49Ͳ;h;8g#|6͆Gol=rbv}o +)BLg mąr??!6W]-8xђ (߉5fT]ouWg0A#Tc0lnYlqPa m/1h/x>Q xv;|6`9 _ w7yM[AwS}0(}E{T=ȑ|r~Dz1ߥ Ow,}쯿7]}VewuȻvڝ*>04mʇtVHi^hEkѶۤz(ڎ-xRag_@Ѧ)2狶$OA&Ge`,)#g +g܈7c|HTY|;0j)5(9׀2kTC^M AGWQ 7*|T|Gėo&?OYxCZڿzvSzܨ#G,>nW.>u;%qǶxG?oGg.9>ou?⏼lvTf]7]蓖_my_X89Y $ۿڿCw<}Ұ׎εY赃؂畮V}SH;;0xNbpՇ>TS⯣Rp,߀2/*i/?UX|yڱ\Ie[El@9^]u`{yRQ$Ɓ;^Ŀ<ؚt7~B YHc$kQ?02iHtxVɷPkOy߁ĸ>帮|=q[Yh@%|icúI|d +!l|_z >4m(dC^%;٠}ھQVzGYn-5Sƽ59y9%5ܼ] C޼L^u9w|Z1.F_~Qni +#  yOC]i2bD'9c~nj_(Gl,]zWNj0 v`*Wk?:R?0O5z!۶'\}+Q2yVɤ$JQòNt0K&q[}~靬¯u rD4>4JW + uW<MwRȾsN~C8nOMOEߍt86x+v_> 4?^R9>>CGR諰~+zQ^ ʁs~}ZM`/>Az#.)wX8_sNq1uʛElJ=ʡ¬9'VixfT։u!! =VXW޿.?%T?7{ϓ]J⻗Ǻs2|x \d0b\yXcy @4kty .\203Yy dd1&Cosby3%ۈLU]}ZR|P >7UY9 {_4^U!̱;灿yyX79#8_Qlꯗ[!ZX7ιgYE_Q9Q|4=E QOYt[ +1y56.l3@.Q1:jb.9L|&SBL]mvߣȰ7NQ.\`9.oD9sӭX"N^>$W\ȹr$֯IMgX|qrÄK0ٷ[YFV (wG~r}le8V(ܯoq,M%]m|Xoyn0sGVﮆ +o7 Eǯj<"dWvCQ224\ZP& +_C*>:#k\Ȑ6 )u-W3sެ-fowMM{ +([򷭳;uwBm1u 6mMs`mH6[}idymLƾ=j(ٯHj_OXLy>SHwŧsnLjpa`_r]XW3xǝC@ua +oШO_`l(_+:}yг;WcZ)?WWoacIedj;0iD_s_9j߳BH}͢"~0q|1%'G|mu8(Bs[0C,ߕZ9_my]L/riX{2JbMIy=zm nBIVu%og,_ga Ahxh1o>wr-Jk>{x@PGſ6[t,Q}{}"ݵ Ա7З+"C":3GӴ2#2[}~HjΕhO1'o@&`¶J}-3Se; ƚ؏Ȃ?>O9i_)}:_:qF%p1{|L?<d-QBSY Gc|gooT(*7W{|Vc:u/ĔP' a'3ƈek{:~ɲj|G;7ǿl_{t|*~7YenBhgn:}eYwlg:7RR;og]>g[? אaK?"VLge`o4%dMezYc3}l6aKFe@>aKzfe{@2osO?{`dڕ%N$ dssA+ʹ=qn8\qUۚ;fϵD=Xͬy?_s]?Ow{<ߙG9w<6qPV͏+(xoTf~P'+9]7gm +GfrزtYzr<*H sCt+W ;yc3~aO?k?Ϧ=q^j< G[v;y0 ;3wUfƮ&9[B;:΋ oͽTj*{ޡƺZ< <={WL=ϧf@>iy{LoyIz䘇q 4w:tmٺ}GO'o;"@=͋G95==8ъMԮnXLY.y^&N]O%={Sq#NAOZOkirRZOLOK>]Oå.Y}ydpȻ~(8xL6r=ǿmdWL\`yΗ:1(#e}? W[RYg:rnZ;_։)Wp=z~ mVosxx NMЙm*ݽl6yI}?~UV;8$NN53`ӏݛrһl{{O7o[;Wzwcyzv6^?D[e].a^sjv[ tދJy + ')X>kn"WN+O+G|?k3=ofͯGͯY˘_̯ .)k~/"_~ީ\?㩶RLE iEw>+&Igy%yWH +9\Wm7*ys!mkuЊωcqҁ e;%:Tgesrٽ]뛝N3}FK{^8/9?bJƥg ZT[ eij](NE81y +~>)N$؟N?։GnBbu:AňmE^jBZ/_/BRuĹ7|?CYZֳі/5YMOe){ޠGOiϣড়6(o)M+) +Ɓ?9ydh`F?(A9YcOmN>hIc\ZD'W:gzdx(OG̾?gO RV~C[o9jhoL;COo'i7>Xø~}mP)}~)e3G}< 3?Rg~}T#SNV.qLϙ=K;Ѿ*\wx~Ƴ$oTJ6Owo#GL 9Q*ן)zdu>ge˰wxDZ<>xjy+3 [r\6 Y֧|=l(h( _$~VT*nі^+^++!ۗg\ǕE}z96C sסrb}z>^~#Cym˅Oч&w#iZ6 +>Coo8~ص9b㠽K_"~hG_Nab۷4~vSi>^g[s]m;d6J$ڣ){i5}rvѵXWwuypr}:-mOD)[ߺxk9~oIBkߚH}ռ;SUnu}?{C?|}Zox϶dR۳-?l:-T˷ߊPnom9Uԫ}r*53٧OV-5/O[#N{,:}*q?1?8!׋ +*d}+Woѱbo&T!5kz5 ʅWW/;izN)☇z1b+N}(rVB1@hWҡV:JiuVzbTZ^ar< `y7Oo:h+~CdƖ̾ڏIyW^TnK>BKa\oGx#)/S{Rmϗ}Ǟ{5&5&pO:&?U7;nzL~h%?+yoyo;~-oޞwJxվ߬{:ny@r{xg8]17߰|]eBcγ_U e-7v~Otzg+Tl 1]ƲHGZҽ=WhcB}>-+9X|'Z= b~%TA m7z Of>KewkK;l};c^%ʼc< dcAߒ c޲nG: [׆w<`L /[5h޽H2_ڷy\O-.c*_޷x HhЭA#fHZZ~s->o.|/ҫ[Y3#|oykC煯;!a>ZJյyMY })uU YcV*> )x"gnWmzw5>s}QsKA>Gheۡ +ftK?t-͵9(*$0GuoqAI6{uo{9~AC1f͗XjӁ|KU@@Oa5)v=/2w'b>OC߆S^{qڏ)1LͪW2TJǪD)y8,3 LKgQHS6ːe+z/j9/oy2^eqE徉r sXwoWmg|l;8Pz~ns-?/:3Tw<ɋ1,ްgL'MP+ s,:<]z]7*;RNww&t,|MM~Y۬{,/ljl^vx"t{ڥI~7~(ʖ(+,|q/Vz>Í 3z;ǹV!j]T,_|KxXw<5x9c<=xjGNz<@aq/^\g/czb;} u,N_hX*^˟g/H}t>OgD'xǚm~7ܼ%=ݔ~cm+w=U<jo] ̇ AWay\i{}~x?IҶAq>纾<{`VBxƇ Ez&`& oڦ<%-S}UvƧy'9C/ee ]>G}'c#}x-"Xy'%DЍ59_߀nLo\lj.lFQsO߀Xz\,7YeQss#c-Iʈɞwy<\ھl4>2-gwsfg߿wDHLgRn8Tj3N.+OYNgʿCS>M~9/y?ٖ9踏G'2gŔYf͓{2j3Fiٞ~y¼|\~Rݕ ]g*g;M^ُ#Jrh:E94Yrh$9\jˁ,G`9,9E9SrkqF6h^W`owt&3PanSRz/ϩSVxb'{y xG?yq4q8qËZ>8 {vD{/S}{==oH=ߏbGJEi +Efaȍ墭< 乵0>r%'CݓcB^Y~ryzz. ^lĚ ~o zoP\`@ct؜`_K!l֖MyK} |Tչ0 Ry? >J[-W3dLL p &@ <[bkbwGj8Ǟ= ]~^[ZZk?^ji%Wkq>3SŸ o5"?3ב]s˘[+9nE]MY<|{Z\s➂\>j7^1W2\< mt>kÃuv\@{.vylO9?r*߻ q 5v|Fk\9Yi ګ+L2_ wO WydsN58ݍ~w}U} }ː6c-E>@c#uCl9#O ʋNf(LxE{wsZ=%߆|^A6mP1gӻt˿k"/nA>vzFtV'a$  9fߚ|WS7ӑ#bēyXϟ#>0pƇćyݓ/Fvm\[`:^> SݸXg;e,t C<.a>̟#bgqF|}42OUڙ0RO2IGTR^~7zwV1ݭ35>)y>o-yHkSZq~[^.vSGk\q)7'!ZYx,ֱJy\uyw5alr;nط[FޅKsr~/}Ɲï_`n8==zyN/6*:Mii6=~ cYޡ!p-xd,lt`VmNm͎5v[ignƮ7k(~ygϓB63N`ukPKieu/SqLE3e~Ky̺#NWp6|8K|.1y]WiIyJ_KuL)^"u7t%gQ.۬Y͹7Þ/G7o"75fFvM/<:8dhFFmOjmOk,Sn׆?C7bgs͟ +ouFLZ9wS.=^qF,c}c'dLw0hq=:~9jc«-S1U?~ ceM1q]7sBOyMusІkht:!Jʈ0e9 SGg1^獣Or|M=˖7%_\'*a>=F縑cCIݧ.XzྃK3yt^ԴQ-mV%ю72eqk`ί*v1@cW~n75Xx: c{>=w۲¾˽*8h10߂\"^M]_e|a_`͜x 'X0?(bG7qCpP1V~GYjF~P>e.>+޹}=-1j 3xoZrC4oʛϪp_;6:Z-G>R{h۪pywX}ݺ\ICvqX墨5#Q*ƗV;hmV#y|oYp]Hsj۸WGs1ga9/mc{U=ǢgVA8B> (<ׇ|| #{u v.rpkڑ폯;k=n:]s6*FW_~739pO߿B|vӋ֭'9_w1%ϩ <Sܟz;ypk[z.;hԸ{rN~HXAѫ/'ۚny\'y6twa^`~kQ`녜8ZlWmS}QzSFNM_ |ltzᛜSw?xq=֤Yʞ #R!K~#v3Fg~p9=[׭1N7yd rY:|ý'|p9s:*ragzzOFoc3GH? n-#P"sW}N[0z\bof]ڨ3mg{ywJﳞ/s?-Y/!هsr}d߂>_AKcϮ٥#mI3\};cߎqߎfݎvیg; >ȃܻ{Iݑg&guxOE6r񆈳1~xXb\g\ydK޻5si9/S< +umhxgC;E Mn+'"n!uS߰>=1;^8>vyU~;|n؅c;/wR>[#UI9qKs{I~sgzpI?nm|oaOءlv9H?/:dg臻)]&Ps\~7&}!I-zalgH|gY{&krliCgsϝMAv;ϼv<їؖU^y?7#ZOw ߗ~ߡCàGH,tyjsgɼJ%uMyyWm!8}'YWc@>A8=9@˻ȫ^D^iyV"%I]pOD8 {v<1tmF6qf&s9<(+vƭ_X. q~ k3|Cifԝ+yB^ϟ9)%|v҆[]}sN3R"[WvΉ:=9bƷ_469QlId{dޅkË<_ouucE/=|tΚe>|r1'c k`'R%rEo~3j] {Q1~e_"6hs +N>tV7.o{C`+]79߼t! +bY'w'3?^[4݇u:=׹uv }@ny#)C\߯[X}9:3s|\o]?9l1+S>ߑ>'cꀾxN2ch煽ަ= }]Sk_/o#us 8ޱ[ +-3k!R8;zd!u$k"oPT}~L]'͚\9kuM^^BOw'>G!P?WU[*f*B?=#!H4ϬK7T;ȟ:luL?UïE3qC{c|WCdaat[Q}|?I׬ + QO&"04/]+DQ yBdnEʸ Db"xIдbdmS!/ A7,./VVvO8VqD +zS*Vzh{Efvo%9"Q_Yр0ǂ?Dj8~YJߢ%JiR!GFA7Ԅ|rJѐ_pmDu;T{d(.g<ဌUj(}8CDyC0 ~L)5Ɇh*LK:  +: =qBLѾxެINk!ZGut!/x1D/vU^3)8%fN$fy_("#$`Esըʁ+&IUҟz;YBEb{B0"|~_O 2. +GΡ/#(/;T)GL|+ur{<b)3,*pcO cT$M-7ifقE3}phl6݇ -饥g*&&L`BY$L.Azӯw&bpȏ y 2{TZZ/+Yՙ7(6N,7X`HM3g,!L;U*LV.ȔmBK/M^(}ܖl>݀>1}(gfhh[E$Y?m5E$oH/5h'qʥ1*r6on$XR*2+L$Dja896c4%2G Y5;ScJUdHW|PҋX$(r䔫_Cl?E7̈́MyFX^l^]KR=ѿTzJ5W.~0_36pDkTyꐷ[X^Y\1Yea9 {M$H7vhkZIT\D7IëgI&VYx?!H+'Q,Mrl甖Hu?t6sƌRcz1bg‰k̬v=⦘YkgX %hX$AS3-VI;+_KgWcoN)aZYhd=vV4~ VI[D8(T F1S*R|ԫM_&Uje0 ʉ]mHؔ= |A r/S2`@,֐U^ +hP$ͽͿ_l{KG_kPv ȫ7LXJc)+kd] :Y]) /A$Ų6K"s[/._dC%F/7̑OS-)-uf)VPTҜ<4Pzn[@҅71E*QWaq{Z˹^ >y &Zx#QG{̄31Noof5Ǔ:o_!Sղ>+0&~qz!-Afը :ڢrEAѡiY_^EWóEgH::DN|M)CUZSC:[ LI( օ=7552jߐ:Ǧrƈi'b|2Vrv啻1qFL?eb&NU~X.L]dvyMĔD8dc}g3-P%2~ƢdC5ĆTQZ/TfC0^$1zaj:VN"YW+)侀=(SP #{Ri$K.ґR`f +,.X& _n!5?z]0eov2n5 P!YZ >EF|sHEcH,X C?|MYp?!ϻ,)NصRQWUYiכ"yI530Mt8Zsɛ@I 5ʑ(S-^$]Nл|Y-trH5O:F6:$-tx 0!JB,GD c +4Eh/7LMO/u~KΠ<J;t DC+T +0}~6<1O?]!feK/ef;3X4>IMDԍmd  +!j02Hb JrcQ?-c&q |N6Uo7ByC4rQDfpn4E/eM.E߈9JB~@ݏyE.){ՏΗDؙ`5usQexp`{e|jeu x ![bYQ=O.z6@wekYO]~,,oȲO6)X C1JjV> `įGmF=x psQ((f,"h x7``1: 3x+0, p,hB?W?K`|@; /e]zeUw +ȇ,G~qyM_U<~~=]4|ԉzps$ +rK zx(p } +>!ek#raW2k=|z]_nVe^ +zýsvxZ܋~ۃY2*Njw~3nHczjnHIPy%܃xQ6^*Q&:Uo -Qz4nq{ƭDTB'$N is1$^J<|4yg=p&8?A+pˁP:nk-J-)V/|%-ZmtTt "esӀ9_6SrZ=ݛ\&se{: rmss (]Lao)nw[!b\XVW VWͱ%GÃ)'--#%lP;Dx,J(Rǁ5xفy]h+?mu!mm%uh˰m ·ߚ'F؀[rj!p]!m+ڱUܲպUqkStVWז6ͮMm]{s~L3Ox9D=({~eўuk\3,N bCyq~w>IWEݡ*.mh-mFpb }t{b=,fҼÅC?퟼?ދ&QU Qr0ݽ;scv%Z%S%5?^!1ƅq@-ߺ:ЯꝳV m'dbllHGyi!5kIr +|- ^|YaR9XᅀV~_oqK>)>'m*oUkC>?:_rO"@"6l4h3up£G +r]eL",B9^|N}w/qlF|ƒÑ;L3?g9s"%9sT )0%e({*~;#]v_^?Iƀ?*f` +kɫ+(+({{e{= qU 2>F s3Mf|WC.hʽ>G*k= weAS}| @chO 5yyyyGt<}oEbsx`%C?n{[Y Sތ>]xpn~ +6ܻ_U~xGr'4KN\>T=is (lX=XeW9xF>L{OĿLuϞ6ZfC,cZ({ܫ?6:âOy,Mw1tgx{_RRuŁCͳV].Lre4 kOZg0nb[-}Gaҟo;Gl ̃_~{^=|eyXpߟϩN\UCZă^!zC)ig ߙQC(8?>}]XlϣN0~nN Ê{|Bk153q#kX9U^Q,?8#C=: pc)5ϣ)E1=tZ.{8.K51h*|uM(_!n߻i^ws Pm料y۹z7Ń9ߛ8.kK̻շw?5 T߇M|B2.e 3BFY["pqג/y[.{f] Bv&4]z VozYt ++q3]khرX-ڟfxUđ9,~Gt_ڰ[5޾4#~w ڋseoG]ޥɹV>N2nP[j!UeͤIAKq9R uIY0'&lh _0(sb> vwЛ+BUKV +q^ D瀲2R]@tP [0䘗6`i]!9qy%,撑\@5e3J"NW&trIW@BW\:rDc3}b&Wp2plM*މ ~h6{LU/gCxNe)kO; ɴVRUBrvCZ:%K^ X4j"3(Ԝ/ JE&cIW-dtl넴\mAy[/YU }bC ZvA:-iH:J . L\RrwLoɴPr9;XU4\Y 3et8 4O[,%NDz{|:eҨmV2a01+RɢWiwY`-2nNCcdByGu3=^"0G# k{y[#" JXxyy4+oy>4?c?i#/O,T+>:k(_y9 v=|oKQ.D nC]Cސoy|$ww#ot-/7D@tE3Dܯ X Fl IBp_`ry/VOr)Jѡn^ix**ɔyHeH~.Wc"/ȏ -󽞮ZLOHTiaR>k٣w=ҡ-AiY^(EӪeYY,##HiboD|~}qqk3a9cOjs-d* F4RYn1oelHo`쿛;8L' +=~O5R0Jq4D*A/St$kW_#mU 1H^K?WCX)#-/%)dxv@x1j;^Z U œ/jWY1v>R# ;)>u-+wv42r!nSI -싗 eom$OmaPxo2 +Q;xKa07ʵ#怎68ϤJ6@͒t䷦b ֆm*֓cLÖĚfj'>Pvq2AUvxD x,0ԓI^t-`G jkH"5k _hO]O&U舽߳ZJE/FS*ȝH#@셒A/T K9]٤_ڻ4`TQsjqL6kR}6ڟʙiA T@ K|3?TM7 ¾mɃ&E$^hT@[ΖvibS x͛lR;75P(<$ͱ&ΉLI|.$S$_>0T}e{zWtJ!?M)%H]ڬ0Ⴝf%R)) vmrEv",f[ VEiqMG6|]@G v o¿B/YoYƆPe$Z Yܪ1Vys+Vm_$2-FaoiNMBPΝN]c?w4ɺ`gR3N{ϾclVV[KuaaacC \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run.json b/Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run.json new file mode 100644 index 0000000..25eed1a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/custom_opp_ubuntu_aarch64.run.json @@ -0,0 +1,26 @@ +{ + "componentGroups" : {}, + "components" : {}, + "errorOnAbsoluteInstallDestination" : false, + "formatVersionMajor" : 1, + "formatVersionMinor" : 0, + "installationTypes" : {}, + "packageDescriptionFile" : "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt", + "packageDescriptionSummary" : "CPack opp project", + "packageName" : "opp", + "packageVersion" : "0.1.1", + "projects" : + [ + { + "component" : "ALL", + "components" : [], + "directory" : "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out", + "installationTypes" : [], + "projectName" : "opp", + "subDirectory" : "/" + } + ], + "setDestdir" : false, + "stripFiles" : false, + "warnOnAbsoluteInstallDestination" : false +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..46e8ebd --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/progress.marks b/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/progress.marks new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/CMakeFiles/progress.marks @@ -0,0 +1 @@ +2 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/Makefile b/Increase_Bedore_pipe/Is_increase/build_out/framework/Makefile new file mode 100644 index 0000000..3a169bf --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/Makefile @@ -0,0 +1,211 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework//CMakeFiles/progress.marks + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/cmake_install.cmake b/Increase_Bedore_pipe/Is_increase/build_out/framework/cmake_install.cmake new file mode 100644 index 0000000..e5c40a8 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/cmake_install.cmake @@ -0,0 +1,49 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/cmake_install.cmake") +endif() + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..46e8ebd --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake new file mode 100644 index 0000000..c212da7 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake @@ -0,0 +1,19 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc" "framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" "gcc" "framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make new file mode 100644 index 0000000..45045fa --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make @@ -0,0 +1,110 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +# Include any dependencies generated for this target. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make + +# Include the progress variables for this target. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make + +# Include the compile flags for this target's objects. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: ../framework/tf_plugin/tensorflow_add_custom_plugin.cc +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o -MF CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d -o CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc > CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc -o CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s + +# Object files for target cust_tf_parsers +cust_tf_parsers_OBJECTS = \ +"CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" + +# External object files for target cust_tf_parsers +cust_tf_parsers_EXTERNAL_OBJECTS = + +framework/tf_plugin/libcust_tf_parsers.so: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o +framework/tf_plugin/libcust_tf_parsers.so: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make +framework/tf_plugin/libcust_tf_parsers.so: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libcust_tf_parsers.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_tf_parsers.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build: framework/tf_plugin/libcust_tf_parsers.so +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin && $(CMAKE_COMMAND) -P CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake new file mode 100644 index 0000000..2a9bb61 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" + "CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d" + "libcust_tf_parsers.pdb" + "libcust_tf_parsers.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_tf_parsers.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal new file mode 100644 index 0000000..036e0cb --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal @@ -0,0 +1,225 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc + /usr/include/stdc-predef.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register.h + /usr/include/c++/11/functional + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/initializer_list + /usr/include/c++/11/array + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/bits/std_function.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/c++/11/cstdio + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/cerrno + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/unordered_map + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_map.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/vector.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make new file mode 100644 index 0000000..6c28a2f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make @@ -0,0 +1,650 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: ../framework/tf_plugin/tensorflow_add_custom_plugin.cc \ + /usr/include/stdc-predef.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register.h \ + /usr/include/c++/11/functional \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/bits/std_function.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/c++/11/cstdio \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/cerrno \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/unordered_map \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_map.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/c++/11/bits/unordered_map.h: + +/usr/include/c++/11/bits/enable_special_members.h: + +/usr/include/c++/11/bits/hashtable_policy.h: + +/usr/include/c++/11/bits/basic_string.tcc: + +/usr/include/asm-generic/errno.h: + +/usr/include/aarch64-linux-gnu/bits/types/error_t.h: + +/usr/include/linux/errno.h: + +/usr/include/aarch64-linux-gnu/bits/stdio_lim.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h: + +/usr/include/stdio.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/stdlib.h: + +/usr/include/c++/11/bits/basic_string.h: + +/usr/include/c++/11/bits/ostream_insert.h: + +/usr/include/c++/11/unordered_map: + +/usr/include/aarch64-linux-gnu/asm/errno.h: + +/usr/include/c++/11/cctype: + +/usr/include/aarch64-linux-gnu/bits/locale.h: + +/usr/include/locale.h: + +/usr/include/c++/11/cerrno: + +/usr/include/aarch64-linux-gnu/bits/stdio.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h: + +/usr/include/c++/11/bits/localefwd.h: + +/usr/include/c++/11/cstdint: + +/usr/include/c++/11/string: + +/usr/include/c++/11/bits/stl_multiset.h: + +/usr/include/c++/11/bits/stl_set.h: + +/usr/include/c++/11/set: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/ext/string_conversions.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/endian.h: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +../framework/tf_plugin/tensorflow_add_custom_plugin.cc: + +/usr/include/c++/11/iosfwd: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/c++/11/bits/cxxabi_forced.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/include/c++/11/bits/invoke.h: + +/usr/include/c++/11/map: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/memory: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/c++/11/bits/stl_map.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/exception: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/pthread.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/errno.h: + +/usr/include/c++/11/utility: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/include/features-time64.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/include/c++/11/typeinfo: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/asm-generic/errno-base.h: + +/usr/include/c++/11/bits/char_traits.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/c++/11/functional: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/c++/11/array: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register.h: + +/usr/include/features.h: + +/usr/include/c++/11/bits/stl_multimap.h: + +/usr/include/aarch64-linux-gnu/bits/errno.h: + +/usr/include/aarch64-linux-gnu/bits/stdio2.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/c++/11/bits/stl_tree.h: + +/usr/include/c++/11/tuple: + +/usr/include/c++/11/type_traits: + +/usr/include/ctype.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/atomic: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/c++/11/vector: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/bit: + +/usr/include/alloca.h: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/c++/11/cstdio: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/cwchar: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/c++/11/bits/charconv.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +/usr/include/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/time.h: + +/usr/include/c++/11/initializer_list: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/include/c++/11/bits/std_function.h: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/c++/11/clocale: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/include/c++/11/bits/hashtable.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h: + +/usr/include/c++/11/bits/erase_if.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts new file mode 100644 index 0000000..ab564b3 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_tf_parsers. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make new file mode 100644 index 0000000..e471fdc --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_tf_parsers. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make new file mode 100644 index 0000000..c535bf4 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_tf_parsers_EXPORTS -Dgoogle=ascend_private + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt new file mode 100644 index 0000000..062c631 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_tf_parsers.so -o libcust_tf_parsers.so CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lgraph diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make new file mode 100644 index 0000000..b700c2c --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 9 +CMAKE_PROGRESS_2 = 10 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o new file mode 100644 index 0000000000000000000000000000000000000000..b72c4be62481c8c358978f27edc091b5b2724300 GIT binary patch literal 10480 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d new file mode 100644 index 0000000..751080b --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d @@ -0,0 +1,184 @@ +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc \ + /usr/include/stdc-predef.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register.h \ + /usr/include/c++/11/functional \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/array /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/bits/std_function.h /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/map /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/cctype \ + /usr/include/ctype.h /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h /usr/include/c++/11/cstdio \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h /usr/include/c++/11/cerrno \ + /usr/include/errno.h /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/unordered_map /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_map.h /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./tensor.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks @@ -0,0 +1 @@ +2 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/Makefile b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/Makefile new file mode 100644 index 0000000..f034e9f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/Makefile @@ -0,0 +1,253 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin//CMakeFiles/progress.marks + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule + +# Convenience name for target. +cust_tf_parsers: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule +.PHONY : cust_tf_parsers + +# fast build rule for target. +cust_tf_parsers/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build +.PHONY : cust_tf_parsers/fast + +tensorflow_add_custom_plugin.o: tensorflow_add_custom_plugin.cc.o +.PHONY : tensorflow_add_custom_plugin.o + +# target to build an object file +tensorflow_add_custom_plugin.cc.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o +.PHONY : tensorflow_add_custom_plugin.cc.o + +tensorflow_add_custom_plugin.i: tensorflow_add_custom_plugin.cc.i +.PHONY : tensorflow_add_custom_plugin.i + +# target to preprocess a source file +tensorflow_add_custom_plugin.cc.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i +.PHONY : tensorflow_add_custom_plugin.cc.i + +tensorflow_add_custom_plugin.s: tensorflow_add_custom_plugin.cc.s +.PHONY : tensorflow_add_custom_plugin.s + +# target to generate assembly for a file +tensorflow_add_custom_plugin.cc.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s +.PHONY : tensorflow_add_custom_plugin.cc.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... cust_tf_parsers" + @echo "... tensorflow_add_custom_plugin.o" + @echo "... tensorflow_add_custom_plugin.i" + @echo "... tensorflow_add_custom_plugin.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/cmake_install.cmake b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/cmake_install.cmake new file mode 100644 index 0000000..e4be318 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/cmake_install.cmake @@ -0,0 +1,67 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/framework/tf_plugin + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/libcust_tf_parsers.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so b/Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/libcust_tf_parsers.so similarity index 76% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so rename to Increase_Bedore_pipe/Is_increase/build_out/framework/tf_plugin/libcust_tf_parsers.so index 5b560a882596ffbbc8311dabc96005caee719128..87e886ca87b5fb794d40c594a132a06e9113ac99 100644 GIT binary patch delta 80 zcmdnszrlY)E4!Y4X>pN$PJVJ?j=p1Ya%x_Rej=FCEy>T%$<8d%&q*vvEe2AVNoFQi bn>Vx173Gp;fB;$M&0eza7&m*!XK(-jogNxE delta 30 mcmdnszrlY)EBj<4VbjgK*r$nZPLO@UIJtmPV6%sO1_uDXTniom diff --git a/Increase_Bedore_pipe/Is_increase/build_out/install_manifest.txt b/Increase_Bedore_pipe/Is_increase/build_out/install_manifest.txt new file mode 100644 index 0000000..5d44f54 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/install_manifest.txt @@ -0,0 +1,33 @@ +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc/op_proto.h +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib/libcust_opapi.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310p/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310p/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/./upgrade.sh +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/./install.sh +/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..46e8ebd --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake new file mode 100644 index 0000000..d596682 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake @@ -0,0 +1,20 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc" "op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" "gcc" "op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d" + "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp" "op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" "gcc" "op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o new file mode 100644 index 0000000000000000000000000000000000000000..4a3beb18b4699ad9920afd1910077c009b44e433 GIT binary patch literal 62752 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 z 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d new file mode 100644 index 0000000..0508cb4 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d @@ -0,0 +1,256 @@ +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp \ + /usr/include/stdc-predef.h \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom_tiling.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h \ + /usr/include/c++/11/vector /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/vector.tcc /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/array /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h /usr/include/c++/11/cstring \ + /usr/include/string.h /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/stdlib.h /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/include/c++/11/string /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/cctype \ + /usr/include/ctype.h /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdio \ + /usr/include/c++/11/cerrno /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc /usr/include/c++/11/functional \ + /usr/include/c++/11/bits/std_function.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h \ + /usr/include/c++/11/iostream /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h /usr/include/c++/11/cwctype \ + /usr/include/wctype.h /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/include/c++/11/set /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make new file mode 100644 index 0000000..217c07d --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make @@ -0,0 +1,126 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +# Include any dependencies generated for this target. +include op_host/CMakeFiles/cust_op_proto.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make + +# Include the progress variables for this target. +include op_host/CMakeFiles/cust_op_proto.dir/progress.make + +# Include the compile flags for this target's objects. +include op_host/CMakeFiles/cust_op_proto.dir/flags.make + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: op_host/CMakeFiles/cust_op_proto.dir/flags.make +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: ../op_host/add_custom.cpp +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o -MF CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d -o CMakeFiles/cust_op_proto.dir/add_custom.cpp.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_op_proto.dir/add_custom.cpp.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp > CMakeFiles/cust_op_proto.dir/add_custom.cpp.i + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_op_proto.dir/add_custom.cpp.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp -o CMakeFiles/cust_op_proto.dir/add_custom.cpp.s + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: op_host/CMakeFiles/cust_op_proto.dir/flags.make +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: autogen/op_proto.cc +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o -MF CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d -o CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc > CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc -o CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s + +# Object files for target cust_op_proto +cust_op_proto_OBJECTS = \ +"CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" \ +"CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" + +# External object files for target cust_op_proto +cust_op_proto_EXTERNAL_OBJECTS = + +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/build.make +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking CXX shared library libcust_opsproto_rt2.0.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_op_proto.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +op_host/CMakeFiles/cust_op_proto.dir/build: op_host/libcust_opsproto_rt2.0.so +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/build + +op_host/CMakeFiles/cust_op_proto.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/cust_op_proto.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/clean + +op_host/CMakeFiles/cust_op_proto.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/depend + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake new file mode 100644 index 0000000..76762a8 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake @@ -0,0 +1,13 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" + "CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d" + "CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" + "CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d" + "libcust_opsproto_rt2.0.pdb" + "libcust_opsproto_rt2.0.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_op_proto.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal new file mode 100644 index 0000000..0157bcb --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal @@ -0,0 +1,603 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.cc + /usr/include/stdc-predef.h + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h + /usr/include/c++/11/functional + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/initializer_list + /usr/include/c++/11/array + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/bits/std_function.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/memory + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/c++/11/cstdio + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/cerrno + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/vector.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h + /usr/include/c++/11/unordered_set + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_set.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h + /usr/include/string.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/include/c++/11/stdlib.h + /usr/include/c++/11/iostream + /usr/include/c++/11/ostream + /usr/include/c++/11/ios + /usr/include/c++/11/bits/ios_base.h + /usr/include/c++/11/bits/locale_classes.h + /usr/include/c++/11/bits/locale_classes.tcc + /usr/include/c++/11/system_error + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h + /usr/include/c++/11/stdexcept + /usr/include/c++/11/streambuf + /usr/include/c++/11/bits/streambuf.tcc + /usr/include/c++/11/bits/basic_ios.h + /usr/include/c++/11/bits/locale_facets.h + /usr/include/c++/11/cwctype + /usr/include/wctype.h + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h + /usr/include/c++/11/bits/streambuf_iterator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h + /usr/include/c++/11/bits/locale_facets.tcc + /usr/include/c++/11/bits/basic_ios.tcc + /usr/include/c++/11/bits/ostream.tcc + /usr/include/c++/11/istream + /usr/include/c++/11/bits/istream.tcc + /usr/include/c++/11/cstring + /usr/include/c++/11/limits + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h + /usr/include/c++/11/cstddef + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp + /usr/include/stdc-predef.h + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom_tiling.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/initializer_list + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/vector.tcc + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/array + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/cstring + /usr/include/string.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/stdlib.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdio + /usr/include/c++/11/cerrno + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/functional + /usr/include/c++/11/bits/std_function.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h + /usr/include/c++/11/iostream + /usr/include/c++/11/ostream + /usr/include/c++/11/ios + /usr/include/c++/11/bits/ios_base.h + /usr/include/c++/11/bits/locale_classes.h + /usr/include/c++/11/bits/locale_classes.tcc + /usr/include/c++/11/system_error + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h + /usr/include/c++/11/stdexcept + /usr/include/c++/11/streambuf + /usr/include/c++/11/bits/streambuf.tcc + /usr/include/c++/11/bits/basic_ios.h + /usr/include/c++/11/bits/locale_facets.h + /usr/include/c++/11/cwctype + /usr/include/wctype.h + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h + /usr/include/c++/11/bits/streambuf_iterator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h + /usr/include/c++/11/bits/locale_facets.tcc + /usr/include/c++/11/bits/basic_ios.tcc + /usr/include/c++/11/bits/ostream.tcc + /usr/include/c++/11/istream + /usr/include/c++/11/bits/istream.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h + /usr/include/c++/11/unordered_set + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_set.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/include/c++/11/limits + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h + /usr/include/c++/11/cstddef + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make new file mode 100644 index 0000000..7e34042 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make @@ -0,0 +1,1167 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: autogen/op_proto.cc \ + /usr/include/stdc-predef.h \ + autogen/op_proto.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/include/c++/11/functional \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/bits/std_function.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/c++/11/cstdio \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/cerrno \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/string.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/include/c++/11/stdlib.h \ + /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept \ + /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype \ + /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc \ + /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/include/c++/11/cstring \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: ../op_host/add_custom.cpp \ + /usr/include/stdc-predef.h \ + ../op_host/add_custom_tiling.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/cstring \ + /usr/include/string.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/stdlib.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdio \ + /usr/include/c++/11/cerrno \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/functional \ + /usr/include/c++/11/bits/std_function.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h \ + /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept \ + /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype \ + /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc \ + /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/c++/11/bits/hashtable.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/c++/11/bits/ostream.tcc: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/c++/11/bits/streambuf_iterator.h: + +../op_host/add_custom_tiling.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/c++/11/iostream: + +/usr/include/wchar.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/cwchar: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/c++/11/cstdio: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/include/c++/11/initializer_list: + +/usr/include/c++/11/iosfwd: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/include/c++/11/bits/locale_facets.tcc: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h: + +/usr/include/c++/11/bit: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/vector: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/ostream: + +autogen/op_proto.cc: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/c++/11/bits/char_traits.h: + +/usr/include/asm-generic/errno-base.h: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/ctype.h: + +/usr/include/c++/11/type_traits: + +/usr/include/c++/11/bits/stl_tree.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/aarch64-linux-gnu/bits/stdio2.h: + +/usr/include/aarch64-linux-gnu/bits/errno.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/c++/11/streambuf: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +../op_host/add_custom.cpp: + +/usr/include/alloca.h: + +autogen/op_proto.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/c++/11/array: + +/usr/include/c++/11/cstddef: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/c++/11/system_error: + +/usr/include/c++/11/typeinfo: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/c++/11/exception: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/c++/11/limits: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/errno.h: + +/usr/include/features.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/features-time64.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h: + +/usr/include/c++/11/clocale: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/pthread.h: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/c++/11/atomic: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/cstring: + +/usr/include/c++/11/bits/erase_if.h: + +/usr/include/endian.h: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/c++/11/map: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h: + +/usr/include/c++/11/bits/std_function.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h: + +/usr/include/c++/11/memory: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/bits/cxxabi_forced.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/string_conversions.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h: + +/usr/include/c++/11/string: + +/usr/include/c++/11/cstdint: + +/usr/include/c++/11/bits/localefwd.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h: + +/usr/include/aarch64-linux-gnu/bits/stdio.h: + +/usr/include/c++/11/cerrno: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/locale.h: + +/usr/include/aarch64-linux-gnu/bits/locale.h: + +/usr/include/aarch64-linux-gnu/bits/string_fortified.h: + +/usr/include/c++/11/cctype: + +/usr/include/c++/11/bits/stl_multimap.h: + +/usr/include/aarch64-linux-gnu/asm/errno.h: + +/usr/include/c++/11/bits/ostream_insert.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/c++/11/bits/basic_string.h: + +/usr/include/stdlib.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/stdio.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/aarch64-linux-gnu/bits/strings_fortified.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/time.h: + +/usr/include/aarch64-linux-gnu/bits/wctype-wchar.h: + +/usr/include/aarch64-linux-gnu/bits/types/error_t.h: + +/usr/include/asm-generic/errno.h: + +/usr/include/c++/11/bits/basic_string.tcc: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h: + +/usr/include/c++/11/bits/stl_map.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h: + +/usr/include/c++/11/istream: + +/usr/include/c++/11/set: + +/usr/include/c++/11/bits/charconv.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securectype.h: + +/usr/include/c++/11/bits/ios_base.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/c++/11/bits/stl_set.h: + +/usr/include/aarch64-linux-gnu/bits/stdio_lim.h: + +/usr/include/c++/11/bits/stl_multiset.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h: + +/usr/include/c++/11/bits/basic_ios.tcc: + +/usr/include/c++/11/bits/enable_special_members.h: + +/usr/include/c++/11/bits/invoke.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h: + +/usr/include/c++/11/unordered_set: + +/usr/include/c++/11/bits/hashtable_policy.h: + +/usr/include/c++/11/bits/unordered_set.h: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h: + +/usr/include/c++/11/stdexcept: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h: + +/usr/include/c++/11/stdlib.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h: + +/usr/include/c++/11/tuple: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securec.h: + +/usr/include/c++/11/bits/streambuf.tcc: + +/usr/include/string.h: + +/usr/include/strings.h: + +/usr/include/c++/11/utility: + +/usr/include/c++/11/ios: + +/usr/include/c++/11/bits/locale_classes.h: + +/usr/include/c++/11/bits/locale_classes.tcc: + +/usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h: + +/usr/include/c++/11/bits/basic_ios.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/c++/11/bits/locale_facets.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/c++/11/cwctype: + +/usr/include/sched.h: + +/usr/include/wctype.h: + +/usr/include/c++/11/functional: + +/usr/include/linux/errno.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/c++/11/bits/istream.tcc: + +/usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h: diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts new file mode 100644 index 0000000..00aea2a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_op_proto. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make new file mode 100644 index 0000000..4379581 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_op_proto. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make new file mode 100644 index 0000000..500116b --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -DOP_PROTO_LIB -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_op_proto_EXPORTS + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fvisibility=hidden -fPIC -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt new file mode 100644 index 0000000..f1980c4 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_opsproto_rt2.0.so -o libcust_opsproto_rt2.0.so CMakeFiles/cust_op_proto.dir/add_custom.cpp.o CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lexe_graph -lregister -ltiling_api -Wl,--whole-archive -lrt2_registry -Wl,--no-whole-archive diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make new file mode 100644 index 0000000..4b14cc1 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make @@ -0,0 +1,4 @@ +CMAKE_PROGRESS_1 = 2 +CMAKE_PROGRESS_2 = 3 +CMAKE_PROGRESS_3 = 4 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake new file mode 100644 index 0000000..2c33b63 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake @@ -0,0 +1,19 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp" "op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" "gcc" "op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..6f7c1889d179b57235d243a0ef45c41d29c4ed6e GIT binary patch literal 12032 zcmcJVdvH|M8Nko(-9Ug4QwfOD>ViO{;JO=L(Q3PSNg^Sn*&v9vH_PslY}xGY>_a!= zBcq*;Gj*Iq0@4RG)3Gf{rGss(wxct2)M`8ZgZhMyIDuMA$LZ7#&p6G{@4NT=cF&%@ zm)MzlhMRNF?|!fIy!W2vk><8LoDPTJ+LcI#O z=E7A;^{XIX2p6ZRUB4ME6Jl^m6GJ}{{>d`|$LLwjHFoYE=jeG&8@mwFMlWj4vB{mT z(N8roHmNzrMnG<2otPA2;7zbIyx2X^xkLp#~ed5L4O%sjc}n&f29~-Jxh!aIK?E| zxB&VmwX4SP-Wg5Y*zFQ)2Eg7)?V2$s=^z&~nO{AIF|quSGUf}d<+qC=C-`{`+SCAX zv7VU2dJFQtPyQI%qRltzE+MM1J=hl1foo7e|D0OqpL9UpARHe%z-Ij{(KVsXyYWn* ze)QZu4Wk!AjiZx0n?|R0y?*eBroTG@{mMQkpluV-wqIYmbd_xTA4>giPV~d5u7@MO0U*w;h+V!f@ z_ux~^fD6`vv1VW%eC|28pyZ$Q3o#CrYMci-_u|{#@oX%X%-|S`ex;tsW{OCAJdxZU zOh+11kzgj$oQs6AnM5j(42B{#%Oi621~ez?!{NqkI+N%#YC^<8pS5JetSU29VSiw! zD;kT&ds@RaH?r_b_wo!u(_4{zYdo3F$ilgmZtrK2>tE^iS;%e5W)y?aIc!pjGmuRt z6RAvFG+pFh}B&XKfB5?{J7>dQ?QYRMI%`U-yD(34WnJtOb&NL27Ao@T= zh)@uEKI0A+T(P zh-V$JRSJmzx1+c=U1H!VT;q#jkHmF84;Z#14g36gcqZU;=fd@lAza^XkeRsIeBR`i z;NH6s*82k7-`|`Mdev|}4|>CJeYgVU#PCUwIc4k#X4{v7KeUy56rUptpidSW`gZb7 zEPu*c9&Mu!?pyF_^ar+0xcrA))h(mp1#?HczvF~*{UK*X!y(~nJQUumLA@33RgSu< z?}Yq{QS5{5Pr86_fO-|^lpUJ5*+01ixDd{d;raIF?}X^$F~DcX)UMz2-i6N`DdA3L zpNv5;ZrjP(anmO5jdFta7NyVozUuFPt&8=IjkmgMHgC_yGg-IK=UMIX-sH;~Ro}z4 zwI1*48weZis-o689_SRV+_jEH71s%5{0_zUZv(cHWMLk{Mq8QOUwL3|)9#AlISqSe z@151~bosuS4d0vb{W9lWvp+a-{4ehvd*|J^-mVn&b4WKv`bo^|EB*V+56o=XJ!816 zVUKIC*7&qD@WF}qOr5-c#{(U0Mr1R8fLe<%K8(eUHAsiyGRC~V(z}1gfwG3(u3@cl zk8`gh06}m7>!q>~b)a(*l_7Ou2iI42@2@y8r+N46;aQD)%JP|EuuJ^=lGROUXoBdEa-?ka@1_1FyheD|`#_qs0A`W2Oms8Y{`{hf@BaVW+^kUGR|w@ysh3 z-#-$sA^R+Uj<{dpSk(kP<&|W{Q_8C}^jqL=(py2C>zv;~+)r}MgT%WP{vh!I;#HK7 z5a<49{wnbiMgBDL!wSc$Ch#+;IGOD&iS44hm|p16d^v?x^W*@VmsxtEjMkQ^2`zWu1N-`KN$iDLr3|XEP{1 zXJh9T8-Cn||I>y$;A7G%&MR&BQXBpi8y>LXQ5!yB!+&VQ4*|!1JIv%-eg+VBn=US-2|;8t<&MtO_rIbvf+EX|3fVWF>Y z+tg6srt9hKcD+?MzWVfFIIM?^k8DpUnH2iAc3*8?uwD20Ru_M5Hd~0Sf^S*)x^0T2 zL#uSJl|*e6zo#!FAepG0&V-GCWWqO{2^#^)gm*d4=~;z9V5h29ki! za*!l}+UW#VSqZF7Bm+ff6DTx&57qHOjK$pYQBZgy^4YAd3Gc|Y!ffBR&9}OEXqxl4 zlu5oW2G*@d+_+^uU5s1SlhL?kvliAA7L@H+DKeJBrN~&0m?C2iS|GF5Jicj-1%j=y z=H{j~&G%u~m)vMv(;Ue7)<)yeOf(pSvz?TVJq0?Q8v`SEJn;z>nzcyzrdm(!DxR5}rdVa@dG_jw`q`2BsNFVYuE z_CqC*srBl5rZ<(iUynuNJ(*rTl1e2~*dBdz{QhV>tanDzSr`S&NPL%%MAyUVgbv4s z;TRauL%E<1N5Z*i1|QwU98STiN-%HTWos#?;R7So* z;uALfqQu)I`3lg-gz?C4wbjHi9+@vBj(#_qs>a`y631_7PPa*X6GOi&+P8b)N8ffjUo~knDV2va^r4I_@LHIZp1!XNYs0%nwTT>O3>Fh6EvXF{>#ruv799p|9jr>@eSIW2aZKlO#Jy#SZhFjhz9- z4zH7MD|VPaZewRq;`n1TrxzvO!VvPK67Q1uG2%F0H4=ZHIF7r_PfK>>eW09luL1cc z$xa=Wah`0Ec!$KdO8jvuV?6R{=o7>-9+?kHcJ7w!@cxW`<#?WzXe781ueSr?I;IL0Y+ZZFDzgJdw{u|VD|aqbheBg@}QGRS55FmY@z%OK+C9rACI z3}*6kO_qO#WK{WAB`(XqEpgfYG2+-R50x={pUN1&%qNJe{m;)Ywg35ffpN<7pUepS zuPlXA=fe3ca(uq?KF;Ha9LMV@8Sqlh^1NTSD0~F;j6?%@jLU!-yw z^cx)IqOW$e>hDKs6v{Zg51l6nI_KJ{QK73?Qqv>v2Au|y~sQ(-D$ z%?)ACL|-CgUrVJVbi+9jPFE?s$4q35f3hkluy)Tl%Y2 zVg2&l`x5xN9WGpBm^io7Z!^X6XO^h{RY`9;{d-AY_K)j>^*DC}!>tUC9g7loj!XV{ z0Ewz1Dfj^x>S)Wa@U8R{!D(9D7(dFDlN|3$%b||`6*nSBfa4&wygt`gLIG{6`uKYX zrYbZpCHBu~EfkFQ%bN|bPgtJ?DOcO?18%fm(f7Me1#Ty{AAPfb=9__`|5~_;5)IJb zZQ^Gf1|=(f?stq&PVArcpM{%Po}t9=rU`LaR)(_L{+|J}YX4TZsd&)L1hyaNBKzm| ze*_HuI~D&&$-lfugP0+UIVT?|8}T!se1i1(JCbj!@#A-|5kCuXzSu1A^B?2K=YkqP zeg|WW>inxCL6$eI74(^Z&Bp&5OH2*!C-jf|4C^u94Epe|#J`^ex0+`1e_5XazE4@T ze}epXlOX!XUtL+B{eR2G|2`5tLi(JsKG!2Q{{7dR5^ii9B=nEJva&w=f0X?z^JnWU z)GElEwbJ@S>|fFEUTSKvAM}sEDyjZ|LH@n$fbwqgkNcCHs5$w0`~vCAGFX0s^i|IK z%>P9CO88=s^u3A#$Itq&!+opq&r$mik|4Gp_j=anenIo9Z&W!#A8V&c;aXsgaH;wj irn+_jiG%bL{~=n($S^6*G1i2YzI&M|e?n1Es^Y(Q#C(+i literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d new file mode 100644 index 0000000..9034208 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d @@ -0,0 +1,142 @@ +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp \ + /usr/include/stdc-predef.h /usr/include/string.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/bits/move.h /usr/include/c++/11/type_traits \ + /usr/include/c++/11/memory /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/unique_ptr.h /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/initializer_list /usr/include/c++/11/tuple \ + /usr/include/c++/11/array /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/shared_ptr.h /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/backward/auto_ptr.h /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h \ + /usr/include/c++/11/cstdint /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make new file mode 100644 index 0000000..2be93de --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make @@ -0,0 +1,110 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +# Include any dependencies generated for this target. +include op_host/CMakeFiles/cust_opapi.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make + +# Include the progress variables for this target. +include op_host/CMakeFiles/cust_opapi.dir/progress.make + +# Include the compile flags for this target's objects. +include op_host/CMakeFiles/cust_opapi.dir/flags.make + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: op_host/CMakeFiles/cust_opapi.dir/flags.make +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: autogen/aclnn_add_custom.cpp +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o -MF CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d -o CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp > CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp -o CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s + +# Object files for target cust_opapi +cust_opapi_OBJECTS = \ +"CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" + +# External object files for target cust_opapi +cust_opapi_EXTERNAL_OBJECTS = + +op_host/libcust_opapi.so: op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o +op_host/libcust_opapi.so: op_host/CMakeFiles/cust_opapi.dir/build.make +op_host/libcust_opapi.so: op_host/CMakeFiles/cust_opapi.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libcust_opapi.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_opapi.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +op_host/CMakeFiles/cust_opapi.dir/build: op_host/libcust_opapi.so +.PHONY : op_host/CMakeFiles/cust_opapi.dir/build + +op_host/CMakeFiles/cust_opapi.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/cust_opapi.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/cust_opapi.dir/clean + +op_host/CMakeFiles/cust_opapi.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/cust_opapi.dir/depend + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake new file mode 100644 index 0000000..9d876da --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" + "CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d" + "libcust_opapi.pdb" + "libcust_opapi.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_opapi.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal new file mode 100644 index 0000000..6b7c9d8 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal @@ -0,0 +1,170 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.cpp + /usr/include/stdc-predef.h + /usr/include/string.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/include/c++/11/atomic + /usr/include/c++/11/bits/atomic_base.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/initializer_list + /usr/include/c++/11/tuple + /usr/include/c++/11/array + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/vector.tcc + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.h + /usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make new file mode 100644 index 0000000..56ef6b6 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make @@ -0,0 +1,499 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: autogen/aclnn_add_custom.cpp \ + /usr/include/stdc-predef.h \ + /usr/include/string.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + autogen/aclnn_add_custom.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/stdlib.h: + +/usr/include/c++/11/cstdint: + +/usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/memory: + +/usr/include/c++/11/array: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/c++/11/iosfwd: + +/usr/include/endian.h: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/c++/11/exception: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/pthread.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/features.h: + +/usr/include/c++/11/utility: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/features-time64.h: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/c++/11/atomic: + +/usr/include/strings.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/aarch64-linux-gnu/bits/strings_fortified.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/aarch64-linux-gnu/bits/string_fortified.h: + +/usr/include/string.h: + +/usr/include/alloca.h: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/c++/11/typeinfo: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/c++/11/vector: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/bit: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/c++/11/type_traits: + +/usr/include/c++/11/tuple: + +/usr/include/c++/11/bits/invoke.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/cwchar: + +autogen/aclnn_add_custom.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +/usr/include/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +autogen/aclnn_add_custom.cpp: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/time.h: + +/usr/include/c++/11/initializer_list: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts new file mode 100644 index 0000000..b3bb157 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_opapi. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make new file mode 100644 index 0000000..dae58d6 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_opapi. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make new file mode 100644 index 0000000..f4b2f4f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_opapi_EXPORTS + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt new file mode 100644 index 0000000..5142fea --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_opapi.so -o libcust_opapi.so CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lascendcl -lnnopbase diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make new file mode 100644 index 0000000..3a86673 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 5 +CMAKE_PROGRESS_2 = 6 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake new file mode 100644 index 0000000..bf8a219 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake @@ -0,0 +1,19 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp" "op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o" "gcc" "op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..4307ab8c4d25656c65fd137981ebc5eb3d8906e1 GIT binary patch literal 84056 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 CMakeFiles/cust_optiling.dir/add_custom.cpp.i + +op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_optiling.dir/add_custom.cpp.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp -o CMakeFiles/cust_optiling.dir/add_custom.cpp.s + +# Object files for target cust_optiling +cust_optiling_OBJECTS = \ +"CMakeFiles/cust_optiling.dir/add_custom.cpp.o" + +# External object files for target cust_optiling +cust_optiling_EXTERNAL_OBJECTS = + +op_host/libcust_opmaster_rt2.0.so: op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o +op_host/libcust_opmaster_rt2.0.so: op_host/CMakeFiles/cust_optiling.dir/build.make +op_host/libcust_opmaster_rt2.0.so: op_host/CMakeFiles/cust_optiling.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libcust_opmaster_rt2.0.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_optiling.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +op_host/CMakeFiles/cust_optiling.dir/build: op_host/libcust_opmaster_rt2.0.so +.PHONY : op_host/CMakeFiles/cust_optiling.dir/build + +op_host/CMakeFiles/cust_optiling.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/cust_optiling.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/cust_optiling.dir/clean + +op_host/CMakeFiles/cust_optiling.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/cust_optiling.dir/depend + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake new file mode 100644 index 0000000..35e371c --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_optiling.dir/add_custom.cpp.o" + "CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d" + "libcust_opmaster_rt2.0.pdb" + "libcust_opmaster_rt2.0.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_optiling.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal new file mode 100644 index 0000000..0891f71 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal @@ -0,0 +1,305 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp + /usr/include/stdc-predef.h + /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host/add_custom_tiling.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/initializer_list + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/vector.tcc + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/array + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/cstring + /usr/include/string.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/stdlib.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdio + /usr/include/c++/11/cerrno + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/functional + /usr/include/c++/11/bits/std_function.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h + /usr/include/c++/11/iostream + /usr/include/c++/11/ostream + /usr/include/c++/11/ios + /usr/include/c++/11/bits/ios_base.h + /usr/include/c++/11/bits/locale_classes.h + /usr/include/c++/11/bits/locale_classes.tcc + /usr/include/c++/11/system_error + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h + /usr/include/c++/11/stdexcept + /usr/include/c++/11/streambuf + /usr/include/c++/11/bits/streambuf.tcc + /usr/include/c++/11/bits/basic_ios.h + /usr/include/c++/11/bits/locale_facets.h + /usr/include/c++/11/cwctype + /usr/include/wctype.h + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h + /usr/include/c++/11/bits/streambuf_iterator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h + /usr/include/c++/11/bits/locale_facets.tcc + /usr/include/c++/11/bits/basic_ios.tcc + /usr/include/c++/11/bits/ostream.tcc + /usr/include/c++/11/istream + /usr/include/c++/11/bits/istream.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h + /usr/include/c++/11/unordered_set + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_set.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/include/c++/11/limits + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h + /usr/include/c++/11/cstddef + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make new file mode 100644 index 0000000..5567d98 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make @@ -0,0 +1,866 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o: ../op_host/add_custom.cpp \ + /usr/include/stdc-predef.h \ + ../op_host/add_custom_tiling.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/cstring \ + /usr/include/string.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/stdlib.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdio \ + /usr/include/c++/11/cerrno \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/functional \ + /usr/include/c++/11/bits/std_function.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h \ + /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept \ + /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype \ + /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc \ + /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h: + +/usr/include/c++/11/set: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/c++/11/bits/hashtable.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/include/c++/11/bits/ostream.tcc: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h: + +/usr/include/c++/11/bits/stl_set.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/c++/11/bits/streambuf_iterator.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/c++/11/iostream: + +/usr/include/wchar.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/cwchar: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/c++/11/cstdio: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h: + +/usr/include/c++/11/bit: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/typeinfo: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: + +/usr/include/features.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h: + +/usr/include/c++/11/clocale: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/c++/11/atomic: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/ctype.h: + +/usr/include/c++/11/type_traits: + +/usr/include/c++/11/bits/stl_tree.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/aarch64-linux-gnu/bits/stdio2.h: + +/usr/include/aarch64-linux-gnu/bits/errno.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +../op_host/add_custom_tiling.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/include/features-time64.h: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/c++/11/exception: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h: + +/usr/include/c++/11/bits/std_function.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/vector: + +/usr/include/pthread.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/asm-generic/errno-base.h: + +/usr/include/c++/11/bits/char_traits.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/include/c++/11/bits/locale_facets.tcc: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/c++/11/streambuf: + +/usr/include/c++/11/array: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/cstring: + +/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/c++/11/limits: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h: + +/usr/include/c++/11/memory: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/c++/11/system_error: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/errno.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/bits/cxxabi_forced.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +../op_host/add_custom.cpp: + +/usr/include/alloca.h: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/c++/11/map: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/c++/11/cstddef: + +/usr/include/c++/11/initializer_list: + +/usr/include/c++/11/iosfwd: + +/usr/include/c++/11/bits/erase_if.h: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/stdint.h: + +/usr/include/endian.h: + +/usr/include/c++/11/bits/stl_map.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/ostream: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/string_conversions.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h: + +/usr/include/c++/11/bits/streambuf.tcc: + +/usr/include/string.h: + +/usr/include/strings.h: + +/usr/include/aarch64-linux-gnu/bits/string_fortified.h: + +/usr/include/aarch64-linux-gnu/bits/locale.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h: + +/usr/include/c++/11/tuple: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securec.h: + +/usr/include/c++/11/bits/charconv.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securectype.h: + +/usr/include/c++/11/bits/ios_base.h: + +/usr/include/stdio.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/aarch64-linux-gnu/bits/strings_fortified.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/time.h: + +/usr/include/aarch64-linux-gnu/bits/wctype-wchar.h: + +/usr/include/c++/11/bits/stl_multiset.h: + +/usr/include/aarch64-linux-gnu/bits/stdio_lim.h: + +/usr/include/aarch64-linux-gnu/bits/stdio.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h: + +/usr/include/c++/11/cerrno: + +/usr/include/c++/11/stdlib.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h: + +/usr/include/stdlib.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/aarch64-linux-gnu/bits/types/error_t.h: + +/usr/include/c++/11/bits/stl_multimap.h: + +/usr/include/aarch64-linux-gnu/asm/errno.h: + +/usr/include/c++/11/cctype: + +/usr/include/asm-generic/errno.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h: + +/usr/include/c++/11/string: + +/usr/include/c++/11/cstdint: + +/usr/include/c++/11/bits/localefwd.h: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/locale.h: + +/usr/include/c++/11/bits/ostream_insert.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/c++/11/bits/basic_string.h: + +/usr/include/c++/11/bits/basic_string.tcc: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h: + +/usr/include/c++/11/utility: + +/usr/include/c++/11/ios: + +/usr/include/c++/11/bits/locale_classes.h: + +/usr/include/c++/11/bits/locale_classes.tcc: + +/usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h: + +/usr/include/c++/11/stdexcept: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h: + +/usr/include/c++/11/bits/basic_ios.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/c++/11/bits/locale_facets.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/c++/11/cwctype: + +/usr/include/sched.h: + +/usr/include/wctype.h: + +/usr/include/c++/11/functional: + +/usr/include/linux/errno.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h: + +/usr/include/c++/11/istream: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/c++/11/bits/istream.tcc: + +/usr/include/c++/11/bits/invoke.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h: + +/usr/include/c++/11/unordered_set: + +/usr/include/c++/11/bits/hashtable_policy.h: + +/usr/include/c++/11/bits/basic_ios.tcc: + +/usr/include/c++/11/bits/enable_special_members.h: + +/usr/include/c++/11/bits/unordered_set.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h: diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts new file mode 100644 index 0000000..74472e3 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_optiling. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make new file mode 100644 index 0000000..fe68c7f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_optiling. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make new file mode 100644 index 0000000..6d98162 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -DOP_TILING_LIB -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_optiling_EXPORTS + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fvisibility=hidden -fPIC -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt new file mode 100644 index 0000000..5406749 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_opmaster_rt2.0.so -o libcust_opmaster_rt2.0.so CMakeFiles/cust_optiling.dir/add_custom.cpp.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lexe_graph -lregister -ltiling_api -Wl,--whole-archive -lrt2_registry -Wl,--no-whole-archive diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make new file mode 100644 index 0000000..72bb7dd --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 7 +CMAKE_PROGRESS_2 = 8 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake new file mode 100644 index 0000000..dc55e44 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake @@ -0,0 +1,18 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make new file mode 100644 index 0000000..5650118 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make @@ -0,0 +1,87 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +# Utility rule file for optiling_compat. + +# Include any custom commands dependencies for this target. +include op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make + +# Include the progress variables for this target. +include op_host/CMakeFiles/optiling_compat.dir/progress.make + +op_host/CMakeFiles/optiling_compat: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && ln -sf lib/linux/aarch64/libcust_opmaster_rt2.0.so /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/liboptiling.so + +optiling_compat: op_host/CMakeFiles/optiling_compat +optiling_compat: op_host/CMakeFiles/optiling_compat.dir/build.make +.PHONY : optiling_compat + +# Rule to build all files generated by this target. +op_host/CMakeFiles/optiling_compat.dir/build: optiling_compat +.PHONY : op_host/CMakeFiles/optiling_compat.dir/build + +op_host/CMakeFiles/optiling_compat.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/optiling_compat.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/optiling_compat.dir/clean + +op_host/CMakeFiles/optiling_compat.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/optiling_compat.dir/depend + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake new file mode 100644 index 0000000..d6c6218 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/optiling_compat" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/optiling_compat.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make new file mode 100644 index 0000000..f6005bc --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for optiling_compat. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts new file mode 100644 index 0000000..218ad6e --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for optiling_compat. diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make @@ -0,0 +1 @@ + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/progress.marks b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/progress.marks new file mode 100644 index 0000000..7f8f011 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/CMakeFiles/progress.marks @@ -0,0 +1 @@ +7 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/Makefile b/Increase_Bedore_pipe/Is_increase/build_out/op_host/Makefile new file mode 100644 index 0000000..edca3a2 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/Makefile @@ -0,0 +1,355 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host//CMakeFiles/progress.marks + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +op_host/CMakeFiles/cust_op_proto.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_op_proto.dir/rule +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/rule + +# Convenience name for target. +cust_op_proto: op_host/CMakeFiles/cust_op_proto.dir/rule +.PHONY : cust_op_proto + +# fast build rule for target. +cust_op_proto/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/build +.PHONY : cust_op_proto/fast + +# Convenience name for target. +op_host/CMakeFiles/cust_optiling.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_optiling.dir/rule +.PHONY : op_host/CMakeFiles/cust_optiling.dir/rule + +# Convenience name for target. +cust_optiling: op_host/CMakeFiles/cust_optiling.dir/rule +.PHONY : cust_optiling + +# fast build rule for target. +cust_optiling/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/build +.PHONY : cust_optiling/fast + +# Convenience name for target. +op_host/CMakeFiles/cust_opapi.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_opapi.dir/rule +.PHONY : op_host/CMakeFiles/cust_opapi.dir/rule + +# Convenience name for target. +cust_opapi: op_host/CMakeFiles/cust_opapi.dir/rule +.PHONY : cust_opapi + +# fast build rule for target. +cust_opapi/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/build +.PHONY : cust_opapi/fast + +# Convenience name for target. +op_host/CMakeFiles/optiling_compat.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/optiling_compat.dir/rule +.PHONY : op_host/CMakeFiles/optiling_compat.dir/rule + +# Convenience name for target. +optiling_compat: op_host/CMakeFiles/optiling_compat.dir/rule +.PHONY : optiling_compat + +# fast build rule for target. +optiling_compat/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/build +.PHONY : optiling_compat/fast + +__/autogen/aclnn_add_custom.o: __/autogen/aclnn_add_custom.cpp.o +.PHONY : __/autogen/aclnn_add_custom.o + +# target to build an object file +__/autogen/aclnn_add_custom.cpp.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o +.PHONY : __/autogen/aclnn_add_custom.cpp.o + +__/autogen/aclnn_add_custom.i: __/autogen/aclnn_add_custom.cpp.i +.PHONY : __/autogen/aclnn_add_custom.i + +# target to preprocess a source file +__/autogen/aclnn_add_custom.cpp.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i +.PHONY : __/autogen/aclnn_add_custom.cpp.i + +__/autogen/aclnn_add_custom.s: __/autogen/aclnn_add_custom.cpp.s +.PHONY : __/autogen/aclnn_add_custom.s + +# target to generate assembly for a file +__/autogen/aclnn_add_custom.cpp.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s +.PHONY : __/autogen/aclnn_add_custom.cpp.s + +__/autogen/op_proto.o: __/autogen/op_proto.cc.o +.PHONY : __/autogen/op_proto.o + +# target to build an object file +__/autogen/op_proto.cc.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o +.PHONY : __/autogen/op_proto.cc.o + +__/autogen/op_proto.i: __/autogen/op_proto.cc.i +.PHONY : __/autogen/op_proto.i + +# target to preprocess a source file +__/autogen/op_proto.cc.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i +.PHONY : __/autogen/op_proto.cc.i + +__/autogen/op_proto.s: __/autogen/op_proto.cc.s +.PHONY : __/autogen/op_proto.s + +# target to generate assembly for a file +__/autogen/op_proto.cc.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s +.PHONY : __/autogen/op_proto.cc.s + +add_custom.o: add_custom.cpp.o +.PHONY : add_custom.o + +# target to build an object file +add_custom.cpp.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o +.PHONY : add_custom.cpp.o + +add_custom.i: add_custom.cpp.i +.PHONY : add_custom.i + +# target to preprocess a source file +add_custom.cpp.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.i + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.i +.PHONY : add_custom.cpp.i + +add_custom.s: add_custom.cpp.s +.PHONY : add_custom.s + +# target to generate assembly for a file +add_custom.cpp.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.s + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.s +.PHONY : add_custom.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... optiling_compat" + @echo "... cust_op_proto" + @echo "... cust_opapi" + @echo "... cust_optiling" + @echo "... __/autogen/aclnn_add_custom.o" + @echo "... __/autogen/aclnn_add_custom.i" + @echo "... __/autogen/aclnn_add_custom.s" + @echo "... __/autogen/op_proto.o" + @echo "... __/autogen/op_proto.i" + @echo "... __/autogen/op_proto.s" + @echo "... add_custom.o" + @echo "... add_custom.i" + @echo "... add_custom.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_host/cmake_install.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_host/cmake_install.cmake new file mode 100644 index 0000000..1b44cd3 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_host/cmake_install.cmake @@ -0,0 +1,125 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_host + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opsproto_rt2.0.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/inc" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/op_proto.h") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opmaster_rt2.0.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/liboptiling.so") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opapi.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/include" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/autogen/aclnn_add_custom.h") +endif() + diff --git a/Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib/libcust_opapi.so b/Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opapi.so similarity index 86% rename from Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib/libcust_opapi.so rename to Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opapi.so index b49919b0e8ae7dd623b5eb673ee9cf1721bae62c..41fa718f34536d8db08a00262f00d08b9801448a 100644 GIT binary patch delta 79 zcmewn@FQSD5WAj!X>pN$PJVJ?j=p1Ya%x_Rej=FCEy>T%$<8d%&q*vvEe2AVNoFQi Zn;Y0Sh;qs@KtR)GP1*O1n>FMEI02($8i4=+ delta 30 mcmewn@FQSD5c}jN3A4=|>?=e!JIKCZoLs;tuvtSsfD-`BlM7q` diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so b/Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opmaster_rt2.0.so similarity index 98% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so rename to Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opmaster_rt2.0.so index 8c4fb0fb026848917aa6ff32fe5efee5b5280949..52d0a964cb3ec39449fab04e5eeda916c67e9b95 100644 GIT binary patch delta 87 zcmX@{p7q3g)(x9v^z=)Mi}Z8ylM{3F9gCAw^HTH^!IW-Eetu4NW{G}IVo7Q-kjhLl iGqGxZAhZ2}4C4h~PFV&BxU_v`7UO%y?JIH^6}SQLVITDX delta 39 xcmV+?0NDS??*+*31+cOlmy%@xHiPIKx9A)J$W6DvY60j0lW+kLx2S9ZAPal;5b6K` diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so b/Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opsproto_rt2.0.so similarity index 98% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so rename to Increase_Bedore_pipe/Is_increase/build_out/op_host/libcust_opsproto_rt2.0.so index 5b7376c2dfc3b2433fdc1b90e6dcc1458c86381c..549af7e629616cd18c7d87e12c47b84a7818ecd5 100644 GIT binary patch delta 87 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 Q4i!vu(!@0?zmQ4(7k`DwCIA2c literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp new file mode 100644 index 0000000..d1316bf --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp @@ -0,0 +1,62 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2022-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "kernel_operator.h" +constexpr int32_t BUFFER_NUM = 2; // tensor num for each queue + +class KernelAdd { +public: + __aicore__ inline KernelAdd() {} + __aicore__ inline void Init(GM_ADDR x, GM_ADDR y, GM_ADDR z, uint32_t totalLength, uint32_t tileNum,AscendC::TPipe * cur_pipe) + { + xGm.SetGlobalBuffer((__gm__ half *)x , 131072); + pipe=cur_pipe; + pipe->InitBuffer(inQueueX, 1, 65536 * sizeof(half)); + pipe->InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe *pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + AscendC::TPipe cur_pipe; + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum,&cur_pipe); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/add_custom.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/add_custom.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom.json diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json new file mode 100644 index 0000000..db18d31 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json @@ -0,0 +1,79 @@ +{ + "binFileName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "binFileSuffix": ".o", + "blockDim": -1, + "coreType": "AiCore", + "globalworkspace_spec_workspace": { + "size": 32, + "type": 0 + }, + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "magic": "RT_DEV_BINARY_MAGIC_ELF", + "memoryStamping": [], + "opParaSize": 8, + "parameters": [], + "sha256": "68949a7d5bc4881861b4930a8ea7fa1fc013719b853b8e614dd48f79988ed635", + "workspace": { + "num": 1, + "size": [ + -1 + ], + "type": [ + 0 + ] + }, + "kernelList": [ + { + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_0" + } + ], + "optionalInputMode": "gen_placeholder", + "compileInfo": {}, + "supportInfo": { + "implMode": "", + "int64Mode": false, + "simplifiedKeyMode": 0, + "simplifiedKey": [ + "AddCustom/d=0,p=0/1,2/1,2/1,2", + "AddCustom/d=1,p=0/1,2/1,2/1,2" + ], + "staticKey": "24db4d78a3a31c0287aa11345320c199348443901fef8fe630f68f86fd5dc348", + "inputs": [ + { + "name": "x", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + }, + { + "name": "y", + "index": 1, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "outputs": [ + { + "name": "z", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "opMode": "dynamic", + "optionalInputMode": "gen_placeholder", + "deterministic": "ignore" + } +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o new file mode 100644 index 0000000000000000000000000000000000000000..21c975579fde16d41a03d1581d6b0ee398e79785 GIT binary patch literal 5200 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 QhYF@SY2q4{U&ti?3q5AYGynhq literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/src/add_custom.cpp b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/src/add_custom.cpp new file mode 100644 index 0000000..d1316bf --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/src/add_custom.cpp @@ -0,0 +1,62 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2022-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "kernel_operator.h" +constexpr int32_t BUFFER_NUM = 2; // tensor num for each queue + +class KernelAdd { +public: + __aicore__ inline KernelAdd() {} + __aicore__ inline void Init(GM_ADDR x, GM_ADDR y, GM_ADDR z, uint32_t totalLength, uint32_t tileNum,AscendC::TPipe * cur_pipe) + { + xGm.SetGlobalBuffer((__gm__ half *)x , 131072); + pipe=cur_pipe; + pipe->InitBuffer(inQueueX, 1, 65536 * sizeof(half)); + pipe->InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe *pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + AscendC::TPipe cur_pipe; + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum,&cur_pipe); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/add_custom.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/add_custom.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom.json diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json new file mode 100644 index 0000000..ba8cce3 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json @@ -0,0 +1,79 @@ +{ + "binFileName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "binFileSuffix": ".o", + "blockDim": -1, + "coreType": "AiCore", + "globalworkspace_spec_workspace": { + "size": 32, + "type": 0 + }, + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "magic": "RT_DEV_BINARY_MAGIC_ELF", + "memoryStamping": [], + "opParaSize": 8, + "parameters": [], + "sha256": "62a21e3773526418fdfcc39e10275e8461683341c4def7ed6cf0f2e7c0c0e922", + "workspace": { + "num": 1, + "size": [ + -1 + ], + "type": [ + 0 + ] + }, + "kernelList": [ + { + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_0" + } + ], + "optionalInputMode": "gen_placeholder", + "compileInfo": {}, + "supportInfo": { + "implMode": "", + "int64Mode": false, + "simplifiedKeyMode": 0, + "simplifiedKey": [ + "AddCustom/d=0,p=0/1,2/1,2/1,2", + "AddCustom/d=1,p=0/1,2/1,2/1,2" + ], + "staticKey": "24db4d78a3a31c0287aa11345320c199348443901fef8fe630f68f86fd5dc348", + "inputs": [ + { + "name": "x", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + }, + { + "name": "y", + "index": 1, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "outputs": [ + { + "name": "z", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "opMode": "dynamic", + "optionalInputMode": "gen_placeholder", + "deterministic": "ignore" + } +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o new file mode 100644 index 0000000000000000000000000000000000000000..d47eeac5bbc48abc9833cd39a084f91ac67304ba GIT binary patch literal 2632 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 P1=E}~agE9^WRm{{NK?nj literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/src/add_custom.cpp b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/src/add_custom.cpp new file mode 100644 index 0000000..d1316bf --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/src/add_custom.cpp @@ -0,0 +1,62 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2022-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "kernel_operator.h" +constexpr int32_t BUFFER_NUM = 2; // tensor num for each queue + +class KernelAdd { +public: + __aicore__ inline KernelAdd() {} + __aicore__ inline void Init(GM_ADDR x, GM_ADDR y, GM_ADDR z, uint32_t totalLength, uint32_t tileNum,AscendC::TPipe * cur_pipe) + { + xGm.SetGlobalBuffer((__gm__ half *)x , 131072); + pipe=cur_pipe; + pipe->InitBuffer(inQueueX, 1, 65536 * sizeof(half)); + pipe->InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe *pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + AscendC::TPipe cur_pipe; + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum,&cur_pipe); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom.json diff --git a/Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json similarity index 94% rename from Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json index 1ae9d00..c328ce8 100644 --- a/Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json @@ -8,9 +8,9 @@ "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", "magic": "RT_DEV_BINARY_MAGIC_ELF_AIVEC", "memoryStamping": [], - "opParaSize": 32, + "opParaSize": 8, "parameters": [], - "sha256": "8257bf9300a401f04fdf0c92ebdcd97feb3c1917fc40352e32baa1d86ae48774", + "sha256": "f3635436b52d4e255e079e7e0821bbf6e1ec9ddc2aa51ff15d06bf1c37981f57", "workspace": { "num": 1, "size": [ diff --git a/Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_ccd748392d99d04b8205210970fde2b9.o b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o similarity index 30% rename from Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_ccd748392d99d04b8205210970fde2b9.o rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o index 12f2f3dc0373d9d805f0c10fff086641dd4d3758..a577be8145e046227330bb27bd5245d3d9bef3e1 100644 GIT binary patch delta 868 zcmah{K}%Fo6h8Od>)iWZm7FNJX2BqY18sr`C&z)Dl|qm~Fn4T3 z%R+57vuI&L)H)Zoj8}-*U_-yaP-iR>tW_(g^CpCLy~Vrd-1Bk1@0{hC zYH*^-GA9pogSaCCz*?l3SmXw7khr3pYjY<}x`Mh;M#2hsVq-n2?PIQ7;I(-i#(=OC zTG2S+lBu4ygQi4|I>MvL3O5fTSPJ1NAS7__V2o_5c6? delta 2686 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, 1, 65536 * sizeof(half)); + pipe->InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe *pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + AscendC::TPipe cur_pipe; + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum,&cur_pipe); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/cmake_install.cmake b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/cmake_install.cmake new file mode 100644 index 0000000..b278689 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/cmake_install.cmake @@ -0,0 +1,120 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_kernel + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl" TYPE DIRECTORY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/dynamic") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310p" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310p/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend310b/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/binary/ascend910b/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/Is_increase/op_kernel/add_custom.cpp") +endif() + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/.impl_timestamp b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/.impl_timestamp new file mode 100644 index 0000000..e69de29 diff --git a/Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/dynamic/add_custom.py similarity index 100% rename from Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/dynamic/add_custom.py diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json b/Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json similarity index 100% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json rename to Increase_Bedore_pipe/Is_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json diff --git a/Increase_Bedore_pipe/Is_increase/build_out/scripts/install.sh b/Increase_Bedore_pipe/Is_increase/build_out/scripts/install.sh new file mode 100644 index 0000000..8468c5a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/scripts/install.sh @@ -0,0 +1,318 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +QUIET="y" + +while true +do + case $1 in + --quiet) + QUIET="y" + shift + ;; + --install-path=*) + INSTALL_PATH=$(echo $1 | cut -d"=" -f2-) + INSTALL_PATH=${INSTALL_PATH%*/} + shift + ;; + --*) + shift + ;; + *) + break + ;; + esac +done + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [ -n "${INSTALL_PATH}" ]; then + if [[ ! "${INSTALL_PATH}" = /* ]]; then + log "[ERROR] use absolute path for --install-path argument" + exit 1 + fi + if [ ! -d ${INSTALL_PATH} ]; then + mkdir ${INSTALL_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${INSTALL_PATH} failed" + exit 1 + fi + fi + targetdir=${INSTALL_PATH} +elif [ -n "${ASCEND_CUSTOM_OPP_PATH}" ]; then + if [ ! -d ${ASCEND_CUSTOM_OPP_PATH} ]; then + mkdir -p ${ASCEND_CUSTOM_OPP_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${ASCEND_CUSTOM_OPP_PATH} failed" + fi + fi + targetdir=${ASCEND_CUSTOM_OPP_PATH} +else + if [ "x${ASCEND_OPP_PATH}" == "x" ]; then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 + fi + targetdir="${ASCEND_OPP_PATH}" +fi + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + has_same_file=-1 + for file_a in ${sourcedir}/$vendordir/$1/*; do + file_b=${file_a##*/}; + if [ "ls ${targetdir}/$vendordir/$1" = "" ]; then + log "[INFO] ${targetdir}/$vendordir/$1 is empty !!" + return 1 + fi + grep -q $file_b <<<`ls ${targetdir}/$vendordir/$1`; + if [[ $? -eq 0 ]]; then + echo -n "${file_b} " + has_same_file=0 + fi + done + if [ 0 -eq $has_same_file ]; then + if test $QUIET = "n"; then + echo "[INFO]: has old version in ${targetdir}/$vendordir/$1, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + + while true + do + read orn + if [ "$orn" = n ]; then + return 0 + elif [ "$orn" = m ]; then + break; + elif [ "$0rn" = r ]; then + [ -n "${targetdir}/$vendordir/$1/" ] && rm -rf "${targetdir}/$vendordir/$1"/* + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace or merge old ops $1 files .g....." + fi + + log "copy new ops $1 files ......" + if [ -d ${targetdir}/$vendordir/$1/ ]; then + chmod -R +w "$targetdir/$vendordir/$1/" >/dev/null 2>&1 + fi + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} +upgrade_proto() +{ + if [ ! -f ${sourcedir}/$vendordir/custom.proto ]; then + log "[INFO] no need to upgrade custom.proto files" + return 0 + fi + if [ ! -d ${targetdir}/$vendordir/framework/caffe ];then + log "[INFO] create ${targetdir}/$vendordir/framework/caffe." + mkdir -p ${targetdir}/$vendordir/framework/caffe + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/framework/caffe failed" + return 1 + fi + else + if [ -f ${targetdir}/$vendordir/framework/caffe/custom.proto ]; then + # 有老版本,判断是否要覆盖式安装 + if test $QUIET = "n"; then + echo "[INFO] ${targetdir}/$vendordir/framework/caffe has old version"\ + "custom.proto file. Do you want to replace? [y/n] " + + while true + do + read yn + if [ "$yn" = n ]; then + return 0 + elif [ "$yn" = y ]; then + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace old caffe.proto files ......" + fi + chmod -R +w "$targetdir/$vendordir/framework/caffe/" >/dev/null 2>&1 + cp -rf ${sourcedir}/$vendordir/custom.proto ${targetdir}/$vendordir/framework/caffe/ + if [ $? -ne 0 ];then + log "[ERROR] copy new custom.proto failed" + return 1 + fi + log "[INFO] copy custom.proto success" + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +delete_optiling_file() +{ + if [ ! -d ${targetdir}/vendors ];then + log "[INFO] $1 not exist, no need to uninstall" + return 0 + fi + sys_info=$(uname -m) + if [ ! -d ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/lib/linux/${sys_info} ];then + rm -rf ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/liboptiling.so + fi + return 0 +} + +log "[INFO] copy uninstall sh success" + +if [ ! -d ${targetdir}/vendors ];then + log "[INFO] create ${targetdir}/vendors." + mkdir -p ${targetdir}/vendors + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/vendors failed" + return 1 + fi +fi +chmod u+w ${targetdir}/vendors + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +delete_optiling_file op_impl +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +upgrade_proto +if [ $? -ne 0 ];then + exit 1 +fi + +# set the set_env.bash +if [ -n "${INSTALL_PATH}" ] && [ -d ${INSTALL_PATH} ]; then + _ASCEND_CUSTOM_OPP_PATH=${targetdir}/${vendordir} + bin_path="${_ASCEND_CUSTOM_OPP_PATH}/bin" + set_env_variable="#!/bin/bash\nexport ASCEND_CUSTOM_OPP_PATH=${_ASCEND_CUSTOM_OPP_PATH}:\${ASCEND_CUSTOM_OPP_PATH}" + if [ ! -d ${bin_path} ]; then + mkdir -p ${bin_path} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${bin_path} failed" + exit 1 + fi + fi + echo -e ${set_env_variable} > ${bin_path}/set_env.bash + if [ $? -ne 0 ]; then + log "[ERROR] write ASCEND_CUSTOM_OPP_PATH to set_env.bash failed" + exit 1 + else + log "[INFO] using requirements: when custom module install finished or before you run the custom module, \ + execute the command [ source ${bin_path}/set_env.bash ] to set the environment path" + fi +else + config_file=${targetdir}/vendors/config.ini + if [ ! -f ${config_file} ]; then + touch ${config_file} + chmod 640 ${config_file} + echo "load_priority=$vendor_name" > ${config_file} + if [ $? -ne 0 ];then + echo "echo load_priority failed" + exit 1 + fi + else + found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" + found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') + vendor=$(echo $found_vendor | tr -s ' ' ',') + if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" + fi + fi +fi + +chmod u-w ${targetdir}/vendors + +if [ -d ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/ ]; then + chmod -R 440 ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/* >/dev/null 2>&1 +fi +if [ -f ${targetdir}/ascend_install.info ]; then + chmod -R 440 ${targetdir}/ascend_install.info +fi +if [ -f ${targetdir}/scene.info ]; then + chmod -R 440 ${targetdir}/scene.info +fi +if [ -f ${targetdir}/version.info ]; then + chmod -R 440 ${targetdir}/version.info +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/scripts/upgrade.sh b/Increase_Bedore_pipe/Is_increase/build_out/scripts/upgrade.sh new file mode 100644 index 0000000..e091734 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/scripts/upgrade.sh @@ -0,0 +1,151 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [[ "x${ASCEND_OPP_PATH}" == "x" ]];then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 +fi + +targetdir=${ASCEND_OPP_PATH} + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + vendor_installed_dir=$(ls "$targetdir/vendors" 2> /dev/null) + for i in $vendor_installed_dir;do + vendor_installed_file=$(ls "$vendor_installed_dir/$vendor_name/$i" 2> /dev/null) + if [ "$i" = "$vendor_name" ] && [ "$vendor_installed_file" != "" ]; then + echo "[INFO]: $vendor_name custom opp package has been installed on the path $vendor_installed_dir, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + fi + while true + do + read mrn + if [ "$mrn" = m ]; then + break + elif [ "$mrn" = r ]; then + [ -n "$vendor_installed_file"] && rm -rf "$vendor_installed_file" + break + elif [ "$mrn" = n ]; then + return 0 + else + echo "[WARNING]: Input error, please input m or r or n to choose!" + fi + done + done + log "[INFO] replace old ops $1 files ......" + fi + + log "copy new ops $1 files ......" + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +log "[INFO] copy uninstall sh success" + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +config_file=${targetdir}/vendors/config.ini +found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" +found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') +vendor=$(echo $found_vendor | tr -s ' ' ',') +if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" +fi + +changemode() +{ + if [ -d ${targetdir} ];then + chmod -R 550 ${targetdir}>/dev/null 2>&1 + fi + + return 0 +} +echo "[ops_custom]changemode..." +#changemode +if [ $? -ne 0 ];then + exit 1 +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/Is_increase/build_out/version.info b/Increase_Bedore_pipe/Is_increase/build_out/version.info new file mode 100644 index 0000000..0ec7257 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/build_out/version.info @@ -0,0 +1 @@ +custom_opp_compiler_version=7.3.T10.0.B528 diff --git a/Increase_Bedore_pipe/Is_increase/cmake/config.cmake b/Increase_Bedore_pipe/Is_increase/cmake/config.cmake new file mode 100644 index 0000000..886119d --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/config.cmake @@ -0,0 +1,25 @@ + +set(CMAKE_CXX_FLAGS_DEBUG "") +set(CMAKE_CXX_FLAGS_RELEASE "") + +if (NOT DEFINED vendor_name) + set(vendor_name customize CACHE STRING "") +endif() +if (NOT DEFINED ASCEND_CANN_PACKAGE_PATH) + set(ASCEND_CANN_PACKAGE_PATH /usr/local/Ascend/latest CACHE PATH "") +endif() +if (NOT DEFINED ASCEND_PYTHON_EXECUTABLE) + set(ASCEND_PYTHON_EXECUTABLE python3 CACHE STRING "") +endif() +if (NOT DEFINED ASCEND_COMPUTE_UNIT) + message(FATAL_ERROR "ASCEND_COMPUTE_UNIT not set in CMakePreset.json ! +") +endif() +set(ASCEND_TENSOR_COMPILER_PATH ${ASCEND_CANN_PACKAGE_PATH}/compiler) +set(ASCEND_CCEC_COMPILER_PATH ${ASCEND_TENSOR_COMPILER_PATH}/ccec_compiler/bin) +set(ASCEND_AUTOGEN_PATH ${CMAKE_BINARY_DIR}/autogen) +set(ASCEND_FRAMEWORK_TYPE tensorflow) +file(MAKE_DIRECTORY ${ASCEND_AUTOGEN_PATH}) +set(CUSTOM_COMPILE_OPTIONS "custom_compile_options.ini") +execute_process(COMMAND rm -rf ${ASCEND_AUTOGEN_PATH}/${CUSTOM_COMPILE_OPTIONS} + COMMAND touch ${ASCEND_AUTOGEN_PATH}/${CUSTOM_COMPILE_OPTIONS}) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/func.cmake b/Increase_Bedore_pipe/Is_increase/cmake/func.cmake new file mode 100644 index 0000000..ad187e7 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/func.cmake @@ -0,0 +1,228 @@ + +function(get_system_info SYSTEM_INFO) + if (UNIX) + execute_process(COMMAND grep -i ^id= /etc/os-release OUTPUT_VARIABLE TEMP) + string(REGEX REPLACE "\n|id=|ID=|\"" "" SYSTEM_NAME ${TEMP}) + set(${SYSTEM_INFO} ${SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR} PARENT_SCOPE) + elseif (WIN32) + message(STATUS "System is Windows. Only for pre-build.") + else () + message(FATAL_ERROR "${CMAKE_SYSTEM_NAME} not support.") + endif () +endfunction() + +function(opbuild) + message(STATUS "Opbuild generating sources") + cmake_parse_arguments(OPBUILD "" "OUT_DIR;PROJECT_NAME;ACCESS_PREFIX" "OPS_SRC" ${ARGN}) + execute_process(COMMAND ${CMAKE_COMPILE} -g -fPIC -shared -std=c++11 ${OPBUILD_OPS_SRC} -D_GLIBCXX_USE_CXX11_ABI=0 + -I ${ASCEND_CANN_PACKAGE_PATH}/include -L ${ASCEND_CANN_PACKAGE_PATH}/lib64 -lexe_graph -lregister -ltiling_api + -o ${OPBUILD_OUT_DIR}/libascend_all_ops.so + RESULT_VARIABLE EXEC_RESULT + OUTPUT_VARIABLE EXEC_INFO + ERROR_VARIABLE EXEC_ERROR + ) + if (${EXEC_RESULT}) + message("build ops lib info: ${EXEC_INFO}") + message("build ops lib error: ${EXEC_ERROR}") + message(FATAL_ERROR "opbuild run failed!") + endif() + set(proj_env "") + set(prefix_env "") + if (NOT "${OPBUILD_PROJECT_NAME}x" STREQUAL "x") + set(proj_env "OPS_PROJECT_NAME=${OPBUILD_PROJECT_NAME}") + endif() + if (NOT "${OPBUILD_ACCESS_PREFIX}x" STREQUAL "x") + set(prefix_env "OPS_DIRECT_ACCESS_PREFIX=${OPBUILD_ACCESS_PREFIX}") + endif() + execute_process(COMMAND ${proj_env} ${prefix_env} ${ASCEND_CANN_PACKAGE_PATH}/toolkit/tools/opbuild/op_build + ${OPBUILD_OUT_DIR}/libascend_all_ops.so ${OPBUILD_OUT_DIR} + RESULT_VARIABLE EXEC_RESULT + OUTPUT_VARIABLE EXEC_INFO + ERROR_VARIABLE EXEC_ERROR + ) + if (${EXEC_RESULT}) + message("opbuild ops info: ${EXEC_INFO}") + message("opbuild ops error: ${EXEC_ERROR}") + endif() + message(STATUS "Opbuild generating sources - done") +endfunction() + +function(add_ops_info_target) + cmake_parse_arguments(OPINFO "" "TARGET;OPS_INFO;OUTPUT;INSTALL_DIR" "" ${ARGN}) + get_filename_component(opinfo_file_path "${OPINFO_OUTPUT}" DIRECTORY) + add_custom_command(OUTPUT ${OPINFO_OUTPUT} + COMMAND mkdir -p ${opinfo_file_path} + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/parse_ini_to_json.py + ${OPINFO_OPS_INFO} ${OPINFO_OUTPUT} + ) + add_custom_target(${OPINFO_TARGET} ALL + DEPENDS ${OPINFO_OUTPUT} + ) + install(FILES ${OPINFO_OUTPUT} + DESTINATION ${OPINFO_INSTALL_DIR} + ) +endfunction() + +function(add_ops_compile_options OP_TYPE) + cmake_parse_arguments(OP_COMPILE "" "OP_TYPE" "COMPUTE_UNIT;OPTIONS" ${ARGN}) + file(APPEND ${ASCEND_AUTOGEN_PATH}/${CUSTOM_COMPILE_OPTIONS} + "${OP_TYPE},${OP_COMPILE_COMPUTE_UNIT},${OP_COMPILE_OPTIONS}\n") +endfunction() + +function(add_ops_impl_target) + cmake_parse_arguments(OPIMPL "" "TARGET;OPS_INFO;IMPL_DIR;OUT_DIR;INSTALL_DIR" "OPS_BATCH;OPS_ITERATE" ${ARGN}) + add_custom_command(OUTPUT ${OPIMPL_OUT_DIR}/.impl_timestamp + COMMAND mkdir -m 700 -p ${OPIMPL_OUT_DIR}/dynamic + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_impl_build.py + ${OPIMPL_OPS_INFO} + \"${OPIMPL_OPS_BATCH}\" \"${OPIMPL_OPS_ITERATE}\" + ${OPIMPL_IMPL_DIR} + ${OPIMPL_OUT_DIR}/dynamic + ${ASCEND_AUTOGEN_PATH} + + COMMAND rm -rf ${OPIMPL_OUT_DIR}/.impl_timestamp + COMMAND touch ${OPIMPL_OUT_DIR}/.impl_timestamp + DEPENDS ${OPIMPL_OPS_INFO} + ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_impl_build.py + ) + add_custom_target(${OPIMPL_TARGET} ALL + DEPENDS ${OPIMPL_OUT_DIR}/.impl_timestamp) + if (${ENABLE_SOURCE_PACKAGE}) + install(DIRECTORY ${OPIMPL_OUT_DIR}/dynamic + DESTINATION ${OPIMPL_INSTALL_DIR} + ) + endif() +endfunction() + +function(add_ops_replay_targets) + cmake_parse_arguments(OPREPLAY "" "OPS_INFO;COMPUTE_UNIT;IMPL_DIR;OUT_DIR;INSTALL_DIR" "OPS_BATCH;OPS_ITERATE" ${ARGN}) + # ccec compile options + set(ccec_base_opts -c -O2 --cce-aicore-only -mllvm -cce-aicore-function-stack-size=16000 + -mllvm -cce-aicore-record-overflow=false -std=c++17) + set(ccec_extopts_ascend310p --cce-aicore-arch=dav-m200 -mllvm -cce-aicore-fp-ceiling=2) + set(ccec_extopts_ascend910 --cce-aicore-arch=dav-c100) + set(ccec_extopts_ascend910b --cce-aicore-arch=dav-c220-cube) + file(MAKE_DIRECTORY ${OPREPLAY_OUT_DIR}) + execute_process(COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_replay_build.py + ${OPREPLAY_OPS_INFO} + "${OPREPLAY_OPS_BATCH}" "${OPREPLAY_OPS_ITERATE}" + ${OPREPLAY_IMPL_DIR} + ${OPREPLAY_OUT_DIR} + ${OPREPLAY_COMPUTE_UNIT} + ) + file(GLOB replay_kernel_entries ${OPREPLAY_OUT_DIR}/*.cce) + if (NOT "${replay_kernel_entries}x" STREQUAL "x") + foreach(replay_kernel_file ${replay_kernel_entries}) + get_filename_component(replay_kernel_file_name "${replay_kernel_file}" NAME) + string(REPLACE "_entry.cce" "" op_kerne_name ${replay_kernel_file_name}) + file(GLOB replay_lib_src ${OPREPLAY_OUT_DIR}/${op_kerne_name}*.cpp) + set(OP_TILING_DATA_H_PATH ${OPREPLAY_OUT_DIR}/${op_kerne_name}_tiling_data.h) + add_library(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} SHARED ${replay_lib_src}) + if(EXISTS ${OP_TILING_DATA_H_PATH}) + target_compile_options(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE + -include ${OP_TILING_DATA_H_PATH} + ) + endif() + target_compile_definitions(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE + ${op_kerne_name}=${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} + ) + target_compile_options(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE + -D__ASCENDC_REPLAY__ + ) + target_link_libraries(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE intf_pub + tikreplaylib::${OPREPLAY_COMPUTE_UNIT} + register + ) + add_custom_command(OUTPUT ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + COMMAND ccec ${ccec_base_opts} ${ccec_extopts_${OPREPLAY_COMPUTE_UNIT}} ${replay_kernel_file} + -o ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + DEPENDS ${replay_kernel_file} + ) + add_custom_target(replay_kernel_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} ALL + DEPENDS ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + ) + install(TARGETS replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_replay + ) + install(FILES ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_replay + ) + endforeach() + endif() +endfunction() + +function(add_npu_support_target) + cmake_parse_arguments(NPUSUP "" "TARGET;OPS_INFO_DIR;OUT_DIR;INSTALL_DIR" "" ${ARGN}) + get_filename_component(npu_sup_file_path "${NPUSUP_OUT_DIR}" DIRECTORY) + add_custom_command(OUTPUT ${NPUSUP_OUT_DIR}/npu_supported_ops.json + COMMAND mkdir -p ${NPUSUP_OUT_DIR} + COMMAND ${CMAKE_SOURCE_DIR}/cmake/util/gen_ops_filter.sh + ${NPUSUP_OPS_INFO_DIR} + ${NPUSUP_OUT_DIR} + ) + add_custom_target(npu_supported_ops ALL + DEPENDS ${NPUSUP_OUT_DIR}/npu_supported_ops.json + ) + install(FILES ${NPUSUP_OUT_DIR}/npu_supported_ops.json + DESTINATION ${NPUSUP_INSTALL_DIR} + ) +endfunction() + +function(add_bin_compile_target) + cmake_parse_arguments(BINCMP "" "TARGET;OPS_INFO;COMPUTE_UNIT;IMPL_DIR;ADP_DIR;OUT_DIR;INSTALL_DIR" "" ${ARGN}) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/src) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/bin) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/gen) + execute_process(COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_bin_param_build.py + ${BINCMP_OPS_INFO} ${BINCMP_OUT_DIR}/gen ${BINCMP_COMPUTE_UNIT} + RESULT_VARIABLE EXEC_RESULT + OUTPUT_VARIABLE EXEC_INFO + ERROR_VARIABLE EXEC_ERROR + ) + if (${EXEC_RESULT}) + message("ops binary compile scripts gen info: ${EXEC_INFO}") + message("ops binary compile scripts gen error: ${EXEC_ERROR}") + message(FATAL_ERROR "ops binary compile scripts gen failed!") + endif() + if (NOT TARGET binary) + add_custom_target(binary) + endif() + add_custom_target(${BINCMP_TARGET} + COMMAND cp -r ${BINCMP_IMPL_DIR}/*.* ${BINCMP_OUT_DIR}/src + ) + add_custom_target(${BINCMP_TARGET}_gen_ops_config + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/insert_simplified_keys.py -p ${BINCMP_OUT_DIR}/bin + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_ops_config.py -p ${BINCMP_OUT_DIR}/bin + -s ${BINCMP_COMPUTE_UNIT} + ) + add_dependencies(binary ${BINCMP_TARGET}_gen_ops_config) + file(GLOB bin_scripts ${BINCMP_OUT_DIR}/gen/*.sh) + foreach(bin_script ${bin_scripts}) + get_filename_component(bin_file ${bin_script} NAME_WE) + string(REPLACE "-" ";" bin_sep ${bin_file}) + list(GET bin_sep 0 op_type) + list(GET bin_sep 1 op_file) + list(GET bin_sep 2 op_index) + if (NOT TARGET ${BINCMP_TARGET}_${op_file}_copy) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/bin/${op_file}) + add_custom_target(${BINCMP_TARGET}_${op_file}_copy + COMMAND cp ${BINCMP_ADP_DIR}/${op_file}.py ${BINCMP_OUT_DIR}/src/${op_type}.py + ) + install(DIRECTORY ${BINCMP_OUT_DIR}/bin/${op_file} + DESTINATION ${BINCMP_INSTALL_DIR}/${BINCMP_COMPUTE_UNIT} OPTIONAL + ) + install(FILES ${BINCMP_OUT_DIR}/bin/${op_file}.json + DESTINATION ${BINCMP_INSTALL_DIR}/config/${BINCMP_COMPUTE_UNIT}/ OPTIONAL + ) + endif() + add_custom_target(${BINCMP_TARGET}_${op_file}_${op_index} + COMMAND export HI_PYTHON=${ASCEND_PYTHON_EXECUTABLE} && bash ${bin_script} ${BINCMP_OUT_DIR}/src/${op_type}.py ${BINCMP_OUT_DIR}/bin/${op_file} + WORKING_DIRECTORY ${BINCMP_OUT_DIR} + ) + add_dependencies(${BINCMP_TARGET}_${op_file}_${op_index} ${BINCMP_TARGET} ${BINCMP_TARGET}_${op_file}_copy) + add_dependencies(${BINCMP_TARGET}_gen_ops_config ${BINCMP_TARGET}_${op_file}_${op_index}) + endforeach() + install(FILES ${BINCMP_OUT_DIR}/bin/binary_info_config.json + DESTINATION ${BINCMP_INSTALL_DIR}/config/${BINCMP_COMPUTE_UNIT} OPTIONAL + ) +endfunction() diff --git a/Increase_Bedore_pipe/Is_increase/cmake/intf.cmake b/Increase_Bedore_pipe/Is_increase/cmake/intf.cmake new file mode 100644 index 0000000..2f362c3 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/intf.cmake @@ -0,0 +1,26 @@ + +add_library(intf_pub INTERFACE) +target_compile_options(intf_pub INTERFACE + -fPIC + -fvisibility=hidden + -fvisibility-inlines-hidden + $<$:-O2> + $<$:-O0 -g> + $<$:-std=c++11> + $<$,$>:-ftrapv -fstack-check> + $<$:-pthread -Wfloat-equal -Wshadow -Wformat=2 -Wno-deprecated -Wextra> + $,-fstack-protector-strong,-fstack-protector-all> +) +target_compile_definitions(intf_pub INTERFACE + _GLIBCXX_USE_CXX11_ABI=0 + $<$:_FORTIFY_SOURCE=2> +) +target_include_directories(intf_pub INTERFACE ${ASCEND_CANN_PACKAGE_PATH}/include) +target_link_options(intf_pub INTERFACE + $<$,EXECUTABLE>:-pie> + $<$:-s> + -Wl,-z,relro + -Wl,-z,now + -Wl,-z,noexecstack +) +target_link_directories(intf_pub INTERFACE ${ASCEND_CANN_PACKAGE_PATH}/lib64) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/makeself.cmake b/Increase_Bedore_pipe/Is_increase/cmake/makeself.cmake new file mode 100644 index 0000000..48c565b --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/makeself.cmake @@ -0,0 +1,17 @@ +execute_process(COMMAND chmod +x ${CMAKE_CURRENT_LIST_DIR}/util/makeself/makeself.sh) +execute_process(COMMAND ${CMAKE_CURRENT_LIST_DIR}/util/makeself/makeself.sh + --header ${CMAKE_CURRENT_LIST_DIR}/util/makeself/makeself-header.sh + --help-header ./help.info + --gzip --complevel 4 --nomd5 --sha256 + ./ ${CPACK_PACKAGE_FILE_NAME} "version:1.0" ./install.sh + WORKING_DIRECTORY ${CPACK_TEMPORARY_DIRECTORY} + RESULT_VARIABLE EXEC_RESULT + ERROR_VARIABLE EXEC_ERROR +) +if (NOT "${EXEC_RESULT}x" STREQUAL "0x") + message(FATAL_ERROR "CPack Command error: ${EXEC_RESULT}\n${EXEC_ERROR}") +endif() +execute_process(COMMAND cp ${CPACK_EXTERNAL_BUILT_PACKAGES} ${CPACK_PACKAGE_DIRECTORY}/ + COMMAND echo "Copy ${CPACK_EXTERNAL_BUILT_PACKAGES} to ${CPACK_PACKAGE_DIRECTORY}/" + WORKING_DIRECTORY ${CPACK_TEMPORARY_DIRECTORY} +) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/__init__.py b/Increase_Bedore_pipe/Is_increase/cmake/util/__init__.py new file mode 100644 index 0000000..c4ddc89 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/__init__.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import sys +import os + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(PYF_PATH) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/__pycache__/const_var.cpython-39.pyc b/Increase_Bedore_pipe/Is_increase/cmake/util/__pycache__/const_var.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a74bca00a87127ab9bd2f2c5a136c0a879f0fe43 GIT binary patch literal 1120 zcmY+C-EP}96vt&-v1Hj!+Z5O}8{{Uy65Hw3)_Rz%*oiU6&SZIMc|$NF6|90kkk=ryKQMOg5Q4*{-|l%Uxj!)8X$gz znSKDnG_0`-tA-U^Dc@CGWi?!5I@Z}9-eYxKX9hNS<(&z$G0?zT0}VHM^<4{Q8+f0Y ztideSWUbFSe!|-LDci@-*b`XsDSLLOJvz;M3zhPr-iuZ1*@|V~UiYHWYY>HJJ5+;(|keMm~w`is$ zx#Ll(ns(~*h`sD}uV3Q-#Gr?*ZRERN*WLwy2fbq*TXa_xKjK^5*!m%D=LWp}_?wJ< zbksv9Co3u<0-f;t8?c|iBcd4271M;S`kV4qcvI<J-_;e+!-YX9i0s4Bi{ zB^mE;3M@+s5P{%~yyxp}uv?VHTW0Hsu7q!WTv#GNFOcG?LMH(_I_qo_o{~U>{1bYG z)RIRQLhuJ9I{beyk_tiJ%FePEheg&0p-|5Xgq6d6co?H&Gq0s8$!j7~`Cbr8s&f5S z$`Cg~kt$N6St4X$tE4gww@coIj-TfSAq<*9@~TX8JylfUmOH$j*l)?e_MA(+|DeX+ z(6zlGZaJe1GQPT=kn^#Nn}wP!yi&C6g*PJ?!)c*%b4G65*>v(YH)h0fhqhOM=PssB zUcVVl?2CDB%*ps>F?UOF3#i{*&CZAOyg8pa<{9 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc b/Increase_Bedore_pipe/Is_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..24d4be4e1cce916d9b9c90d2b22ab294e2e238a0 GIT binary patch literal 8220 zcmd^EOOG7ab*@*xsvpzy=0lG%Ey?PH8gfWVmS|cgMVU5jYN&7ql3k8asp(rYQ)Ew9 z^Hw#=Tvn~cMnH_ zrDeL&r|voT+*{{9&a>Tm-Bj?|`0Zb8{PW9-@*jkZerAAN#4r3e0HN55P=(e}ZIz#z ztqI-Mg<%__kbjFJ{g%Z3w=62cd^l|vzN3h$s69|b?Y?Fgy^>cJ^@o~hh^YsLT@g(& z{XnrzF(YR2tfF`Bp(^IZ0(xuAy$J3j;wbRCc-||6R`MFuR zX}vJ$nwO>LMxL;Ou64y*x2!X7T4zq5fBlW~=UzwS%xUv-(A$yz=2m3A+HP6j?Ynn9 z-&*t9Tiu`&Z2DekT@IE`TGt}6!~dbPIuL?n>juw z=7CS=_<~pjK9l3=?VZi>W8yga=W_fx@jUSP9DhN)2z(*OE%6oLi#dKmd=>Z+;5Dx% zUV5mDm&Gff92H-K4!oKaulL^d!uDe=F+#7ik(7d-6Ycc8wl=cI)TZBM+U7lgSdA4& z*;D{kpP`2^;)akuTx#w0&yL3nQoJ$&Em6yWO^T>N*fN3gl~}#H-yl z%y8&A?|34Rp40Pt-l?mh<7f0!?QQp#cd8%xol`+i;I=wFSHh|;^>&i713o`;9C~GV z4nR?hfAV)Qm8!wgaJClop&fKLlA`pYzU;PPTk;RJ$?C8=kQ0oc0(1)sPBtloy^bF}R^`_~#!F87 z4;SVbMv`9aDMEuV`cdVUCKrUUs)zz>MPfv<@5w&{pZs%xwJQ+lHNut%&?b&ZRn4TL zOZP6i!Xkj8&8UVtm>Cz0SPsZV?uR$2fd)&JZPBVCTOi400?&H0nY}rTPn+ zm!kLZcg{_`6MLdR!qK#hmHqWURZku+#Blj!Dpp3Mm{>Y>Kh|WK)s>Yf_G=-t%s2y_?1!4BcKaM(-n4Rk}apvHJd4 z9=8F`(gf!ZnA4cx{1}|&3C<qlEjF{R3rw2vdso zi7}hLqrK(9e`j$*Fe1vaF;T|YzL+?CU|%^*oas~?xgR0O5n+yu2{Xd|#5hzgn@#l#^3|~wH z))wn95wdGK7EAtQM3C`oI>z?J#Ce@0sUIdzb~o}E|F1_x8NVAj%a|BsJ#vS=2L!HA zc~|-9?{>*yt9x2Zk(JViIU_}m0yF^DWp~>9|5l0aOL3BbH3;q zd`8Y!$oY!T;42azyW`TzpvG%~N#_j2AUK#F(r`;tf1FhE=3s8vE4&T2--$kOJAKct zjbg20y2}*2CHkfpjo5oK6)k-~=1B~iZ_*bxQU&2xA<24xLE#L5qMB-xe@F17-(Y@B zV}>Ihr>{s%PIJe%RT5`)50$+~hLxcmlzZxVQ$z_$ooByfqqI|MEhpg3P%B|stX$eKCMqGUyqdVCeX zkkW{<+I&t^XLS4u*;8-U@zp23RUU_Is0@2ZSzO4Qd_ei=5J{4dV!)VGZw{&lHM>d4 zjG-cWUR7=zRKt_+fu*JLJUFutfu$+F7W76W=L~D!@k6ArT-<;;Mw4XtdwLN??g}4Q zS(QIT`*4}kqyjRTsZ0(@g0Ld>=&Gb`$s|b@!=UZl@#KLd`3GQ{6z@2y0+B;0b(Us3 zQIN?P{uB5^1Av5-Kf-hD)>BWuX%-OPw1r(g*6H@&(&gN3Sf*Ha)KOuz^p2mvfR?ep zchUwyK1;*}7V&_1{{sGzE!0%`mo%lCl(O}YrD&v{Bru=wt7uSw_DI=PV>MFmsM3lw zQptZn0{f51j#MQ=&r$4fOJ5nxe0b@`%GH(coVVI8$^k+5yfyf~b=OC=HA2V{T5z+0 zl@~KlTKB4t-(dxuT^fg-&qSlgS(vW!J7dtKYqT zW6dGty-V*Wg`UJL2;4q`;C2f}^0sZM*tXOM)qHGCl=>wqKxn%fV>)@F@O%U{iB)W-o^B>{ z7h+8q_qC7JU)1Q1>=m*7Mr`0x|L1NYD(#iy!d^ub;N^;#uNawe5ou}(_vq(QRg~i* z=BvF#Kn3Ylcu9t^O>TAgq3|}>_dnvuHWH~R>h5*HD_)~M)o`vkp}$Eor}R3uvfh(AG~mnY()20i%@LD#+}!8xCZ zOX05pNrn<+_!M)OVl$nOsbx_A0BU)RS^@RHL9L8YF%Ej%03E9unWM_|S3s|h(IGeZ z-v+%lMz1sd1JLVZ^aj(rpf|?oQ%wIk=u>0#CewcjdUK3E4e3vSIz6O5!@hhvYF}WD zigAG~Q(T0Dn_0Oc+c@{9>W^4cWfjO;Qs7cnQcUY3gPAOYy27Q2C91m)=DVIJE>oRg zHT^pwB{w+@zedIUC4{Gas0F<%NE5TJBiXA~=`Vw^ znfWi2CDyP4$Lg(FNmUZL4S-5FS%x%Q;2@IAK~%bshlZk;sP`g)cL93Bw13+OTp>B{Y=d%?Tx%a;HLy$8V4NvmM^5a#oOd=!ixY#0cJ|a@-z*L_}uS* X73UlMW~p2#mm1~f%gSfSZ9e;7%__ME literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_bin_param_build.py b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_bin_param_build.py new file mode 100644 index 0000000..decf345 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_bin_param_build.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import json +import hashlib +import const_var +import opdesc_parser + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + + +class BinParamBuilder(opdesc_parser.OpDesc): + def __init__(self: any, op_type: str): + super().__init__(op_type) + self.soc = '' + self.out_path = '' + + def set_soc_version(self: any, soc: str): + self.soc = soc + + def set_out_path(self: any, out_path: str): + self.out_path = out_path + + def gen_input_json(self: any): + key_map = {} + count = len(self.input_dtype[0].split(',')) + for i in range(0, count): + inputs = [] + outputs = [] + attrs = [] + op_node = {} + for idx in range(0, len(self.input_name)): + idtypes = self.input_dtype[idx].split(',') + ifmts = self.input_fmt[idx].split(',') + itype = self.input_type[idx] + para = {} + para['name'] = self.input_name[idx] + para['index'] = idx + para['dtype'] = idtypes[i] + para['format'] = ifmts[i] + para['paramType'] = itype + para['shape'] = [-2] + if itype == 'dynamic': + inputs.append([para]) + else: + inputs.append(para) + for idx in range(0, len(self.output_name)): + odtypes = self.output_dtype[idx].split(',') + ofmts = self.output_fmt[idx].split(',') + otype = self.output_type[idx] + para = {} + para['name'] = self.output_name[idx] + para['index'] = idx + para['dtype'] = odtypes[i] + para['format'] = ofmts[i] + para['paramType'] = otype + para['shape'] = [-2] + if otype == 'dynamic': + outputs.append([para]) + else: + outputs.append(para) + for attr in self.attr_list: + att = {} + att['name'] = attr + atype = self.attr_val.get(attr).get('type').lower() + atype = atype.replace('list', 'list_') + att['dtype'] = atype + att['value'] = const_var.ATTR_DEF_VAL.get(atype) + attrs.append(att) + op_node['bin_filename'] = '' + op_node['inputs'] = inputs + op_node['outputs'] = outputs + if len(attrs) > 0: + op_node['attrs'] = attrs + param = {} + param['op_type'] = self.op_type + param['op_list'] = [op_node] + objstr = json.dumps(param, indent=' ') + md5sum = hashlib.md5(objstr.encode('utf-8')).hexdigest() + while key_map.get(md5sum) is not None: + objstr += '1' + md5sum = hashlib.md5(objstr.encode('utf-8')).hexdigest() + key_map[md5sum] = md5sum + bin_file = self.op_type + '_' + md5sum + op_node['bin_filename'] = bin_file + param_file = os.path.join(self.out_path, bin_file + '_param.json') + param_file = os.path.realpath(param_file) + with os.fdopen(os.open(param_file, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + json.dump(param, fd, indent=' ') + self._write_buld_cmd(param_file, bin_file, i) + + + def _write_buld_cmd(self: any, param_file: str, bin_file: str, index: int): + hard_soc = const_var.SOC_MAP_EXT.get(self.soc) + if not hard_soc: + hard_soc = soc.capitalize() + name_com = [self.op_type, self.op_file, str(index)] + compile_file = os.path.join(self.out_path, '-'.join(name_com) + '.sh') + compile_file = os.path.realpath(compile_file) + with os.fdopen(os.open(compile_file, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + fd.write('#!/bin/bash\n') + fd.write('echo "[{}] Generating {} ..."\n'.format(hard_soc, bin_file)) + cmd = const_var.BIN_CMD.format(fun=self.op_intf, soc=hard_soc, param=param_file, impl='""') + fd.write(cmd) + chk = const_var.CHK_CMD.format(res_file=bin_file + '.json') + fd.write(chk) + chk = const_var.CHK_CMD.format(res_file=bin_file + '.o') + fd.write(chk) + fd.write('echo "[{}] Generating {} Done"\n'.format(hard_soc, bin_file)) + + +def gen_bin_param_file(cfgfile: str, out_dir: str, soc: str): + op_descs = opdesc_parser.get_op_desc(cfgfile, [], [], BinParamBuilder, None) + for op_desc in op_descs: + op_desc.set_soc_version(soc) + op_desc.set_out_path(out_dir) + op_desc.gen_input_json() + + +if __name__ == '__main__': + if len(sys.argv) <= 3: + raise RuntimeError('arguments must greater than 3') + gen_bin_param_file(sys.argv[1], sys.argv[2], sys.argv[3]) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_impl_build.py b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_impl_build.py new file mode 100644 index 0000000..7fe177d --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_impl_build.py @@ -0,0 +1,446 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import re +import stat +import opdesc_parser +import const_var + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + +IMPL_HEAD = ''' +import os, sys +import ctypes +import json +import shutil +from tbe.common.platform import get_soc_spec +from tbe.common.utils import para_check +from tbe.tikcpp import compile_op, replay_op, check_op_cap, generalize_op_params, get_code_channel, OpInfo +from tbe.common.buildcfg import get_default_build_config +from impl.util.platform_adapter import tbe_register +from tbe.common.buildcfg import get_current_build_config +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + +DTYPE_MAP = {"float32": ["DT_FLOAT", "float"], + "float16": ["DT_FLOAT16", "half"], + "int8": ["DT_INT8", "int8_t"], + "int16": ["DT_INT16", "int16_t"], + "int32": ["DT_INT32", "int32_t"], + "int64": ["DT_INT64", "int64_t"], + "uint1": ["DT_UINT1", "uint8_t"], + "uint8": ["DT_UINT8", "uint8_t"], + "uint16": ["DT_UINT16", "uint16_t"], + "uint32": ["DT_UINT32", "uint32_t"], + "uint64": ["DT_UINT64", "uint64_t"], + "bool": ["DT_BOOL", "bool"], + "double": ["DT_DOUBLE", "double"], + "dual": ["DT_DUAL", "unknown"], + "dual_sub_int8": ["DT_DUAL_SUB_INT8", "unknown"], + "dual_sub_uint8": ["DT_DUAL_SUB_UINT8", "unknown"], + "string": ["DT_STRING", "unknown"], + "complex64": ["DT_COMPLEX64", "unknown"], + "complex128": ["DT_COMPLEX128", "unknown"], + "qint8": ["DT_QINT8", "unknown"], + "qint16": ["DT_QINT16", "unknown"], + "qint32": ["DT_QINT32", "unknown"], + "quint8": ["DT_QUINT8", "unknown"], + "quint16": ["DT_QUINT16", "unknown"], + "resource": ["DT_RESOURCE", "unknown"], + "string_ref": ["DT_STRING_REF", "unknown"], + "int4": ["DT_INT4", "int8_t"], + "bfloat16": ["DT_BF16", "bfloat16_t"]} + +def get_dtype_fmt_options(__inputs__, __outputs__): + options = [] + for x in __inputs__ + __outputs__: + x_n = x.get("param_name").upper() + x_fmt = x.get("format") + x_dtype = x.get("dtype") + options.append("-DDTYPE_{n}={t}".format(n=x_n, t=DTYPE_MAP.get(x_dtype)[1])) + options.append("-DORIG_DTYPE_{n}={ot}".format(n=x_n, ot=DTYPE_MAP.get(x_dtype)[0])) + options.append("-DFORMAT_{n}=FORMAT_{f}".format(n=x_n, f=x_fmt)) + return options + +def load_dso(so_path): + try: + ctypes.CDLL(so_path) + except OSError as error : + print(error) + raise RuntimeError("cannot open %s" %(so_path)) + else: + print("load so succ ", so_path) + +def get_shortsoc_compile_option(compile_option_list: list, shortsoc:str): + compile_options = [] + if shortsoc in compile_option_list: + compile_options = compile_option_list[shortsoc] + elif '__ALLSOC__' in compile_option_list: + compile_options = compile_option_list['__ALLSOC__'] + return compile_options + +''' + +IMPL_API = ''' +@tbe_register.register_operator("{}") +@para_check.check_op_params({}) +def {}({}, kernel_name="{}", impl_mode=""): + if get_current_build_config("enable_op_prebuild"): + return + __inputs__, __outputs__, __attrs__ = _build_args({}) + options = get_dtype_fmt_options(__inputs__, __outputs__) + options += ["-x", "cce"] + ccec = os.environ.get('CCEC_REAL_PATH') + if ccec is None: + ccec = shutil.which("ccec") + if ccec != None: + ccec_path = os.path.dirname(ccec) + tikcpp_path = os.path.realpath(os.path.join(ccec_path, "..", "..", "tikcpp")) + else: + tikcpp_path = os.path.realpath("/usr/local/Ascend/latest/compiler/tikcpp") + options.append("-I" + tikcpp_path) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "impl")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "interface")) + options.append("-I" + os.path.join(PYF_PATH, "..", "ascendc", "common")) + if impl_mode == "high_performance": + options.append("-DHIGH_PERFORMANCE=1") + elif impl_mode == "high_precision": + options.append("-DHIGH_PRECISION=1") + if get_default_build_config("enable_deterministic_mode") == 1: + options.append("-DDETEMINISTIC_MODE=1") + + custom_compile_options = {}, + custom_all_compile_options = {}, + soc_version = get_soc_spec("SOC_VERSION") + soc_short = get_soc_spec("SHORT_SOC_VERSION").lower() + custom_compile_options_soc = get_shortsoc_compile_option(custom_compile_options[0], soc_short) + custom_all_compile_options_soc = get_shortsoc_compile_option(custom_all_compile_options[0], soc_short) + options += custom_all_compile_options_soc + options += custom_compile_options_soc + + origin_func_name = "{}" + ascendc_src_dir = "{}" + ascendc_src_file = "{}" + src = os.path.join(PYF_PATH, "..", "ascendc", ascendc_src_dir, ascendc_src_file) + if not os.path.exists(src): + src = os.path.join(PYF_PATH, ascendc_src_file) +''' + +REPLAY_OP_API = ''' + print("start replay Acend C Operator {}, kernel name is {}") + tikreplay_codegen_path = tikcpp_path + "/tikreplaylib/lib" + tikreplay_stub_path = tikcpp_path + "/tikreplaylib/lib/" + soc_version + print("start load libtikreplaylib_codegen.so and libtikreplaylib_stub.so") + codegen_so_path = tikreplay_codegen_path + "/libtikreplaylib_codegen.so" + replaystub_so_path = tikreplay_stub_path + "/libtikreplaylib_stub.so" + if PYF_PATH.endswith("dynamic"): + op_replay_path = os.path.join(PYF_PATH, "..", "..", "op_replay") + else: + op_replay_path = os.path.join(PYF_PATH, "..", "op_replay") + replayapi_so_path = os.path.join(op_replay_path, "libreplay_{}_" + soc_short + ".so") + load_dso(codegen_so_path) + load_dso(replaystub_so_path) + load_dso(replayapi_so_path) + op_type = "{}" + entry_obj = os.path.join(op_replay_path, "{}_entry_" + soc_short + ".o") + code_channel = get_code_channel(src, kernel_name, op_type, options) + op_info = OpInfo(kernel_name = kernel_name, op_type = op_type, inputs = __inputs__, outputs = __outputs__,\\ + attrs = __attrs__, impl_mode = impl_mode) + res, msg = replay_op(op_info, entry_obj, code_channel, src, options) + if not res: + print("call replay op failed for %s and get into call compile op" %(msg)) + compile_op(src, origin_func_name, op_info, options, code_channel, '{}') +''' + +COMPILE_OP_API = ''' + print("start compile Ascend C operator {}. kernel name is {}") + op_type = "{}" + code_channel = get_code_channel(src, kernel_name, op_type, options) + op_info = OpInfo(kernel_name = kernel_name, op_type = op_type, inputs = __inputs__, outputs = __outputs__,\\ + attrs = __attrs__, impl_mode = impl_mode, origin_inputs=[{}], origin_outputs = [{}]) + compile_op(src, origin_func_name, op_info, options, code_channel, '{}') +''' + +SUP_API = ''' +def {}({}, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args({}) + ret_str = check_op_cap("{}", "{}", __inputs__, __outputs__, __attrs__) + ret_dict = json.loads(ret_str) + err_code = ret_dict.get("ret_code") + sup = "Unknown" + reason = "Unknown reason" + if err_code is not None: + if err_code is 0: + sup = "True" + reason = "" + elif err_code is 1: + sup = "False" + reason = ret_dict.get("reason") + else: + sup = "Unknown" + reason = ret_dict.get("reason") + return sup, reason +''' +CAP_API = ''' +def {}({}, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args({}) + result = check_op_cap("{}", "{}", __inputs__, __outputs__, __attrs__) + return result.decode("utf-8") +''' +GLZ_API = ''' +@tbe_register.register_param_generalization("{}") +def {}_generalization({}, generalize_config=None): + __inputs__, __outputs__, __attrs__ = _build_args({}) + ret_str = generalize_op_params("{}", __inputs__, __outputs__, __attrs__, generalize_config) + return [json.loads(ret_str)] +''' + +ATTR_DEFAULT = {'bool': 'False', 'int': '0', 'float': '0.0', 'listInt': '[]', + 'listFloat': '[]', 'listBool': '[]', 'listListInt': '[[]]', 'str': ''} + + +def optype_snake(origin_str): + temp_str = origin_str[0].lower() + origin_str[1:] + new_str = re.sub(r'([A-Z])', r'_\1', temp_str).lower() + return new_str + + +class AdpBuilder(opdesc_parser.OpDesc): + def __init__(self: any, op_type: str): + self.argsname = [] + self.argsdefv = [] + self.op_compile_option:str = '{}' + super().__init__(op_type) + + + def write_adapt(self: any, impl_path, path: str, op_compile_option_all:list = None): + self._build_paradefault() + if impl_path != "": + src_file = os.path.join(impl_path, self.op_file + '.cpp') + if not os.path.exists(src_file): + return + out_path = os.path.abspath(path) + if self.dynamic_shape and not out_path.endswith('dynamic'): + out_path = os.path.join(path, 'dynamic') + os.makedirs(out_path, mode=0o700, exist_ok=True) + adpfile = os.path.join(out_path, self.op_file + '.py') + self._gen_op_compile_option(op_compile_option_all) + with os.fdopen(os.open(adpfile, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + self._write_head(fd) + self._write_argparse(fd) + self._write_impl(fd) + if self.op_chk_support: + self._write_cap('check_supported', fd) + self._write_cap('get_op_support_info', fd) + if self.op_fmt_sel: + self._write_cap('op_select_format', fd) + self._write_cap('get_op_specific_info', fd) + if self.op_range_limit == 'limited' or self.op_range_limit == 'dynamic': + self._write_glz(fd) + + + def _gen_op_compile_option(self:any, op_compile_option_all:list =None): + if op_compile_option_all is not None: + if self.op_type in op_compile_option_all: + self.op_compile_option = op_compile_option_all[self.op_type] + elif "__all__" in op_compile_option_all: + self.op_compile_option = op_compile_option_all["__all__"] + + + def _ip_argpack(self: any, default: bool = True) -> list: + args = [] + for i in range(len(self.input_name)): + arg = self.input_name[i] + if default and self.argsdefv[i] is not None: + arg += '=' + self.argsdefv[i] + args.append(arg) + return args + + def _op_argpack(self: any, default: bool = True) -> list: + args = [] + argidx = len(self.input_name) + for i in range(len(self.output_name)): + arg = self.output_name[i] + if default and self.argsdefv[i + argidx] is not None: + arg += '=' + self.argsdefv[i + argidx] + args.append(arg) + return args + + def _attr_argpack(self: any, default: bool = True) -> list: + args = [] + argidx = len(self.input_name) + len(self.output_name) + for i in range(len(self.attr_list)): + att = self.attr_list[i] + arg = att + if default and self.argsdefv[i + argidx] is not None: + if self.attr_val.get(att).get('type') == 'str': + arg += '="' + self.argsdefv[i + argidx] + '"' + elif self.attr_val.get(att).get('type') == 'bool': + arg += '=' + self.argsdefv[i + argidx].capitalize() + else: + arg += '=' + self.argsdefv[i + argidx] + args.append(arg) + return args + + def _build_paralist(self: any, default: bool = True) -> str: + args = [] + args.extend(self._ip_argpack(default)) + args.extend(self._op_argpack(default)) + args.extend(self._attr_argpack(default)) + return ', '.join(args) + + def _io_parachk(self: any, types: list, type_name: str) -> list: + chk = [] + for iot in types: + if iot == 'optional': + ptype = 'OPTION' + else: + ptype = iot.upper() + chk.append('para_check.{}_{}'.format(ptype, type_name)) + return chk + + def _attr_parachk(self: any) -> list: + chk = [] + for att in self.attr_list: + if self.attr_val.get(att).get('paramType') == 'optional': + pt = 'OPTION' + else: + pt = self.attr_val.get(att).get('paramType').upper() + att_type = self.attr_val.get(att).get('type').upper() + att_type = att_type.replace('LIST', 'LIST_') + chk.append('para_check.{}_ATTR_{}'.format(pt, att_type)) + return chk + + def _build_parachk(self: any) -> str: + chk = [] + chk.extend(self._io_parachk(self.input_type, 'INPUT')) + chk.extend(self._io_parachk(self.output_type, 'OUTPUT')) + chk.extend(self._attr_parachk()) + chk.append('para_check.KERNEL_NAME') + return ', '.join(chk) + + def _build_paradefault(self: any): + optional = False + argtypes = [] + argtypes.extend(self.input_type) + argtypes.extend(self.output_type) + for atype in argtypes: + if atype == 'optional': + optional = True + if optional: + self.argsdefv.append('None') + else: + self.argsdefv.append(None) + for attr in self.attr_list: + atype = self.attr_val.get(attr).get('paramType') + if atype == 'optional': + optional = True + attrval = self.attr_val.get(attr).get('defaultValue') + if attrval is not None: + optional = True + if type == "bool": + attrval = attrval.capitalize() + elif type == "str": + attrval = "\"" + attrval + "\"" + self.argsdefv.append(attrval) + continue + if optional: + self.argsdefv.append(ATTR_DEFAULT.get(self.attr_val.get(attr).get('type'))) + else: + self.argsdefv.append(None) + + def _write_head(self: any, fd: object): + fd.write(IMPL_HEAD) + + def _write_argparse(self: any, fd: object): + args = self._build_paralist(False) + fd.write('def _build_args({}):\n'.format(args)) + fd.write(' __inputs__ = []\n') + fd.write(' for arg in [{}]:\n'.format(', '.join(self.input_name))) + fd.write(' if arg != None:\n') + fd.write(' if isinstance(arg, (list, tuple)):\n') + fd.write(' if len(arg) == 0:\n') + fd.write(' continue\n') + fd.write(' __inputs__.append(arg[0])\n') + fd.write(' else:\n') + fd.write(' __inputs__.append(arg)\n') + fd.write(' __outputs__ = []\n') + fd.write(' for arg in [{}]:\n'.format(', '.join(self.output_name))) + fd.write(' if arg != None:\n') + fd.write(' if isinstance(arg, (list, tuple)):\n') + fd.write(' if len(arg) == 0:\n') + fd.write(' continue\n') + fd.write(' __outputs__.append(arg[0])\n') + fd.write(' else:\n') + fd.write(' __outputs__.append(arg)\n') + fd.write(' __attrs__ = []\n') + for attr in self.attr_list: + fd.write(' if {} != None:\n'.format(attr)) + fd.write(' attr = {}\n') + fd.write(' attr["name"] = "{}"\n'.format(attr)) + fd.write(' attr["dtype"] = "{}"\n'.format(self.attr_val.get(attr).get('type'))) + fd.write(' attr["value"] = {}\n'.format(attr)) + fd.write(' __attrs__.append(attr)\n') + fd.write(' return __inputs__, __outputs__, __attrs__\n') + + def _write_impl(self: any, fd: object): + argsdef = self._build_paralist() + argsval = self._build_paralist(False) + pchk = self._build_parachk() + if len(self.kern_name) > 0: + kern_name = self.kern_name + else: + kern_name = self.op_intf + src = self.op_file + '.cpp' + fd.write(IMPL_API.format(self.op_type, pchk, self.op_intf, argsdef, kern_name, argsval,\ + self.custom_compile_options, self.custom_all_compile_options, self.op_intf,\ + optype_snake(self.op_type), src)) + if self.op_replay_flag: + fd.write(REPLAY_OP_API.format(self.op_type, kern_name, self.op_file, self.op_type, self.op_file,\ + self.op_compile_option)) + else: + fd.write(COMPILE_OP_API.format(self.op_type, kern_name, self.op_type, ', '.join(self.input_name),\ + ', '.join(self.output_name), self.op_compile_option)) + + def _write_cap(self: any, cap_name: str, fd: object): + argsdef = self._build_paralist() + argsval = self._build_paralist(False) + if cap_name == 'check_supported': + fd.write(SUP_API.format(cap_name, argsdef, argsval, cap_name, self.op_type)) + else: + fd.write(CAP_API.format(cap_name, argsdef, argsval, cap_name, self.op_type)) + + def _write_glz(self: any, fd: object): + argsdef = self._build_paralist() + argsval = self._build_paralist(False) + fd.write(GLZ_API.format(self.op_type, self.op_intf, argsdef, argsval, self.op_type)) + + +def write_scripts(cfgfile: str, cfgs: dict, dirs: dict, ops: list = None, op_compile_option:list = None): + batch_lists = cfgs.get(const_var.REPLAY_BATCH).split(';') + iterator_lists = cfgs.get(const_var.REPLAY_ITERATE).split(';') + file_map = {} + op_descs = opdesc_parser.get_op_desc(cfgfile, batch_lists, iterator_lists, AdpBuilder,\ + ops, dirs.get(const_var.AUTO_GEN_DIR)) + for op_desc in op_descs: + op_desc.write_adapt(dirs.get(const_var.CFG_IMPL_DIR), dirs.get(const_var.CFG_OUT_DIR), op_compile_option) + file_map[op_desc.op_type] = op_desc.op_file + return file_map + +if __name__ == '__main__': + if len(sys.argv) <= 6: + raise RuntimeError('arguments must greater equal than 6') + rep_cfg = {} + rep_cfg[const_var.REPLAY_BATCH] = sys.argv[2] + rep_cfg[const_var.REPLAY_ITERATE] = sys.argv[3] + cfg_dir = {} + cfg_dir[const_var.CFG_IMPL_DIR] = sys.argv[4] + cfg_dir[const_var.CFG_OUT_DIR] = sys.argv[5] + cfg_dir[const_var.AUTO_GEN_DIR] = sys.argv[6] + write_scripts(cfgfile=sys.argv[1], cfgs=rep_cfg, dirs=cfg_dir) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_ops_config.py b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_ops_config.py new file mode 100644 index 0000000..7a97180 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_ops_config.py @@ -0,0 +1,114 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import glob +import json +import argparse +import const_var + + +def load_json(json_file: str): + with open(json_file, encoding='utf-8') as file: + json_content = json.load(file) + return json_content + + +def get_specified_suffix_file(root_dir, suffix): + specified_suffix = os.path.join(root_dir, '**/*.{}'.format(suffix)) + all_suffix_files = glob.glob(specified_suffix, recursive=True) + return all_suffix_files + + +def add_simplified_config(op_type, key, core_type, objfile, config): + simple_cfg = config.get('binary_info_config.json') + op_cfg = simple_cfg.get(op_type) + if not op_cfg: + op_cfg = {} + op_cfg['dynamicRankSupport'] = True + op_cfg['simplifiedKeyMode'] = 0 + op_cfg['binaryList'] = [] + simple_cfg[op_type] = op_cfg + bin_list = op_cfg.get('binaryList') + bin_list.append({'coreType': core_type, 'simplifiedKey': key, 'binPath': objfile}) + + +def add_op_config(op_file, bin_info, config): + op_cfg = config.get(op_file) + if not op_cfg: + op_cfg = {} + op_cfg['binList'] = [] + config[op_file] = op_cfg + op_cfg.get('binList').append(bin_info) + + +def gen_ops_config(json_file, soc, config): + core_type_map = {"MIX": 0, "AiCore": 1, "VectorCore": 2} + contents = load_json(json_file) + if ('binFileName' not in contents) or ('supportInfo' not in contents): + return + json_base_name = os.path.basename(json_file) + op_dir = os.path.basename(os.path.dirname(json_file)) + support_info = contents.get('supportInfo') + bin_name = contents.get('binFileName') + bin_suffix = contents.get('binFileSuffix') + core_type = core_type_map.get(contents.get("coreType")) + bin_file_name = bin_name + bin_suffix + op_type = bin_name.split('_')[0] + op_file = op_dir + '.json' + bin_info = {} + keys = support_info.get('simplifiedKey') + if keys: + bin_info['simplifiedKey'] = keys + for key in keys: + add_simplified_config(op_type, key, core_type, os.path.join(soc, op_dir, bin_file_name), config) + bin_info['staticKey'] = support_info.get('staticKey') + bin_info['int64Mode'] = support_info.get('int64Mode') + bin_info['inputs'] = support_info.get('inputs') + bin_info['outputs'] = support_info.get('outputs') + if support_info.get('attrs'): + bin_info['attrs'] = support_info.get('attrs') + bin_info['binInfo'] = {'jsonFilePath': os.path.join(soc, op_dir, json_base_name)} + add_op_config(op_file, bin_info, config) + + +def gen_all_config(root_dir, soc): + suffix = 'json' + config = {} + config['binary_info_config.json'] = {} + all_json_files = get_specified_suffix_file(root_dir, suffix) + for _json in all_json_files: + gen_ops_config(_json, soc, config) + for cfg_key in config.keys(): + cfg_file = os.path.join(root_dir, cfg_key) + with os.fdopen(os.open(cfg_file, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + json.dump(config.get(cfg_key), fd, indent=' ') + + +def args_prase(): + parser = argparse.ArgumentParser() + parser.add_argument('-p', + '--path', + nargs='?', + required=True, + help='Parse the path of the json file.') + parser.add_argument('-s', + '--soc', + nargs='?', + required=True, + help='Parse the soc_version of ops.') + return parser.parse_args() + + +def main(): + args = args_prase() + gen_all_config(args.path, args.soc) + + +if __name__ == '__main__': + main() diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_replay_build.py b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_replay_build.py new file mode 100644 index 0000000..1cac7d9 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/ascendc_replay_build.py @@ -0,0 +1,65 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import opdesc_parser +import replay_codegen +import const_var +from replay_codegen import ReplayCodeGenParams + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + + +class ReplayBuilder(opdesc_parser.OpDesc): + def __init__(self: any, op_type: str): + super().__init__(op_type) + + def gen_replay_source(self: any, impl_path: str, out_path: str, ops_product: str): + if not self.op_replay_flag: + print('{} replay not enabled'.format(self.op_type)) + return + argn = len(self.input_name) + len(self.output_name) + 1 + if self.op_replay_batch: + print('{} replay in batch mode'.format(self.op_type)) + else: + print('{} replay in normal mode'.format(self.op_type)) + if impl_path.endswith('op_kernel'): + implf = os.path.join(impl_path, self.op_file + '.cpp') + tiling_file = os.path.join(impl_path, "../op_host", self.op_file + '_tiling.h') + else: + if self.dynamic_shape: + dyn_path = 'dynamic' + else: + dyn_path = '' + implf = os.path.join(impl_path, dyn_path, self.op_file + '.cpp') + tiling_file = os.path.join(impl_path, "../../op_tiling", self.op_file + '_tiling.h') + rep_conf = replay_codegen.ReplayCodeGen(ReplayCodeGenParams(self.op_type, implf, tiling_file, self.op_file, \ + self.op_intf, argn, self.op_replay_batch, self.max_block_dim, self.max_shape_size)) + rep_conf.set_batch(self.op_replay_batch) + rep_conf.set_outdir(out_path) + rep_conf.gen_replay(ops_product) + + +def gen_replay(cfgfile: str, cfgs: dict, dirs: dict, ops_product: str, ops: list = None): + batch_lists = cfgs.get(const_var.REPLAY_BATCH).split(';') + iterator_lists = cfgs.get(const_var.REPLAY_ITERATE).split(';') + op_descs = opdesc_parser.get_op_desc(cfgfile, batch_lists, iterator_lists, ReplayBuilder, ops) + for op_desc in op_descs: + op_desc.gen_replay_source(dirs.get(const_var.CFG_IMPL_DIR), dirs.get(const_var.CFG_OUT_DIR), ops_product) + + +if __name__ == '__main__': + if len(sys.argv) <= 6: + raise RuntimeError('arguments must greater than 6') + rep_cfg = {} + rep_cfg[const_var.REPLAY_BATCH] = sys.argv[2] + rep_cfg[const_var.REPLAY_ITERATE] = sys.argv[3] + rep_dir = {} + rep_dir[const_var.CFG_IMPL_DIR] = sys.argv[4] + rep_dir[const_var.CFG_OUT_DIR] = sys.argv[5] + gen_replay(sys.argv[1], rep_cfg, rep_dir, sys.argv[6]) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/batch_replay_impl.temp b/Increase_Bedore_pipe/Is_increase/cmake/util/batch_replay_impl.temp new file mode 100644 index 0000000..0e88346 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/batch_replay_impl.temp @@ -0,0 +1,117 @@ +#include +#include +#include +#include +#include +#include +#include +#include "replay_def.h" +#include "code_gen.h" +#include "replay_fun.h" +#include "register/op_check.h" +#define __ASCENDC_REPLAY_CODE__ +#include + +using namespace std; +using namespace optiling; +using namespace AscendCReplay; + +extern "C" void __KERNEL_FUN__ (__ARGS_DEF__, const char *); +extern "C" int elf_batch_append(char *elf, uint32_t elfSize, char *jit, int kernum, char *atext[], int alen[], + int atlen, const char* kernelname[]); + +#define KERNEL_N 1 +#define ARG_N (__ARG_NUM__) +#define MAX_L (1024 * 1024 * 100) +#define MAX_E (1024 * 1024) + +int __KERNEL_FUN___replay___OPS_PRODUCT__(ReplayFuncParam& param, const int core_type) +{ + // gen type 1 : direct call codes 0: load .o file + if (param.gentype < 0 || param.gentype > 1) { + printf("Error: call replay gen type is %d, should only be 1 or 0\n", param.gentype); + return 0; + } else if (param.gentype == 1 && param.objptr == nullptr) { + printf("Error: call replay with direct call mode, but code obj addr is null\n"); + return 0; + } else if (param.gentype == 0 && param.output_kernel_file == nullptr) { + printf("Error: call replay with object file mode, but object file path is null\n"); + return 0; + } + // core_type 0:MIX 1:CUBE 2:VEC + if (core_type < 0 || core_type > 2) { + printf("Error: call replay core type is %d !\n", core_type); + return 0; + } + g_coreType = __CORE_TYPE__; + g_taskRation = param.task_ration; + g_tilingKey = param.tiling_key; + + unsigned char *buf, *jit; + char *kernel[KERNEL_N]; + int len[KERNEL_N]; + block_idx = 0; + block_num = param.block_dim; + g_ubBase = block_num; + uint8_t *code = (uint8_t *)malloc(MAX_L); + uint8_t *pos = code; + struct timespec tp1, tp2; + + clock_gettime(CLOCK_MONOTONIC, &tp1); + if (block_num > 32) { + printf("Error: block_num > 32\n"); + return 0; + } + //__OP_FOPEN__ + for (int i = 0; i < KERNEL_N; i++) { + //__OP_SET_KERNEL__ + for (int j = 0; j < ARG_N; j++) + AddArg(j, ARG_STEP * (j + 1)); +#ifdef FP_CEILING + SetCtrlFloatEnable(); +#else + SetCtrlFloatDisable(); +#endif + CodeInit(pos, true); + __KERNEL_FUN__(__KERNEL_ARGS__, param.tiling_data); + CodeEnd(); + kernel[i] = (char *)pos; + len[i] = CodeLen(); + pos += len[i]; + } + //__OP_FCLOSE__ + clock_gettime(CLOCK_MONOTONIC, &tp2); + buf = (unsigned char *)malloc(MAX_E); + int fd = open(param.entry_file, O_RDONLY); + if (fd < 0) { + printf("[error]: cannot find entry.o : %s\n", param.entry_file); + return 0; + } + uint32_t bufSize = read(fd, buf, MAX_E); + if (bufSize <= 0) { + printf("[error]: entry.o : %s is too small ! \n", param.entry_file); + } + close(fd); + jit = (unsigned char *)malloc(MAX_L); + printf("total code generated %ld\n", pos - code); + int sz = elf_batch_append((char *)buf, bufSize, (char *)jit, KERNEL_N, kernel, len, pos - code, ¶m.kernel_name); + if (tp1.tv_sec != tp2.tv_sec) { + printf("%ld NS\n", tp2.tv_nsec + 1000000000 - tp1.tv_nsec); + } else { + printf("%ld NS\n", tp2.tv_nsec - tp1.tv_nsec); + } + printf("new elf size %d\n", sz); + if (param.gentype == 0) { + fd = open(param.output_kernel_file, O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); + (void)write(fd, jit, sz); + close(fd); + free(jit); + } else if (param.gentype == 1) { + *param.objptr = (char*)jit; + } + free(buf); + free(code); + return sz; +} + +REG_REPLAY_FUNC(__OPTYPE__, __OPS_PRODUCT__, __KERNEL_FUN___replay___OPS_PRODUCT__); diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/code_channel_infer.py b/Increase_Bedore_pipe/Is_increase/cmake/util/code_channel_infer.py new file mode 100644 index 0000000..137c9f3 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/code_channel_infer.py @@ -0,0 +1,115 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" +import os +import stat +import ctypes +import collections +import shutil +import subprocess +import copy + +"""CODE_* is used to cube/vector api is called in operator code +CODE_MIX means both cube and vector api is called +CODE_CUBE means only cube api is called +CODE_VEC means only vector api is called +""" +CODE_MIX = 0 +CODE_CUBE = 1 +CODE_VEC = 2 + + +def _is_v220(op_product: str): + """return if current soc version is V220 + + Returns: + res: True means V220 + """ + if op_product in ["ascend910b"]: + return True + return False + + +InfoCodeChanelParams = collections.namedtuple('InfoCodeChanelParams',\ +['src_file', 'tiling_header', 'kernel_name', 'outdir', 'op_product', 'compile_options']) + + +def infer_code_channel(params: InfoCodeChanelParams): + """get code channel for v220, return CODE_MIX if soc version is not V220 + + Args: + src_file (str): AscendC operator code file + src_file (str): AscendC operator tiling header file + kernel_name (str): kernel function name + optype (str): operator type + compile_options (list): compile options for ccec cmd + + Raises: + Exception: if not exist L1/L0/UB if code, it's not a aicore code + + Returns: + res (int): CODE_MIX/CODE_CUBE/CODE_VEC + """ + if not _is_v220(params.op_product): + return CODE_MIX + return CODE_VEC + if params.compile_options is None: + compile_options = [] + else: + compile_options = params.compile_options + ccec = shutil.which("ccec") + if ccec is not None: + ccec_path = os.path.dirname(ccec) + tikcpp_path = os.path.realpath(os.path.join(ccec_path, "..", "..", "tikcpp")) + else: + tikcpp_path = os.path.realpath("/usr/local/Ascend/latest/compiler/tikcpp") + compile_options.append("-I" + tikcpp_path) + compile_options.append("-I" + os.path.join(tikcpp_path, "tikcfw")) + compile_options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "impl")) + compile_options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "interface")) + compile_options += ["-include", params.tiling_header] + arch = "dav-c220-cube" + sub_core_type = "AIC" + optional_core = "AiCore" + compile_cmd = [shutil.which("ccec"), '-c', '-O3'] + compile_cmd += compile_options + temp_file_name_tag = "_" + str(os.getpid()) + "_temp.o" + dst_file = os.path.join(kernel_meta_dir, kernel_name + temp_file_name_tag) + compile_cmd += [params.src_file, "--cce-aicore-arch={}".format(arch), + "--cce-aicore-only", "-o", dst_file, + "-mllvm", "-cce-aicore-function-stack-size=16000", + "-mllvm", "-cce-aicore-record-overflow=true", + "-mllvm", "-cce-aicore-addr-transform"] + compile_cmd += ["-std=c++17"] + print('get_code_channel: ', ' '.join(compile_cmd)) + proc = subprocess.Popen( + compile_cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) + (out, _) = proc.communicate() + if proc.returncode != 0: + print('get_code_channel coretype compile error: ', out.decode()) + msg = "compile %s error :%s\n" % (params.src_file, out.decode()) + raise Exception(f"get_code_channel coretype error, msg is{msg}") + objdump_cmd = ['objdump', '-s', '-j', '.text', '{}'.format(dst_file)] + + proc = subprocess.Popen( + objdump_cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) + (out, _) = proc.communicate() + if proc.returncode != 0: + print('get_code_channel objdump error: ', out.decode()) + msg = "get_code_channel objdump %s error :%s\n" % (src_file, out.decode()) + raise Exception(f"get_code_channel objdump error, msg is{msg}") + os.remove(dst_file) + lines = out.decode('utf-8').split('\n') + for line in lines: + insts = line.strip().split() + if len(insts) < 5: + continue + for inst in insts[1:]: + if len(inst) != 8: + continue + if inst[6] == 'f': + return CODE_MIX + return CODE_VEC diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/const_var.py b/Increase_Bedore_pipe/Is_increase/cmake/util/const_var.py new file mode 100644 index 0000000..8b32c3b --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/const_var.py @@ -0,0 +1,33 @@ + +#!/usr/bin/env python +# coding=utf-8 +""" +Function: +The replay funtion entry +Copyright Information: +Huawei Technologies Co., Ltd. All Rights Reserved © 2020 +""" + +import os +import stat + + +REPLAY_BATCH = 'batch' +REPLAY_ITERATE = 'iterate' +CFG_IMPL_DIR = 'impl_dir' +CFG_OUT_DIR = 'out_dir' +AUTO_GEN_DIR = 'auto_gen_dir' +WFLAGS = os.O_WRONLY | os.O_CREAT | os.O_TRUNC +WMODES = stat.S_IWUSR | stat.S_IRUSR +SOC_MAP_EXT = {'ascend310p': 'Ascend310P3', 'ascend310b': 'Ascend310B1', + 'ascend910': 'Ascend910A', 'ascend910b': 'Ascend910B1'} +BIN_CMD = 'opc $1 --main_func={fun} --input_param={param} --soc_version={soc} \ +--output=$2 --impl_mode={impl} --simplified_key_mode=0 --op_mode=dynamic\n' +CHK_CMD = ''' +if ! test -f $2/{res_file} ; then + echo "$2/{res_file} not generated!" + exit 1 +fi +''' +ATTR_DEF_VAL = {'str' : '', 'int': 0, 'float': 0.0, 'bool': False, 'list_bool': [], + 'list_int': [], 'list_float': [], 'list_list_int': [[]]} diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/gen_impl_and_mrege_json.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/gen_impl_and_mrege_json.sh new file mode 100644 index 0000000..55e12e5 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/gen_impl_and_mrege_json.sh @@ -0,0 +1,57 @@ +#!/usr/bin/bash + +project_path=$1 +build_path=$2 +vendor_name=customize +if [[ ! -d "$project_path" ]]; then + echo "[ERROR] No projcet path is provided" + exit 1 +fi + +if [[ ! -d "$build_path" ]]; then + echo "[ERROR] No build path is provided" + exit 1 +fi + +# copy ai_core operators implements +# tbe_impl_files_num=$(ls $project_path/tbe/impl/* 2> /dev/null | wc -l) +# if [[ "$tbe_impl_files_num" -gt 0 ]];then +# cp -r ${project_path}/tbe/impl/* ${build_path}/makepkg/packages/vendors/$vendor_name/op_impl/ai_core/tbe/customize_impl +# cp -r ${project_path}/tbe/impl/* ${build_path}/makepkg/packages/vendors/$vendor_name/op_impl/vector_core/tbe/customize_impl +# fi + +# copy aicpu kernel so operators +if [[ -d "${project_path}/cpukernel/aicpu_kernel_lib" ]]; then + cp -f ${project_path}/cpukernel/aicpu_kernel_lib/* ${build_path}/makepkg/packages/vendors/$vendor_name/op_impl/cpu/aicpu_kernel/impl + rm -rf ${project_path}/cpukernel/aicpu_kernel_lib +fi + +# merge aicpu.ini and aicore.ini to generate npu_supported_ops.json +# mkdir -p ${build_path}/framework/op_info_cfg +# mkdir -p ${build_path}/framework/op_info_cfg/aicpu_kernel +# mkdir -p ${build_path}/framework/op_info_cfg/ai_core + +# if [[ -d "${project_path}/tbe/op_info_cfg/ai_core" ]]; then +# bash ${project_path}/cmake/util/gen_ops_filter.sh ${project_path}/tbe/op_info_cfg/ai_core ${build_path}/framework/op_info_cfg/ai_core +# fi + +# if [[ -d "${project_path}/cpukernel/op_info_cfg/aicpu_kernel" ]]; then +# bash ${project_path}/cmake/util/gen_ops_filter.sh ${project_path}/cpukernel/op_info_cfg/aicpu_kernel ${build_path}/framework/op_info_cfg/aicpu_kernel +# fi + +# aicpu_filter_file=${build_path}/framework/op_info_cfg/aicpu_kernel/npu_supported_ops.json +# aicore_filter_file=${build_path}/framework/op_info_cfg/ai_core/npu_supported_ops.json +# if [[ -f "${aicpu_filter_file}" ]] && [[ ! -f "${aicore_filter_file}" ]]; then +# cp $aicpu_filter_file ${build_path}/makepkg/packages/vendors/$vendor_name/framework/tensorflow +# fi +# if [[ -f "${aicore_filter_file}" ]] && [[ ! -f "${aicpu_filter_file}" ]]; then +# cp $aicore_filter_file ${build_path}/makepkg/packages/vendors/$vendor_name/framework/tensorflow +# fi + +# if [[ -f "${aicore_filter_file}" ]] && [[ -f "${aicpu_filter_file}" ]]; then +# chmod u+w ${aicpu_filter_file} +# python3 ${project_path}/cmake/util/insert_op_info.py ${aicore_filter_file} ${aicpu_filter_file} +# chmod u-w ${aicpu_filter_file} +# cp $aicpu_filter_file ${build_path}/makepkg/packages/vendors/$vendor_name/framework/tensorflow +# fi + diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/gen_ops_filter.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/gen_ops_filter.sh new file mode 100644 index 0000000..d4c27d1 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/gen_ops_filter.sh @@ -0,0 +1,62 @@ +#!/bin/bash +# Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +# Description: Generate npu_supported_ops.json +# ============================================================================== + +if [[ -z "$1" ]]; then + echo -e "[ERROR] No source dir provided" + exit 1 +fi + +if [[ -z "$2" ]]; then + echo -e "[ERROR] No destination dir provided" + exit 1 +fi + +src=$1 +dest_file=$2/npu_supported_ops.json + +if [ -f "$dest_file" ];then + chmod u+w $dest_file +fi + +echo $* + +add_ops() { + name=$1 + isHeavy=$2 + file=$3 + grep -w "\"$name\"" ${file} >/dev/null + if [ $? == 0 ];then + return + fi + echo " \"${name}\": {" >> ${file} + echo " \"isGray\": false," >> ${file} + echo " \"isHeavy\": ${isHeavy}" >> ${file} + echo " }," >> ${file} +} + +echo "{" > ${dest_file} +ini_files=$(find ${src} -name "*.ini") +for file in ${ini_files} ; do + name=$(grep '^\[' ${file} | sed 's/\[//g' | sed 's/]//g' | sed 's/\r//g') + grep 'heavyOp.flag' ${file} >/dev/null + if [ $? == 0 ];then + isHeavy=$(grep 'heavyOp.flag' ${file} | awk -F= '{print $2}') + else + isHeavy="false" + fi + for op in ${name} ; do + add_ops ${op} "false" ${dest_file} + done +done +echo "}" >> ${dest_file} +file_count=$(cat ${dest_file} | wc -l) +line=$(($file_count-1)) +sed -i "${line}{s/,//g}" ${dest_file} + +chmod 640 "${dest_file}" +echo -e "[INFO] Succed generated ${dest_file}" + +exit 0 + diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/gen_version_info.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/gen_version_info.sh new file mode 100644 index 0000000..a06cfc7 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/gen_version_info.sh @@ -0,0 +1,6 @@ +ascend_install_dir=$1 +gen_file_dir=$2 + +# create version.info +compiler_version=$(grep "Version" -w ${ascend_install_dir}/compiler/version.info | awk -F = '{print $2}') +echo "custom_opp_compiler_version=${compiler_version}" > ${gen_file_dir}/version.info \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/insert_op_info.py b/Increase_Bedore_pipe/Is_increase/cmake/util/insert_op_info.py new file mode 100644 index 0000000..28ba087 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/insert_op_info.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" +import json +import os +import sys +import stat +import const_var + + +if __name__ == '__main__': + if len(sys.argv) != 3: + print(sys.argv) + print('argv error, inert_op_info.py your_op_file lib_op_file') + sys.exit(2) + + with open(sys.argv[1], 'r') as load_f: + insert_operator = json.load(load_f) + + all_operators = {} + if os.path.exists(sys.argv[2]): + if os.path.getsize(sys.argv[2]) != 0: + with open(sys.argv[2], 'r') as load_f: + all_operators = json.load(load_f) + + for k in insert_operator.keys(): + if k in all_operators.keys(): + print('replace op:[', k, '] success') + else: + print('insert op:[', k, '] success') + all_operators[k] = insert_operator[k] + + with os.fdopen(os.open(sys.argv[2], const_var.WFLAGS, const_var.WMODES), 'w') as json_file: + json_file.write(json.dumps(all_operators, indent=4)) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/insert_simplified_keys.py b/Increase_Bedore_pipe/Is_increase/cmake/util/insert_simplified_keys.py new file mode 100644 index 0000000..ace727b --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/insert_simplified_keys.py @@ -0,0 +1,248 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import re +import glob +import json +import argparse +import const_var + + +DATA_TPYE_DICT = { + 'float32': 0, + 'float16': 1, + 'int8': 2, + 'int16': 6, + 'uint16': 7, + 'uint8': 4, + 'int32': 3, + 'int64': 9, + 'uint32': 8, + 'uint64': 10, + 'bool': 12, + 'double': 11, + 'string': 13, + 'dual': 14, + 'dual': 15, + 'complex64': 16, + 'complex128': 17, + 'qint8': 18, + 'qint16': 19, + 'qint32': 20, + 'quint8': 21, + 'quint16': 22, + 'resource': 23, + 'string': 24, + 'dual': 25, + 'variant': 26, + 'bf16': 27, + 'bfloat16': 27, + 'undefined': 28, + 'int4': 29, + 'uint1': 30, + 'int2': 31 +} + +FORMAT_DICT = { + 'NCHW': 0, + 'NHWC': 1, + 'ND': 2, + 'NC1HWC0': 3, + 'FRACTAL_Z': 4, + 'NC1C0HWPAD': 5, + 'NHWC1C0': 6, + 'FSR_NCHW': 7, + 'FRACTAL_DECONV': 8, + 'C1HWNC0': 9, + 'FRACTAL_DECONV_TRANSPOSE': 10, + 'FRACTAL_DECONV_SP_STRIDE_TRANS': 11, + 'NC1HWC0_C04': 12, + 'FRACTAL_Z_C04': 13, + 'CHWN': 14, + 'FRACTAL_DECONV_SP_STRIDE8_TRANS': 15, + 'HWCN': 16, + 'NC1KHKWHWC0': 17, + 'BN_WEIGHT': 18, + 'FILTER_HWCK': 19, + 'HASHTABLE_LOOKUP_LOOKUPS': 20, + 'HASHTABLE_LOOKUP_KEYS': 21, + 'HASHTABLE_LOOKUP_VALUE': 22, + 'HASHTABLE_LOOKUP_OUTPUT': 23, + 'HASHTABLE_LOOKUP_HITS': 24, + 'C1HWNCoC0': 25, + 'MD': 26, + 'NDHWC': 27, + 'FRACTAL_ZZ': 28, + 'FRACTAL_NZ': 29, + 'NCDHW': 30, + 'DHWCN': 31, + 'NDC1HWC0': 32, + 'FRACTAL_Z_3D': 33, + 'CN': 34, + 'NC': 35, + 'DHWNC': 36, + 'FRACTAL_Z_3D_TRANSPOSE': 37, + 'FRACTAL_ZN_LSTM': 38, + 'FRACTAL_Z_G': 39, + 'RESERVED': 40, + 'ALL': 41, + 'NULL': 42, + 'ND_RNN_BIAS': 43, + 'FRACTAL_ZN_RNN': 44, + 'NYUV': 45, + 'NYUV_A': 46 +} + + +def load_json(json_file: str): + with open(json_file, encoding='utf-8') as file: + json_content = json.load(file) + return json_content + + +def get_specified_suffix_file(root_dir, suffix): + specified_suffix = os.path.join(root_dir, '**/*.{}'.format(suffix)) + all_suffix_files = glob.glob(specified_suffix, recursive=True) + return all_suffix_files + + +def get_deterministic_value(support_info): + deterministic_key = 'deterministic' + if deterministic_key not in support_info: + return 0 + deterministic_value = support_info.get(deterministic_key) + if deterministic_value == 'true': + return 1 + else: + return 0 + + +def get_precision_value(support_info): + precision_key = 'implMode' + precision_value = support_info.get(precision_key) + if precision_value == 'high_performance': + _value = 1 + elif precision_value == 'high_precision': + _value = 2 + else: + _value = 0 + return _value + + +def get_overflow_value(support_info): + return 0 + + +def get_parameters(info): + if info: + if 'dtype' in info: + data_type = info['dtype'] + data_type_value = DATA_TPYE_DICT.get(data_type) + else: + data_type_value = 0 + if 'format' in info: + _format = info['format'] + _format_value = FORMAT_DICT.get(_format) + else: + _format_value = 0 + else: + data_type_value = 0 + _format_value = 0 + return str(data_type_value), str(_format_value) + + +def get_dynamic_parameters(info): + # 动态输入时只需获取第一个参数 + return get_parameters(info[0]) + + +def get_all_parameters(support_info, _type): + result_list = list() + info_lists = support_info.get(_type) + if info_lists: + for _info in info_lists: + # 输入为列表时是动态输入 + if isinstance(_info, (list, tuple)): + data_type_value, _format_value = get_dynamic_parameters(_info) + else: + data_type_value, _format_value = get_parameters(_info) + result_list.append("{},{}".format(data_type_value, _format_value)) + return result_list + + +def get_all_input_parameters(support_info): + result = get_all_parameters(support_info, 'inputs') + return '/'.join(result) + + +def insert_content_into_file(input_file, content): + with open(input_file, 'r+') as file: + lines = file.readlines() + for index, line in enumerate(lines): + match_result = re.search(r'"staticKey":', line) + if match_result: + count = len(line) - len(line.lstrip()) + new_content = "{}{}".format(' ' * count, content) + # 插入到前一行,防止插入最后时还需要考虑是否添加逗号 + lines.insert(index, new_content) + break + file.seek(0) + file.write(''.join(lines)) + + +def insert_simplified_keys(json_file): + contents = load_json(json_file) + # 不存在'binFileName'或者'supportInfo'字段时,非需要替换的解析json文件 + if ('binFileName' not in contents) or ('supportInfo' not in contents): + return + support_info = contents.get('supportInfo') + bin_file_name = contents.get('binFileName') + bin_suffix = contents.get('binFileSuffix') + # 'simplifiedKey'字段已经存在时,直接返回,不重复生成 + if 'simplifiedKey' in support_info: + return + op_type = bin_file_name.split('_')[0] + deterministic = str(get_deterministic_value(support_info)) + precision = str(get_precision_value(support_info)) + overflow = str(get_overflow_value(support_info)) + input_parameters = get_all_input_parameters(support_info) + key = '{}/d={},p={},o={}/{}/'.format( + op_type, + deterministic, + precision, + overflow, + input_parameters) + result = '"simplifiedKey": "' + key + '",\n' + insert_content_into_file(json_file, result) + + +def insert_all_simplified_keys(root_dir): + suffix = 'json' + all_json_files = get_specified_suffix_file(root_dir, suffix) + for _json in all_json_files: + insert_simplified_keys(_json) + + +def args_prase(): + parser = argparse.ArgumentParser() + parser.add_argument('-p', + '--path', + nargs='?', + required=True, + help='Parse the path of the json file.') + return parser.parse_args() + + +def main(): + args = args_prase() + insert_all_simplified_keys(args.path) + + +if __name__ == '__main__': + main() diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/kernel_entry.py b/Increase_Bedore_pipe/Is_increase/cmake/util/kernel_entry.py new file mode 100644 index 0000000..2b77c97 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/kernel_entry.py @@ -0,0 +1,115 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + + +def gen_fun_def(title, kernel, argn, arg_type, arg_name): + entry = [] + entry.append(title) + entry.append(kernel) + entry.append('(') + args = [] + for i in range(0, argn): + args.append(arg_type + ' ' + arg_name + str(i)) + entry.append(', '.join(args)) + entry.append(')') + return ' '.join(entry) + + +def gen_batch_kernel_body(fname, argn, arg_name): + body = [] + body.append('{') + fun = [] + fun.append(fname) + fun.append('(') + args = [] + for i in range(0, argn): + args.append(arg_name + str(i)) + fun.append(', '.join(args)) + fun.append(');') + body.append(' '.join(fun)) + body.append('}') + return '\n'.join(body) + + +def gen_mc_kernel_body(kn, argn, arg_name, blknum): + body = [] + body.append('{') + body.append(' switch(block_idx) {') + for blk in range(0, blknum): + fun = [] + fun.append('{}_blk{:02d}'.format(kn, blk)) + fun.append('(') + args = [] + for i in range(0, argn): + args.append(arg_name + str(i)) + fun.append(', '.join(args)) + fun.append(')') + body.append(' case {}: {}; break;'.format(blk, ' '.join(fun))) + body.append(' default: break;') + body.append(' }') + body.append('}') + return '\n'.join(body) + + +def gen_proc_body(argn, arg_name): + body = [] + body.append('{') + args = [] + for i in range(0, argn): + args.append(arg_name + str(i)) + body.append('uint64_t __x = (uint64_t)' + ' + (uint64_t)'.join(args) + ';') + body.append('__asm__ ("NOP");') + body.append('__asm__ ("NOP");') + body.append('__asm__ ("NOP");') + body.append('}') + return '\n'.join(body) + + +def batch_code_gen(kn, argn, argt): + codes = [] + kernel_name = kn + proc_name = kernel_name + '_percore' + arg_num = int(argn) + data_type = argt + arg_type = '__gm__ ' + data_type + '* __restrict__' + arg_name = 'arg' + kernel_title = 'extern \"C\" __global__ __aicore__ void' + proc_title = 'extern \"C\" __attribute__((noinline)) __aicore__ void' + codes.append('#ifndef __aicore__') + codes.append('#define __aicore__ [aicore]') + codes.append('#endif') + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name) + ';') + codes.append(gen_fun_def(kernel_title, kernel_name, arg_num, arg_type, arg_name)) + codes.append(gen_batch_kernel_body(proc_name, arg_num, arg_name)) + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name)) + codes.append(gen_proc_body(arg_num, arg_name)) + return '\n'.join(codes) + '\n' + + +def mc_code_gen(kn, argn, argt, blknum): + codes = [] + kernel_name = kn + core_num = int(blknum) + arg_num = int(argn) + data_type = argt + arg_type = '__gm__ ' + data_type + '* __restrict__' + arg_name = 'arg' + kernel_title = 'extern \"C\" __global__ __aicore__ void' + proc_title = 'extern \"C\" __attribute__((noinline)) __aicore__ void' + codes.append('#ifndef __aicore__') + codes.append('#define __aicore__ [aicore]') + codes.append('#endif') + for i in range(0, core_num): + proc_name = '{}_blk{:02d}'.format(kernel_name, i) + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name) + ';') + codes.append(gen_fun_def(kernel_title, kernel_name, arg_num, arg_type, arg_name)) + codes.append(gen_mc_kernel_body(kernel_name, arg_num, arg_name, core_num)) + for i in range(0, core_num): + proc_name = '{}_blk{:02d}'.format(kernel_name, i) + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name)) + codes.append(gen_proc_body(arg_num, arg_name)) + return '\n'.join(codes) + '\n' diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/kernel_impl.temp b/Increase_Bedore_pipe/Is_increase/cmake/util/kernel_impl.temp new file mode 100644 index 0000000..5079a10 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/kernel_impl.temp @@ -0,0 +1,10 @@ +#include +#include +#include +#include +#include +#include "replay_def.h" +#include "code_gen.h" +#include "replay_fun.h" +#define __ASCENDC_REPLAY_CODE__ +#include "__CCE_FILE__" diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/COPYING b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/COPYING new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/COPYING @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/README.md b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/README.md new file mode 100644 index 0000000..b41f016 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/README.md @@ -0,0 +1,246 @@ +[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) +![Build Status](https://github.com/megastep/makeself/workflows/CI/badge.svg) + +# makeself - Make self-extractable archives on Unix + +[makeself.sh][1] is a small shell script that generates a self-extractable +compressed tar archive from a directory. The resulting file appears as a shell script +(many of those have a **.run** suffix), and can be launched as is. The archive +will then uncompress itself to a temporary directory and an optional arbitrary +command will be executed (for example an installation script). This is pretty +similar to archives generated with WinZip Self-Extractor in the Windows world. +Makeself archives also include checksums for integrity self-validation (CRC +and/or MD5/SHA256 checksums). + +The makeself.sh script itself is used only to create the archives from a +directory of files. The resultant archive is actually a compressed (using +gzip, bzip2, or compress) TAR archive, with a small shell script stub at the +beginning. This small stub performs all the steps of extracting the files, +running the embedded command, and removing the temporary files when done. +All the user has to do to install the software contained in such an +archive is to "run" the archive, i.e **sh nice-software.run**. I recommend +using the ".run" (which was introduced by some Makeself archives released by +Loki Software) or ".sh" suffix for such archives not to confuse the users, +so that they will know they are actually shell scripts (with quite a lot of binary data +attached to them though!). + +I am trying to keep the code of this script as portable as possible, i.e it is +not relying on any bash-specific features and only calls commands that are +installed on any functioning UNIX-compatible system. This script as well as +the archives it generates should run on any Unix flavor, with any compatible +Bourne shell, provided of course that the compression programs are available. + +As of version 2.1, Makeself has been rewritten and tested on the following +platforms : + + * Linux (all distributions) + * Sun Solaris (8 and above) + * HP-UX (tested on 11.0 and 11i on HPPA RISC) + * SCO OpenUnix and OpenServer + * IBM AIX 5.1L + * macOS (Darwin) + * SGI IRIX 6.5 + * FreeBSD + * UnicOS / Cray + * Cygwin (Windows) + +If you successfully run Makeself and/or archives created with it on another +system, then please [let me know][2]! + +Examples of publicly available archives made using makeself are : + + * Game patches and installers for [Id Software][3] games like Quake 3 for Linux or Return To Castle Wolfenstein ; + * All game patches released by [Loki Software][4] for the Linux version of popular games ; + * The [nVidia drivers][5] for Linux + * The installer for the Linux version of [Google Earth][6] + * The [VirtualBox][7] installers for Linux + * The [Makeself][1] distribution itself ;-) + * and countless others... + +**Important note for Apache users:** By default, most Web servers will think that Makeself archives are regular text files and thus they may show up as text in a Web browser. The correct way to prevent this is to add a MIME type for this file format, like so (in httpd.conf) : + +`AddType application/x-makeself .run` + +**Important note for certain GNU/Linux distributions:** Archives created with Makeself prior to v2.1.2 were using an old syntax for the _head_ and _tail_ Unix commands that is being progressively obsoleted in their GNU forms. Therefore you may have problems uncompressing some of these archives. A workaround for this is to set the environment variable $_POSIX2_VERSION to enable the old syntax, i.e. : + +`export _POSIX2_VERSION=199209` + +## Usage + +The syntax of makeself is the following: + +``` +makeself.sh [args] archive_dir file_name label startup_script [script_args] +``` + + * _args_ are optional options for Makeself. The available ones are : + + * **`--version`** : Prints the version number on stdout, then exits immediately + * **`--gzip`** : Use gzip for compression (the default on platforms on which gzip is commonly available, like Linux) + * **`--bzip2`** : Use bzip2 instead of gzip for better compression. The bzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like '.bz2.run', so that potential users know that they'll need bzip2 to extract it. + * **`--pbzip2`** : Use pbzip2 instead of gzip for better and faster compression on machines having multiple CPUs. The pbzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like '.bz2.run', so that potential users know that they'll need bzip2 to extract it. + * **`--xz`** : Use xz instead of gzip for better compression. The xz command must be available in the command path. It is recommended that the archive prefix be set to something like '.xz.run' for the archive, so that potential users know that they'll need xz to extract it. + * **`--lzo`** : Use lzop instead of gzip for better compression. The lzop command must be available in the command path. It is recommended that the archive prefix be set to something like `.lzo.run` for the archive, so that potential users know that they'll need lzop to extract it. + * **`--lz4`** : Use lz4 instead of gzip for better compression. The lz4 command must be available in the command path. It is recommended that the archive prefix be set to something like '.lz4.run' for the archive, so that potential users know that they'll need lz4 to extract it. + * **`--zstd`** : Use zstd instead of gzip for better compression. The zstd command must be available in the command path. It is recommended that the archive prefix be set to something like '.zstd.run' for the archive, so that potential users know that they'll need zstd to extract it. + * **`--pigz`** : Use pigz for compression. + * **`--base64`** : Encode the archive to ASCII in Base64 format instead of compressing (base64 command required). + * **`--gpg-encrypt`** : Encrypt the archive using `gpg -ac -z $COMPRESS_LEVEL`. This will prompt for a password to encrypt with. Assumes that potential users have `gpg` installed. + * **`--ssl-encrypt`** : Encrypt the archive using `openssl aes-256-cbc -a -salt`. This will prompt for a password to encrypt with. Assumes that the potential users have the OpenSSL tools installed. + * **`--compress`** : Use the UNIX `compress` command to compress the data. This should be the default on all platforms that don't have gzip available. + * **`--nocomp`** : Do not use any compression for the archive, which will then be an uncompressed TAR. + * **`--complevel`** : Specify the compression level for gzip, bzip2, pbzip2, zstd, xz, lzo or lz4. (defaults to 9) + * **`--threads`** : Specify the number of threads to be used by compressors that support parallelization. Omit to use compressor's default. Most useful (and required) for opting into xz's threading, usually with `--threads=0` for all available cores. pbzip2 and pigz are parallel by default, and setting this value allows limiting the number of threads they use. + * **`--notemp`** : The generated archive will not extract the files to a temporary directory, but in a new directory created in the current directory. This is better to distribute software packages that may extract and compile by themselves (i.e. launch the compilation through the embedded script). + * **`--current`** : Files will be extracted to the current directory, instead of in a subdirectory. This option implies `--notemp` above. + * **`--follow`** : Follow the symbolic links inside of the archive directory, i.e. store the files that are being pointed to instead of the links themselves. + * **`--append`** _(new in 2.1.x)_: Append data to an existing archive, instead of creating a new one. In this mode, the settings from the original archive are reused (compression type, label, embedded script), and thus don't need to be specified again on the command line. + * **`--header`** : Makeself uses a separate file to store the header stub, called `makeself-header.sh`. By default, it is assumed that it is stored in the same location as makeself.sh. This option can be used to specify its actual location if it is stored someplace else. + * **`--cleanup`** : Specify a script that is run when execution is interrupted or finishes successfully. The script is executed with the same environment and initial `script_args` as `startup_script`. + * **`--copy`** : Upon extraction, the archive will first extract itself to a temporary directory. The main application of this is to allow self-contained installers stored in a Makeself archive on a CD, when the installer program will later need to unmount the CD and allow a new one to be inserted. This prevents "Filesystem busy" errors for installers that span multiple CDs. + * **`--nox11`** : Disable the automatic spawning of a new terminal in X11. + * **`--nowait`** : When executed from a new X11 terminal, disable the user prompt at the end of the script execution. + * **`--nomd5`** and **`--nocrc`** : Disable the creation of a MD5 / CRC checksum for the archive. This speeds up the extraction process if integrity checking is not necessary. + * **`--sha256`** : Adds a SHA256 checksum for the archive. This is in addition to the MD5 / CRC checksums unless `--nomd5` is also used. + * **`--lsm` _file_** : Provide and LSM file to makeself, that will be embedded in the generated archive. LSM files are describing a software package in a way that is easily parseable. The LSM entry can then be later retrieved using the `--lsm` argument to the archive. An example of a LSM file is provided with Makeself. + * **`--tar-format opt`** : Specify the tar archive format (default is ustar); you may use any value accepted by your tar command (such as posix, v7, etc). + * **`--tar-extra opt`** : Append more options to the tar command line. + + For instance, in order to exclude the `.git` directory from the packaged archive directory using the GNU `tar`, one can use `makeself.sh --tar-extra "--exclude=.git" ...` + + * **`--keep-umask`** : Keep the umask set to shell default, rather than overriding when executing self-extracting archive. + * **`--packaging-date date`** : Use provided string as the packaging date instead of the current date. + * **`--license`** : Append a license file. + * **`--nooverwrite`** : Do not extract the archive if the specified target directory already exists. + * **`--help-header file`** : Add a header to the archive's `--help` output. + * `archive_dir` is the name of the directory that contains the files to be archived + * `file_name` is the name of the archive to be created + * `label` is an arbitrary text string describing the package. It will be displayed while extracting the files. + * `startup_script` is the command to be executed _from within_ the directory of extracted files. Thus, if you wish to execute a program contained in this directory, you must prefix your command with `./`. For example, `./program` will be fine. The `script_args` are additional arguments for this command. + +Here is an example, assuming the user has a package image stored in a **/home/joe/mysoft**, and he wants to generate a self-extracting package named +**mysoft.sh**, which will launch the "setup" script initially stored in /home/joe/mysoft : + +`makeself.sh /home/joe/mysoft mysoft.sh "Joe's Nice Software Package" ./setup +` + +Here is also how I created the [makeself.run][9] archive which contains the Makeself distribution : + +`makeself.sh --notemp makeself makeself.run "Makeself by Stephane Peter" echo "Makeself has extracted itself" ` + +Archives generated with Makeself can be passed the following arguments: + + * **`--keep`** : Prevent the files to be extracted in a temporary directory that will be removed after the embedded script's execution. The files will then be extracted in the current working directory and will stay here until you remove them. + * **`--verbose`** : Will prompt the user before executing the embedded command + * **`--target dir`** : Allows to extract the archive in an arbitrary place. + * **`--nox11`** : Do not spawn a X11 terminal. + * **`--confirm`** : Prompt the user for confirmation before running the embedded command. + * **`--info`** : Print out general information about the archive (does not extract). + * **`--lsm`** : Print out the LSM entry, if it is present. + * **`--list`** : List the files in the archive. + * **`--check`** : Check the archive for integrity using the embedded checksums. Does not extract the archive. + * **`--nochown`** : By default, a `chown -R` command is run on the target directory after extraction, so that all files belong to the current user. This is mostly needed if you are running as root, as tar will then try to recreate the initial user ownerships. You may disable this behavior with this flag. + * **`--tar`** : Run the tar command on the contents of the archive, using the following arguments as parameter for the command. + * **`--noexec`** : Do not run the embedded script after extraction. + * **`--noexec-cleanup`** : Do not run the embedded cleanup script. + * **`--nodiskspace`** : Do not check for available disk space before attempting to extract. + * **`--cleanup-args`** : Specify arguments to be passed to the cleanup script. Wrap value in quotes to specify multiple arguments. + +Any subsequent arguments to the archive will be passed as additional arguments to the embedded command. You must explicitly use the `--` special command-line construct before any such options to make sure that Makeself will not try to interpret them. + +## Startup Script + +The startup script must be a regular Shell script. + +Within the startup script, you can use the `$USER_PWD` variable to get the path of the folder from which the self-extracting script is executed. This is especially useful to access files that are located in the same folder as the script, as shown in the example below. + +`my-self-extracting-script.sh --fooBarFileParameter foo.bar` + +## Building and Testing + +Clone the git repo and execute `git submodule update --init --recursive` to obtain all submodules. + +* To make a release: `make` +* To run all tests: `make test` + +## Maven Usage + +Makeself is now supported by the following maven plugin [makeself-maven-plugin](https://github.com/hazendaz/makeself-maven-plugin). Please refer to project for usage and report any bugs in regards to maven plugin on that project. + +## License + +Makeself itself is covered by the [GNU General Public License][8] (GPL) version 2 and above. Archives generated by Makeself don't have to be placed under this license (although I encourage it ;-)), since the archive itself is merely data for Makeself. + +## Contributing + +I will gladly consider merging your pull requests on the [GitHub][10] repository. However, please keep the following in mind: + + * One of the main purposes of Makeself is portability. Do not submit patches that will break supported platforms. The more platform-agnostic, the better. + * Please explain clearly what the purpose of the patch is, and how you achieved it. + +## Download + +Get the latest official distribution [here][9] (version 2.4.2). + +The latest development version can be grabbed from [GitHub][10]. Feel free to submit any patches there through the fork and pull request process. + +## Version history + + * **v1.0:** Initial public release + * **v1.1:** The archive can be passed parameters that will be passed on to the embedded script, thanks to John C. Quillan + * **v1.2:** Cosmetic updates, support for bzip2 compression and non-temporary archives. Many ideas thanks to Francois Petitjean. + * **v1.3:** More patches from Bjarni R. Einarsson and Francois Petitjean: Support for no compression (`--nocomp`), script is no longer mandatory, automatic launch in an xterm, optional verbose output, and -target archive option to indicate where to extract the files. + * **v1.4:** Many patches from Francois Petitjean: improved UNIX compatibility, automatic integrity checking, support of LSM files to get info on the package at run time.. + * **v1.5.x:** A lot of bugfixes, and many other patches, including automatic verification through the usage of checksums. Version 1.5.5 was the stable release for a long time, even though the Web page didn't get updated ;-). Makeself was also officially made a part of the [Loki Setup installer][11], and its source is being maintained as part of this package. + * **v2.0:** Complete internal rewrite of Makeself. The command-line parsing was vastly improved, the overall maintenance of the package was greatly improved by separating the stub from makeself.sh. Also Makeself was ported and tested to a variety of Unix platforms. + * **v2.0.1:** First public release of the new 2.0 branch. Prior versions are officially obsoleted. This release introduced the `--copy` argument that was introduced in response to a need for the [UT2K3][12] Linux installer. + * **v2.1.0:** Big change : Makeself can now support multiple embedded tarballs, each stored separately with their own checksums. An existing archive can be updated with the `--append` flag. Checksums are also better managed, and the `--nochown` option for archives appeared. + * **v2.1.1:** Fixes related to the Unix compression (compress command). Some Linux distributions made the insane choice to make it unavailable, even though gzip is capable of uncompressing these files, plus some more bugfixes in the extraction and checksum code. + * **v2.1.2:** Some bug fixes. Use head -n to avoid problems with POSIX conformance. + * **v2.1.3:** Bug fixes with the command line when spawning terminals. Added `--tar`, `--noexec` for archives. Added `--nomd5` and `--nocrc` to avoid creating checksums in archives. The embedded script is now run through "eval". The `--info` output now includes the command used to create the archive. A man page was contributed by Bartosz Fenski. + * **v2.1.4:** Fixed `--info` output. Generate random directory name when extracting files to . to avoid problems. Better handling of errors with wrong permissions for the directory containing the files. Avoid some race conditions, Unset the $CDPATH variable to avoid problems if it is set. Better handling of dot files in the archive directory. + * **v2.1.5:** Made the md5sum detection consistent with the header code. Check for the presence of the archive directory. Added `--encrypt` for symmetric encryption through gpg (Eric Windisch). Added support for the digest command on Solaris 10 for MD5 checksums. Check for available disk space before extracting to the target directory (Andreas Schweitzer). Allow extraction to run asynchronously (patch by Peter Hatch). Use file descriptors internally to avoid error messages (patch by Kay Tiong Khoo). + * **v2.1.6:** Replaced one dot per file progress with a realtime progress percentage and a spinning cursor. Added `--noprogress` to prevent showing the progress during the decompression. Added `--target` dir to allow extracting directly to a target directory. (Guy Baconniere) + * **v2.2.0:** First major new release in years! Includes many bugfixes and user contributions. Please look at the [project page on Github][10] for all the details. + * **v2.3.0:** Support for archive encryption via GPG or OpenSSL. Added LZO and LZ4 compression support. Options to set the packaging date and stop the umask from being overriden. Optionally ignore check for available disk space when extracting. New option to check for root permissions before extracting. + * **v2.3.1:** Various compatibility updates. Added unit tests for Travis CI in the GitHub repo. New `--tar-extra`, `--untar-extra`, `--gpg-extra`, `--gpg-asymmetric-encrypt-sign` options. + * **v2.4.0:** Added optional support for SHA256 archive integrity checksums. + * **v2.4.2:** New --cleanup and --cleanup-args arguments for cleanup scripts. Added threading support for supported compressors. Now supports zstd compression. + * **v2.4.3:** Make explicit POSIX tar archives for increased compatibility. + * **v2.4.4:** Fixed various compatibility issues (no longer use POSIX tar archives), Github Actions to check on Solaris and FreeBSD. + * **v2.4.5:** Added `--tar-format` option to set the tar archive format (default is ustar) + +## Links + + * Check out the ["Loki Setup"][11] installer, used to install many Linux games and other applications, and of which I am the co-author. Since the demise of Loki, I am now the official maintainer of the project, and it is now being hosted here on GitHub. + * Bjarni R. Einarsson also wrote the **setup.sh** installer script, inspired by Makeself. [Check it out !][14] + +## Contact + +This script was written by [Stéphane Peter][15] (megastep at megastep.org). Any enhancements and suggestions are welcome. + +Contributions were included from John C. Quillan, Bjarni R. Einarsson, +Francois Petitjean, Ryan C. Gordon, and many contributors on GitHub. If you think I forgot +your name, don't hesitate to contact me. + +This project is now hosted on GitHub. Feel free to submit patches and bug reports on the [project page][10]. + +* * * + +[Stephane Peter][2] + + [1]: http://makeself.io/ + [2]: mailto:megastep@megastep.org + [3]: http://www.idsoftware.com/ + [4]: http://www.lokigames.com/products/myth2/updates.php3 + [5]: http://www.nvidia.com/ + [6]: http://earth.google.com/ + [7]: http://www.virtualbox.org/ + [8]: http://www.gnu.org/copyleft/gpl.html + [9]: https://github.com/megastep/makeself/releases/download/release-2.4.5/makeself-2.4.5.run + [10]: https://github.com/megastep/makeself + [11]: https://github.com/megastep/loki_setup/ + [12]: http://www.unrealtournament2003.com/ + [13]: http://www.icculus.org/ + [14]: http://bre.klaki.net/programs/setup.sh/ + [15]: https://stephanepeter.com/ diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/VERSION b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/VERSION new file mode 100644 index 0000000..59aa62c --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/VERSION @@ -0,0 +1 @@ +2.4.5 diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/make-release.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/make-release.sh new file mode 100644 index 0000000..b5692d4 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/make-release.sh @@ -0,0 +1,9 @@ +#!/bin/sh +# +# Create a distributable archive of the current version of Makeself + +VER=`cat VERSION` +mkdir -p /tmp/makeself-$VER release +cp -pPR makeself* test README.md COPYING VERSION .gitmodules /tmp/makeself-$VER/ +./makeself.sh --notemp /tmp/makeself-$VER release/makeself-$VER.run "Makeself v$VER" echo "Makeself has extracted itself" + diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself-header.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself-header.sh new file mode 100644 index 0000000..9409031 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself-header.sh @@ -0,0 +1,660 @@ +cat << EOF > "$archname" +#!/bin/bash +# This script was generated using Makeself $MS_VERSION +# The license covering this archive and its contents, if any, is wholly independent of the Makeself license (GPL) +# 2022.3.19-Modified the MS_Help function and some options +# Huawei Technologies Co., Ltd. + +ORIG_UMASK=\`umask\` + +CRCsum="$CRCsum" +MD5="$MD5sum" +SHA="$SHAsum" +SIGNATURE="$Signature" +TMPROOT=\${TMPDIR:="\$HOME"} +if ! test -d "\$TMPROOT"; then + TMPROOT="\$PWD" +fi +export TMPDIR="\$TMPROOT" +USER_PWD="\$PWD" +if ! test -d "\$USER_PWD"; then + exit 1 +fi +export USER_PWD +ARCHIVE_DIR=\`dirname "\$0"\` +export ARCHIVE_DIR + +name_of_file="\$0 " +pwd_of_file="\$PWD" +label="$LABEL" +script="$SCRIPT" +scriptargs="$SCRIPTARGS" +cleanup_script="${CLEANUP_SCRIPT}" +licensetxt="$LICENSE" +helpheader='$HELPHEADER' +targetdir="$archdirname" +filesizes="$filesizes" +totalsize="$totalsize" +keep="$KEEP" +nooverwrite="$NOOVERWRITE" +quiet="n" +accept="n" +nodiskspace="n" +export_conf="$EXPORT_CONF" +decrypt_cmd="$DECRYPT_CMD" +skip="$SKIP" + +print_cmd_arg="" +if type printf > /dev/null; then + print_cmd="printf" +elif test -x /usr/ucb/echo; then + print_cmd="/usr/ucb/echo" +else + print_cmd="echo" +fi + +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:\$PATH + export PATH +fi + +if test -d /usr/sfw/bin; then + PATH=\$PATH:/usr/sfw/bin + export PATH +fi + +unset CDPATH + +MS_Printf() +{ + \$print_cmd \$print_cmd_arg "\$1" +} + +MS_PrintLicense() +{ + PAGER=\${PAGER:=more} + if test x"\$licensetxt" != x; then + PAGER_PATH=\`exec <&- 2>&-; which \$PAGER || command -v \$PAGER || type \$PAGER\` + if test -x "\$PAGER_PATH"; then + echo "\$licensetxt" | \$PAGER + else + echo "\$licensetxt" + fi + if test x"\$accept" != xy; then + while true + do + MS_Printf "Please type y to accept, n otherwise: " + read yn + if test x"\$yn" = xn; then + keep=n + eval \$finish; exit 1 + break; + elif test x"\$yn" = xy; then + break; + fi + done + fi + fi +} + +MS_diskspace() +{ + ( + df -kP "\$1" | tail -1 | awk '{ if (\$4 ~ /%/) {print \$3} else {print \$4} }' + ) +} + +MS_dd() +{ + blocks=\`expr \$3 / 1024\` + bytes=\`expr \$3 % 1024\` + # Test for ibs, obs and conv feature + if dd if=/dev/zero of=/dev/null count=1 ibs=512 obs=512 conv=sync 2> /dev/null; then + dd if="\$1" ibs=\$2 skip=1 obs=1024 conv=sync 2> /dev/null | \\ + { test \$blocks -gt 0 && dd ibs=1024 obs=1024 count=\$blocks ; \\ + test \$bytes -gt 0 && dd ibs=1 obs=1024 count=\$bytes ; } 2> /dev/null + else + dd if="\$1" bs=\$2 skip=1 2> /dev/null + fi +} + +MS_dd_Progress() +{ + if test x"\$noprogress" = xy; then + MS_dd "\$@" + return \$? + fi + file="\$1" + offset=\$2 + length=\$3 + pos=0 + bsize=4194304 + while test \$bsize -gt \$length; do + bsize=\`expr \$bsize / 4\` + done + blocks=\`expr \$length / \$bsize\` + bytes=\`expr \$length % \$bsize\` + ( + dd ibs=\$offset skip=1 2>/dev/null + pos=\`expr \$pos \+ \$bsize\` + MS_Printf " 0%% " 1>&2 + if test \$blocks -gt 0; then + while test \$pos -le \$length; do + dd bs=\$bsize count=1 2>/dev/null + pcent=\`expr \$length / 100\` + pcent=\`expr \$pos / \$pcent\` + if test \$pcent -lt 100; then + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + if test \$pcent -lt 10; then + MS_Printf " \$pcent%% " 1>&2 + else + MS_Printf " \$pcent%% " 1>&2 + fi + fi + pos=\`expr \$pos \+ \$bsize\` + done + fi + if test \$bytes -gt 0; then + dd bs=\$bytes count=1 2>/dev/null + fi + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + MS_Printf " 100%% " 1>&2 + ) < "\$file" +} + +MS_Help() +{ + cat << EOH >&2 +Usage: \$0 [options] +Options: + --help | -h Print this message + --info Print embedded info : title, default target directory, embedded script ... + --list Print the list of files in the archive + --check Checks integrity and version dependency of the archive + --quiet Quiet install mode, skip human-computer interactions + --nox11 Do not spawn an xterm + --noexec Do not run embedded script + --extract= Extract directly to a target directory (absolute or relative) + Usually used with --noexec to just extract files without running + --tar arg1 [arg2 ...] Access the contents of the archive through the tar command +\${helpheader} +EOH +} + +MS_Verify_Sig() +{ + GPG_PATH=\`exec <&- 2>&-; which gpg || command -v gpg || type gpg\` + MKTEMP_PATH=\`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp\` + test -x "\$GPG_PATH" || GPG_PATH=\`exec <&- 2>&-; which gpg || command -v gpg || type gpg\` + test -x "\$MKTEMP_PATH" || MKTEMP_PATH=\`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp\` + offset=\`head -n "\$skip" "\$1" | wc -c | tr -d " "\` + temp_sig=\`mktemp -t XXXXX\` + echo \$SIGNATURE | base64 --decode > "\$temp_sig" + gpg_output=\`MS_dd "\$1" \$offset \$totalsize | LC_ALL=C "\$GPG_PATH" --verify "\$temp_sig" - 2>&1\` + gpg_res=\$? + rm -f "\$temp_sig" + if test \$gpg_res -eq 0 && test \`echo \$gpg_output | grep -c Good\` -eq 1; then + if test \`echo \$gpg_output | grep -c \$sig_key\` -eq 1; then + test x"\$quiet" = xn && echo "GPG signature is good" >&2 + else + echo "GPG Signature key does not match" >&2 + exit 2 + fi + else + test x"\$quiet" = xn && echo "GPG signature failed to verify" >&2 + exit 2 + fi +} + +MS_Check() +{ + OLD_PATH="\$PATH" + PATH=\${GUESS_MD5_PATH:-"\$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=\`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum\` + test -x "\$MD5_PATH" || MD5_PATH=\`exec <&- 2>&-; which md5 || command -v md5 || type md5\` + test -x "\$MD5_PATH" || MD5_PATH=\`exec <&- 2>&-; which digest || command -v digest || type digest\` + PATH="\$OLD_PATH" + + SHA_PATH=\`exec <&- 2>&-; which shasum || command -v shasum || type shasum\` + test -x "\$SHA_PATH" || SHA_PATH=\`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum\` + + if test x"\$quiet" = xn; then + MS_Printf "Verifying archive integrity..." + fi + offset=\`head -n "\$skip" "\$1" | wc -c | tr -d " "\` + fsize=\`cat "\$1" | wc -c | tr -d " "\` + if test \$totalsize -ne \`expr \$fsize - \$offset\`; then + echo " Unexpected archive size." >&2 + exit 2 + fi + verb=\$2 + i=1 + for s in \$filesizes + do + crc=\`echo \$CRCsum | cut -d" " -f\$i\` + if test -x "\$SHA_PATH"; then + if test x"\`basename \$SHA_PATH\`" = xshasum; then + SHA_ARG="-a 256" + fi + sha=\`echo \$SHA | cut -d" " -f\$i\` + if test x"\$sha" = x0000000000000000000000000000000000000000000000000000000000000000; then + test x"\$verb" = xy && echo " \$1 does not contain an embedded SHA256 checksum." >&2 + else + shasum=\`MS_dd_Progress "\$1" \$offset \$s | eval "\$SHA_PATH \$SHA_ARG" | cut -b-64\`; + if test x"\$shasum" != x"\$sha"; then + echo "Error in SHA256 checksums: \$shasum is different from \$sha" >&2 + exit 2 + elif test x"\$quiet" = xn; then + MS_Printf " SHA256 checksums are OK." >&2 + fi + crc="0000000000"; + fi + fi + if test -x "\$MD5_PATH"; then + if test x"\`basename \$MD5_PATH\`" = xdigest; then + MD5_ARG="-a md5" + fi + md5=\`echo \$MD5 | cut -d" " -f\$i\` + if test x"\$md5" = x00000000000000000000000000000000; then + test x"\$verb" = xy && echo " \$1 does not contain an embedded MD5 checksum." >&2 + else + md5sum=\`MS_dd_Progress "\$1" \$offset \$s | eval "\$MD5_PATH \$MD5_ARG" | cut -b-32\`; + if test x"\$md5sum" != x"\$md5"; then + echo "Error in MD5 checksums: \$md5sum is different from \$md5" >&2 + exit 2 + elif test x"\$quiet" = xn; then + MS_Printf " MD5 checksums are OK." >&2 + fi + crc="0000000000"; verb=n + fi + fi + if test x"\$crc" = x0000000000; then + test x"\$verb" = xy && echo " \$1 does not contain a CRC checksum." >&2 + else + sum1=\`MS_dd_Progress "\$1" \$offset \$s | CMD_ENV=xpg4 cksum | awk '{print \$1}'\` + if test x"\$sum1" != x"\$crc"; then + echo "Error in checksums: \$sum1 is different from \$crc" >&2 + exit 2 + elif test x"\$quiet" = xn; then + MS_Printf " CRC checksums are OK." >&2 + fi + fi + i=\`expr \$i + 1\` + offset=\`expr \$offset + \$s\` + done + if test x"\$quiet" = xn; then + echo " All good." + fi +} + +MS_Decompress() +{ + if test x"\$decrypt_cmd" != x""; then + { eval "\$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "$GUNZIP_CMD" + else + eval "$GUNZIP_CMD" + fi + + if test \$? -ne 0; then + echo " ... Decompression failed." >&2 + fi +} + +UnTAR() +{ + if test x"\$quiet" = xn; then + tar \$1vf - $UNTAR_EXTRA 2>&1 || { echo " ... Extraction failed." >&2; kill -15 \$$; } + else + tar \$1f - $UNTAR_EXTRA 2>&1 || { echo Extraction failed. >&2; kill -15 \$$; } + fi +} + +MS_exec_cleanup() { + if test x"\$cleanup" = xy && test x"\$cleanup_script" != x""; then + cleanup=n + cd "\$tmpdir" + eval "\"\$cleanup_script\" \$scriptargs \$cleanupargs" + fi +} + +MS_cleanup() +{ + echo 'Signal caught, cleaning up' >&2 + MS_exec_cleanup + cd "\$TMPROOT" + rm -rf "\$tmpdir" + eval \$finish; exit 15 +} + +Script_Args_Check() +{ + script_supported_args=\$(echo \${helpheader} | grep -o -E "\-\-[^ ]+" | awk -F"=" {'print \$1'}) + arg_to_test=\$(echo \$1|awk -F"=" {'print \$1'}) + + for arg in \${script_supported_args}; + do + if test x"\$arg_to_test" = x"\$arg" ;then + return + fi + done + + MS_Help + exit 1 +} + +finish=true +xterm_loop= +noprogress=$NOPROGRESS +nox11=$NOX11 +copy=$COPY +ownership=$OWNERSHIP +verbose=n +cleanup=y +cleanupargs= +sig_key= + +initargs="\$@" + +while [ -n "\$*" ] +do + case "\$1" in + -h | --help) + MS_Help + exit 0 + ;; + -q | --quiet) + quiet=y + noprogress=y + shift + ;; + --info) + echo Identification: "\$label" + echo Target directory: "\$targetdir" + echo Uncompressed size: $USIZE KB + echo Compression: $COMPRESS + if test x"$ENCRYPT" != x""; then + echo Encryption: $ENCRYPT + fi + echo Date of packaging: $DATE + echo Built with Makeself version $MS_VERSION + echo Build command was: "$MS_COMMAND" + if test x"\$script" != x; then + echo Script run after extraction: + echo " " \$script \$scriptargs + fi + if test x"$copy" = xcopy; then + echo "Archive will copy itself to a temporary location" + fi + if test x"$NEED_ROOT" = xy; then + echo "Root permissions required for extraction" + fi + if test x"$KEEP" = xy; then + echo "directory \$targetdir is permanent" + else + echo "\$targetdir will be removed after extraction" + fi + exit 0 + ;; + --list) + echo Target directory: \$targetdir + offset=\`head -n "\$skip" "\$0" | wc -c | tr -d " "\` + for s in \$filesizes + do + MS_dd "\$0" \$offset \$s | MS_Decompress | UnTAR t + offset=\`expr \$offset + \$s\` + done + exit 0 + ;; + --tar) + offset=\`head -n "\$skip" "\$0" | wc -c | tr -d " "\` + arg1="\$2" + shift 2 || { MS_Help; exit 1; } + for s in \$filesizes + do + MS_dd "\$0" \$offset \$s | MS_Decompress | tar "\$arg1" - "\$@" + offset=\`expr \$offset + \$s\` + done + exit 0 + ;; + --check) + MS_Check "\$0" y + scriptargs="\$scriptargs \$1" + shift + ;; + --noexec) + script="" + cleanup_script="" + shift + ;; + --extract=*) + keep=y + targetdir=\`echo \$1 | cut -d"=" -f2 \` + if ! shift; then MS_Help; exit 1; fi + ;; + --nox11) + nox11=y + shift + ;; + --xwin) + if test "$NOWAIT" = n; then + finish="echo Press Return to close this window...; read junk" + fi + xterm_loop=1 + shift + ;; + --phase2) + copy=phase2 + shift + ;; + --repack | --repack-path=*) + Script_Args_Check \$1 + scriptargs="\$scriptargs '\$1'" + shift + if [[ ! "\$1" =~ ^-.* ]]; then + scriptargs="\$scriptargs '\$1'" + shift + fi + ;; + *) + Script_Args_Check \$1 + scriptargs="\$scriptargs '\$1'" + shift + ;; + esac +done + +quiet_para="" +if test x"\$quiet" = xy; then + quiet_para="--quiet " +fi +scriptargs="--\$name_of_file""--\"\$pwd_of_file\""" \$quiet_para""\$scriptargs" + +if test x"\$quiet" = xy -a x"\$verbose" = xy; then + echo Cannot be verbose and quiet at the same time. >&2 + exit 1 +fi + +if test x"$NEED_ROOT" = xy -a \`id -u\` -ne 0; then + echo "Administrative privileges required for this archive (use su or sudo)" >&2 + exit 1 +fi + +if test x"\$copy" \!= xphase2; then + MS_PrintLicense +fi + +case "\$copy" in +copy) + tmpdir="\$TMPROOT"/makeself.\$RANDOM.\`date +"%y%m%d%H%M%S"\`.\$\$ + mkdir "\$tmpdir" || { + echo "Could not create temporary directory \$tmpdir" >&2 + exit 1 + } + SCRIPT_COPY="\$tmpdir/makeself" + echo "Copying to a temporary location..." >&2 + cp "\$0" "\$SCRIPT_COPY" + chmod +x "\$SCRIPT_COPY" + cd "\$TMPROOT" + exec "\$SCRIPT_COPY" --phase2 -- \$initargs + ;; +phase2) + finish="\$finish ; rm -rf \`dirname \$0\`" + ;; +esac + +if test x"\$nox11" = xn; then + if tty -s; then # Do we have a terminal? + : + else + if test x"\$DISPLAY" != x -a x"\$xterm_loop" = x; then # No, but do we have X? + if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable + GUESS_XTERMS="xterm gnome-terminal rxvt dtterm eterm Eterm xfce4-terminal lxterminal kvt konsole aterm terminology" + for a in \$GUESS_XTERMS; do + if type \$a >/dev/null 2>&1; then + XTERM=\$a + break + fi + done + chmod a+x \$0 || echo Please add execution rights on \$0 + if test \`echo "\$0" | cut -c1\` = "/"; then # Spawn a terminal! + exec \$XTERM -e "\$0 --xwin \$initargs" + else + exec \$XTERM -e "./\$0 --xwin \$initargs" + fi + fi + fi + fi +fi + +if test x"\$targetdir" = x.; then + tmpdir="." +else + if test x"\$keep" = xy; then + if test x"\$nooverwrite" = xy && test -d "\$targetdir"; then + echo "Target directory \$targetdir already exists, aborting." >&2 + exit 1 + fi + if test x"\$quiet" = xn; then + echo "Creating directory \$targetdir" >&2 + fi + tmpdir="\$targetdir" + dashp="-p" + else + tmpdir="\$TMPROOT/selfgz\$\$\$RANDOM" + dashp="" + fi + mkdir \$dashp "\$tmpdir" || { + echo 'Cannot create target directory' \$tmpdir >&2 + echo 'You should try option --extract=' >&2 + eval \$finish + exit 1 + } +fi + +location="\`pwd\`" +if test x"\$SETUP_NOCHECK" != x1; then + MS_Check "\$0" +fi +offset=\`head -n "\$skip" "\$0" | wc -c | tr -d " "\` + +if test x"\$verbose" = xy; then + MS_Printf "About to extract $USIZE KB in \$tmpdir ... Proceed ? [Y/n] " + read yn + if test x"\$yn" = xn; then + eval \$finish; exit 1 + fi +fi + +if test x"\$quiet" = xn; then + # Decrypting with openssl will ask for password, + # the prompt needs to start on new line + if test x"$ENCRYPT" = x"openssl"; then + echo "Decrypting and uncompressing \$label..." + else + MS_Printf "Uncompressing \$label" + fi +fi +res=3 +if test x"\$keep" = xn; then + trap MS_cleanup 1 2 3 15 +fi + +if test x"\$nodiskspace" = xn; then + leftspace=\`MS_diskspace "\$tmpdir"\` + if test -n "\$leftspace"; then + if test "\$leftspace" -lt $USIZE; then + echo + echo "Not enough space left in "\`dirname \$tmpdir\`" (\$leftspace KB) to decompress \$0 ($USIZE KB)" >&2 + if test x"\$keep" = xn; then + echo "Consider setting TMPDIR to a directory with more free space." + fi + eval \$finish; exit 1 + fi + fi +fi + +for s in \$filesizes +do + if MS_dd_Progress "\$0" \$offset \$s | MS_Decompress | ( cd "\$tmpdir"; umask \$ORIG_UMASK ; UnTAR xp ) 1>/dev/null; then + if test x"\$ownership" = xy; then + (cd "\$tmpdir"; chown -R \`id -u\` .; chgrp -R \`id -g\` .) + fi + else + echo >&2 + echo "Unable to decompress \$0" >&2 + eval \$finish; exit 1 + fi + offset=\`expr \$offset + \$s\` +done +if test x"\$quiet" = xn; then + echo +fi + +cd "\$tmpdir" +res=0 +if test x"\$script" != x; then + if test x"\$export_conf" = x"y"; then + MS_BUNDLE="\$0" + MS_LABEL="\$label" + MS_SCRIPT="\$script" + MS_SCRIPTARGS="\$scriptargs" + MS_ARCHDIRNAME="\$archdirname" + MS_KEEP="\$KEEP" + MS_NOOVERWRITE="\$NOOVERWRITE" + MS_COMPRESS="\$COMPRESS" + MS_CLEANUP="\$cleanup" + export MS_BUNDLE MS_LABEL MS_SCRIPT MS_SCRIPTARGS + export MS_ARCHDIRNAME MS_KEEP MS_NOOVERWRITE MS_COMPRESS + fi + + if test x"\$verbose" = x"y"; then + yn="x" + while test x"\$yn" != x -a x"\$yn" != xy -a x"\$yn" != xY -a x"\$yn" != xn -a x"\$yn" != xN + do + MS_Printf "OK to execute: \$script \$scriptargs \$* ? [Y/n] " + read yn + if test x"\$yn" = x -o x"\$yn" = xy -o x"\$yn" = xY; then + eval "\"\$script\" \$scriptargs \"\\\$@\""; res=\$?; + elif test x"\$yn" = xn -o x"\$yn" = xN; then + echo "Unable to decompress \$script ,because of aborting! ";res=\$? + else + echo "Input value is unacceptable,please try again." + fi + done + else + eval "\"\$script\" \$scriptargs \"\\\$@\""; res=\$? + fi + if test "\$res" -ne 0; then + test x"\$verbose" = xy && echo "The program '\$script' returned an error code (\$res)" >&2 + fi +fi + +MS_exec_cleanup + +if test x"\$keep" = xn; then + cd "\$TMPROOT" + rm -rf "\$tmpdir" +fi +eval \$finish; exit \$res +EOF diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.1 b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.1 new file mode 100644 index 0000000..81bf6e4 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.1 @@ -0,0 +1,110 @@ +.TH "MAKESELF" "1" "2.4.5" +.SH "NAME" +makeself \- An utility to generate self-extractable archives. +.SH "SYNTAX" +.B makeself [\fIoptions\fP] archive_dir file_name label +.B [\fIstartup_script\fP] [\fIargs\fP] +.SH "DESCRIPTION" +This program is a free (GPL) utility designed to create self-extractable +archives from a directory. +.SH "OPTIONS" +The following options are supported. +.TP 15 +.B -v, --version +Prints out the makeself version number and exits. +.TP +.B -h, --help +Print out help information. +.TP +.B --tar-quietly +Suppress verbose output from the tar command +.TP +.B --quiet +Do not print any messages other than errors +.TP +.B --gzip +Compress using gzip (default if detected). +.TP +.B --bzip2 +Compress using bzip2. +.TP +.B --pbzip2 +Compress using pbzip2. +.TP +.B --xz +Compress using xz. +.TP +.B --lzo +Compress using lzop. +.TP +.B --lz4 +Compress using lz4. +.TP +.B --compress +Compress using the UNIX 'compress' command. +.TP +.B --nocomp +Do not compress the data. +.TP +.B --complevel lvl +Specify the compression level for gzip,bzip2,pbzui2,xz,lzo or lz4 +.TP +.B --notemp +The archive will create archive_dir in the current directory and +uncompress in ./archive_dir. +.TP +.B --copy +Upon extraction, the archive will first copy itself to a temporary directory. +.TP +.B --append +Append more files to an existing makeself archive. The label and startup scripts will then be ignored. +.TP +.B --current +Files will be extracted to the current directory. Both --current and --target dir imply --notemp. +.TP +.B --target dir +Extract directly to a target directory. Directory path can be either absolute or relative. +.TP +.B --header file +Specify location of the header script. +.TP +.B --cleanup file +Specify a cleanup script that executes on interrupt and when finished successfully. +.TP +.B --follow +Follow the symlinks in the archive. +.TP +.B --noprogress +Do not show the progress during the decompression. +.TP +.B --nox11 +Disable automatic spawn of an xterm if running in X11. +.TP +.B --nowait +Do not wait for user input after executing embedded program from an xterm. +.TP +.B --nomd5 +Do not create a MD5 checksum for the archive. +.TP +.B --nocrc +Do not create a CRC32 checksum for the archive. +.TP +.B --lsm file +LSM file describing the package. +.B --packaging-date date +Use provided string as the packaging date instead of the current date. +.SH "EXAMPLES" +Here is an example, assuming the user has a package image stored in a /home/joe/mysoft, +and he wants to generate a self-extracting package named mysoft.sh, which will launch +the "setup" script initially stored in /home/joe/mysoft: +.TP +makeself.sh /home/joe/mysoft mysoft.sh "Joe's Nice Software Package" ./setup +.TP +Here is also how I created the makeself.run archive which contains the Makeself distribution: +.TP +makeself.sh --notemp makeself makeself.run "Makeself by Stephane Peter" echo "Makeself has extracted itself" +.SH "AUTHORS" +Makeself has been written by Stéphane Peter . +.BR +This man page was originally written by Bartosz Fenski for the +Debian GNU/Linux distribution (but it may be used by others). diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.lsm b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.lsm new file mode 100644 index 0000000..3c4cea8 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.lsm @@ -0,0 +1,16 @@ +Begin3 +Title: makeself.sh +Version: 2.4.5 +Description: makeself.sh is a shell script that generates a self-extractable + tar.gz archive from a directory. The resulting file appears as a shell + script, and can be launched as is. The archive will then uncompress + itself to a temporary directory and an arbitrary command will be + executed (for example an installation script). This is pretty similar + to archives generated with WinZip Self-Extractor in the Windows world. +Keywords: Installation archive tar winzip +Author: Stephane Peter (megastep@megastep.org) +Maintained-by: Stephane Peter (megastep@megastep.org) +Original-site: https://makeself.io/ +Platform: Unix +Copying-policy: GPL +End diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.sh new file mode 100644 index 0000000..c8ea565 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/makeself.sh @@ -0,0 +1,822 @@ +#!/bin/sh +# +# Makeself version 2.4.x +# by Stephane Peter +# +# Utility to create self-extracting tar.gz archives. +# The resulting archive is a file holding the tar.gz archive with +# a small Shell script stub that uncompresses the archive to a temporary +# directory and then executes a given script from withing that directory. +# +# Makeself home page: https://makeself.io/ +# +# Version 2.0 is a rewrite of version 1.0 to make the code easier to read and maintain. +# +# Version history : +# - 1.0 : Initial public release +# - 1.1 : The archive can be passed parameters that will be passed on to +# the embedded script, thanks to John C. Quillan +# - 1.2 : Package distribution, bzip2 compression, more command line options, +# support for non-temporary archives. Ideas thanks to Francois Petitjean +# - 1.3 : More patches from Bjarni R. Einarsson and Francois Petitjean: +# Support for no compression (--nocomp), script is no longer mandatory, +# automatic launch in an xterm, optional verbose output, and -target +# archive option to indicate where to extract the files. +# - 1.4 : Improved UNIX compatibility (Francois Petitjean) +# Automatic integrity checking, support of LSM files (Francois Petitjean) +# - 1.5 : Many bugfixes. Optionally disable xterm spawning. +# - 1.5.1 : More bugfixes, added archive options -list and -check. +# - 1.5.2 : Cosmetic changes to inform the user of what's going on with big +# archives (Quake III demo) +# - 1.5.3 : Check for validity of the DISPLAY variable before launching an xterm. +# More verbosity in xterms and check for embedded command's return value. +# Bugfix for Debian 2.0 systems that have a different "print" command. +# - 1.5.4 : Many bugfixes. Print out a message if the extraction failed. +# - 1.5.5 : More bugfixes. Added support for SETUP_NOCHECK environment variable to +# bypass checksum verification of archives. +# - 1.6.0 : Compute MD5 checksums with the md5sum command (patch from Ryan Gordon) +# - 2.0 : Brand new rewrite, cleaner architecture, separated header and UNIX ports. +# - 2.0.1 : Added --copy +# - 2.1.0 : Allow multiple tarballs to be stored in one archive, and incremental updates. +# Added --nochown for archives +# Stopped doing redundant checksums when not necesary +# - 2.1.1 : Work around insane behavior from certain Linux distros with no 'uncompress' command +# Cleaned up the code to handle error codes from compress. Simplified the extraction code. +# - 2.1.2 : Some bug fixes. Use head -n to avoid problems. +# - 2.1.3 : Bug fixes with command line when spawning terminals. +# Added --tar for archives, allowing to give arbitrary arguments to tar on the contents of the archive. +# Added --noexec to prevent execution of embedded scripts. +# Added --nomd5 and --nocrc to avoid creating checksums in archives. +# Added command used to create the archive in --info output. +# Run the embedded script through eval. +# - 2.1.4 : Fixed --info output. +# Generate random directory name when extracting files to . to avoid problems. (Jason Trent) +# Better handling of errors with wrong permissions for the directory containing the files. (Jason Trent) +# Avoid some race conditions (Ludwig Nussel) +# Unset the $CDPATH variable to avoid problems if it is set. (Debian) +# Better handling of dot files in the archive directory. +# - 2.1.5 : Made the md5sum detection consistent with the header code. +# Check for the presence of the archive directory +# Added --encrypt for symmetric encryption through gpg (Eric Windisch) +# Added support for the digest command on Solaris 10 for MD5 checksums +# Check for available disk space before extracting to the target directory (Andreas Schweitzer) +# Allow extraction to run asynchronously (patch by Peter Hatch) +# Use file descriptors internally to avoid error messages (patch by Kay Tiong Khoo) +# - 2.1.6 : Replaced one dot per file progress with a realtime progress percentage and a spining cursor (Guy Baconniere) +# Added --noprogress to prevent showing the progress during the decompression (Guy Baconniere) +# Added --target dir to allow extracting directly to a target directory (Guy Baconniere) +# - 2.2.0 : Many bugfixes, updates and contributions from users. Check out the project page on Github for the details. +# - 2.3.0 : Option to specify packaging date to enable byte-for-byte reproducibility. (Marc Pawlowsky) +# - 2.4.0 : Optional support for SHA256 checksums in archives. +# - 2.4.2 : Add support for threads for several compressors. (M. Limber) +# Added zstd support. +# - 2.4.3 : Make explicit POSIX tar archives for increased compatibility. +# - 2.4.5 : Added --tar-format to override ustar tar archive format +# +# (C) 1998-2021 by Stephane Peter +# +# This software is released under the terms of the GNU GPL version 2 and above +# Please read the license at http://www.gnu.org/copyleft/gpl.html +# Self-extracting archives created with this script are explictly NOT released under the term of the GPL +# + +MS_VERSION=2.4.5 +MS_COMMAND="$0" +unset CDPATH + +for f in ${1+"$@"}; do + MS_COMMAND="$MS_COMMAND \\\\ + \\\"$f\\\"" +done + +# For Solaris systems +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:$PATH + export PATH +fi + +# Procedures + +MS_Usage() +{ + echo "Usage: $0 [args] archive_dir file_name label startup_script [script_args]" + echo "args can be one or more of the following :" + echo " --version | -v : Print out Makeself version number and exit" + echo " --help | -h : Print out this help message" + echo " --tar-quietly : Suppress verbose output from the tar command" + echo " --quiet | -q : Do not print any messages other than errors." + echo " --gzip : Compress using gzip (default if detected)" + echo " --pigz : Compress with pigz" + echo " --zstd : Compress with zstd" + echo " --bzip2 : Compress using bzip2 instead of gzip" + echo " --pbzip2 : Compress using pbzip2 instead of gzip" + echo " --xz : Compress using xz instead of gzip" + echo " --lzo : Compress using lzop instead of gzip" + echo " --lz4 : Compress using lz4 instead of gzip" + echo " --compress : Compress using the UNIX 'compress' command" + echo " --complevel lvl : Compression level for gzip pigz zstd xz lzo lz4 bzip2 and pbzip2 (default 9)" + echo " --threads thds : Number of threads to be used by compressors that support parallelization." + echo " Omit to use compressor's default. Most useful (and required) for opting" + echo " into xz's threading, usually with '--threads=0' for all available cores." + echo " pbzip2 and pigz are parallel by default, and setting this value allows" + echo " limiting the number of threads they use." + echo " --base64 : Instead of compressing, encode the data using base64" + echo " --gpg-encrypt : Instead of compressing, encrypt the data using GPG" + echo " --gpg-asymmetric-encrypt-sign" + echo " : Instead of compressing, asymmetrically encrypt and sign the data using GPG" + echo " --gpg-extra opt : Append more options to the gpg command line" + echo " --ssl-encrypt : Instead of compressing, encrypt the data using OpenSSL" + echo " --ssl-passwd pass : Use the given password to encrypt the data using OpenSSL" + echo " --ssl-pass-src src : Use the given src as the source of password to encrypt the data" + echo " using OpenSSL. See \"PASS PHRASE ARGUMENTS\" in man openssl." + echo " If this option is not supplied, the user will be asked to enter" + echo " encryption password on the current terminal." + echo " --ssl-no-md : Do not use \"-md\" option not supported by older OpenSSL." + echo " --nochown : Do not give the target folder to the current user (default)" + echo " --chown : Give the target folder to the current user recursively" + echo " --nocomp : Do not compress the data" + echo " --notemp : The archive will create archive_dir in the" + echo " current directory and uncompress in ./archive_dir" + echo " --needroot : Check that the root user is extracting the archive before proceeding" + echo " --copy : Upon extraction, the archive will first copy itself to" + echo " a temporary directory" + echo " --append : Append more files to an existing Makeself archive" + echo " The label and startup scripts will then be ignored" + echo " --target dir : Extract directly to a target directory" + echo " directory path can be either absolute or relative" + echo " --nooverwrite : Do not extract the archive if the specified target directory exists" + echo " --current : Files will be extracted to the current directory" + echo " Both --current and --target imply --notemp" + echo " --tar-format opt : Specify a tar archive format (default is ustar)" + echo " --tar-extra opt : Append more options to the tar command line" + echo " --untar-extra opt : Append more options to the during the extraction of the tar archive" + echo " --nomd5 : Don't calculate an MD5 for archive" + echo " --nocrc : Don't calculate a CRC for archive" + echo " --sha256 : Compute a SHA256 checksum for the archive" + echo " --header file : Specify location of the header script" + echo " --cleanup file : Specify a cleanup script that executes on interrupt and when finished successfully." + echo " --follow : Follow the symlinks in the archive" + echo " --noprogress : Do not show the progress during the decompression" + echo " --nox11 : Disable automatic spawn of a xterm" + echo " --nowait : Do not wait for user input after executing embedded" + echo " program from an xterm" + echo " --sign passphrase : Signature private key to sign the package with" + echo " --lsm file : LSM file describing the package" + echo " --license file : Append a license file" + echo " --help-header file : Add a header to the archive's --help output" + echo " --packaging-date date" + echo " : Use provided string as the packaging date" + echo " instead of the current date." + echo + echo " --keep-umask : Keep the umask set to shell default, rather than overriding when executing self-extracting archive." + echo " --export-conf : Export configuration variables to startup_script" + echo + echo "Do not forget to give a fully qualified startup script name" + echo "(i.e. with a ./ prefix if inside the archive)." + exit 1 +} + +# Default settings +if type gzip >/dev/null 2>&1; then + COMPRESS=gzip +elif type compress >/dev/null 2>&1; then + COMPRESS=compress +else + echo "ERROR: missing commands: gzip, compress" >&2 + MS_Usage +fi +ENCRYPT=n +PASSWD="" +PASSWD_SRC="" +OPENSSL_NO_MD=n +COMPRESS_LEVEL=9 +DEFAULT_THREADS=123456 # Sentinel value +THREADS=$DEFAULT_THREADS +KEEP=n +CURRENT=n +NOX11=n +NOWAIT=n +APPEND=n +TAR_QUIETLY=n +KEEP_UMASK=n +QUIET=n +NOPROGRESS=n +COPY=none +NEED_ROOT=n +TAR_ARGS=rvf +TAR_FORMAT=ustar +TAR_EXTRA="" +GPG_EXTRA="" +DU_ARGS=-ks +HEADER=`dirname "$0"`/makeself-header.sh +SIGNATURE="" +TARGETDIR="" +NOOVERWRITE=n +DATE=`LC_ALL=C date` +EXPORT_CONF=n +SHA256=n +OWNERSHIP=n +SIGN=n +GPG_PASSPHRASE="" + +# LSM file stuff +LSM_CMD="echo No LSM. >> \"\$archname\"" + +while true +do + case "$1" in + --version | -v) + echo Makeself version $MS_VERSION + exit 0 + ;; + --pbzip2) + COMPRESS=pbzip2 + shift + ;; + --bzip2) + COMPRESS=bzip2 + shift + ;; + --gzip) + COMPRESS=gzip + shift + ;; + --pigz) + COMPRESS=pigz + shift + ;; + --zstd) + COMPRESS=zstd + shift + ;; + --xz) + COMPRESS=xz + shift + ;; + --lzo) + COMPRESS=lzo + shift + ;; + --lz4) + COMPRESS=lz4 + shift + ;; + --compress) + COMPRESS=compress + shift + ;; + --base64) + COMPRESS=base64 + shift + ;; + --gpg-encrypt) + COMPRESS=gpg + shift + ;; + --gpg-asymmetric-encrypt-sign) + COMPRESS=gpg-asymmetric + shift + ;; + --gpg-extra) + GPG_EXTRA="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --ssl-encrypt) + ENCRYPT=openssl + shift + ;; + --ssl-passwd) + PASSWD=$2 + shift 2 || { MS_Usage; exit 1; } + ;; + --ssl-pass-src) + PASSWD_SRC=$2 + shift 2 || { MS_Usage; exit 1; } + ;; + --ssl-no-md) + OPENSSL_NO_MD=y + shift + ;; + --nocomp) + COMPRESS=none + shift + ;; + --complevel) + COMPRESS_LEVEL="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --threads) + THREADS="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --nochown) + OWNERSHIP=n + shift + ;; + --chown) + OWNERSHIP=y + shift + ;; + --notemp) + KEEP=y + shift + ;; + --copy) + COPY=copy + shift + ;; + --current) + CURRENT=y + KEEP=y + shift + ;; + --tar-format) + TAR_FORMAT="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --tar-extra) + TAR_EXTRA="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --untar-extra) + UNTAR_EXTRA="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --target) + TARGETDIR="$2" + KEEP=y + shift 2 || { MS_Usage; exit 1; } + ;; + --sign) + SIGN=y + GPG_PASSPHRASE="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --nooverwrite) + NOOVERWRITE=y + shift + ;; + --needroot) + NEED_ROOT=y + shift + ;; + --header) + HEADER="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --cleanup) + CLEANUP_SCRIPT="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --license) + # We need to escape all characters having a special meaning in double quotes + LICENSE=$(sed 's/\\/\\\\/g; s/"/\\\"/g; s/`/\\\`/g; s/\$/\\\$/g' "$2") + shift 2 || { MS_Usage; exit 1; } + ;; + --follow) + TAR_ARGS=rvhf + DU_ARGS=-ksL + shift + ;; + --noprogress) + NOPROGRESS=y + shift + ;; + --nox11) + NOX11=y + shift + ;; + --nowait) + NOWAIT=y + shift + ;; + --nomd5) + NOMD5=y + shift + ;; + --sha256) + SHA256=y + shift + ;; + --nocrc) + NOCRC=y + shift + ;; + --append) + APPEND=y + shift + ;; + --lsm) + LSM_CMD="cat \"$2\" >> \"\$archname\"" + shift 2 || { MS_Usage; exit 1; } + ;; + --packaging-date) + DATE="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --help-header) + HELPHEADER=`sed -e "s/'/'\\\\\''/g" $2` + shift 2 || { MS_Usage; exit 1; } + [ -n "$HELPHEADER" ] && HELPHEADER="$HELPHEADER +" + ;; + --tar-quietly) + TAR_QUIETLY=y + shift + ;; + --keep-umask) + KEEP_UMASK=y + shift + ;; + --export-conf) + EXPORT_CONF=y + shift + ;; + -q | --quiet) + QUIET=y + shift + ;; + -h | --help) + MS_Usage + ;; + -*) + echo Unrecognized flag : "$1" + MS_Usage + ;; + *) + break + ;; + esac +done + +if test $# -lt 1; then + MS_Usage +else + if test -d "$1"; then + archdir="$1" + else + echo "Directory $1 does not exist." >&2 + exit 1 + fi +fi +archname="$2" + +if test "$QUIET" = "y" || test "$TAR_QUIETLY" = "y"; then + if test "$TAR_ARGS" = "rvf"; then + TAR_ARGS="rf" + elif test "$TAR_ARGS" = "rvhf"; then + TAR_ARGS="rhf" + fi +fi + +if test "$APPEND" = y; then + if test $# -lt 2; then + MS_Usage + fi + + # Gather the info from the original archive + OLDENV=`sh "$archname" --dumpconf` + if test $? -ne 0; then + echo "Unable to update archive: $archname" >&2 + exit 1 + else + eval "$OLDENV" + OLDSKIP=`expr $SKIP + 1` + fi +else + if test "$KEEP" = n -a $# = 3; then + echo "ERROR: Making a temporary archive with no embedded command does not make sense!" >&2 + echo >&2 + MS_Usage + fi + # We don't want to create an absolute directory unless a target directory is defined + if test "$CURRENT" = y; then + archdirname="." + elif test x"$TARGETDIR" != x; then + archdirname="$TARGETDIR" + else + archdirname=`basename "$1"` + fi + + if test $# -lt 3; then + MS_Usage + fi + + LABEL="$3" + SCRIPT="$4" + test "x$SCRIPT" = x || shift 1 + shift 3 + SCRIPTARGS="$*" +fi + +if test "$KEEP" = n -a "$CURRENT" = y; then + echo "ERROR: It is A VERY DANGEROUS IDEA to try to combine --notemp and --current." >&2 + exit 1 +fi + +case $COMPRESS in +gzip) + GZIP_CMD="gzip -c$COMPRESS_LEVEL" + GUNZIP_CMD="gzip -cd" + ;; +pigz) + GZIP_CMD="pigz -$COMPRESS_LEVEL" + if test $THREADS -ne $DEFAULT_THREADS; then # Leave as the default if threads not indicated + GZIP_CMD="$GZIP_CMD --processes $THREADS" + fi + GUNZIP_CMD="gzip -cd" + ;; +zstd) + GZIP_CMD="zstd -$COMPRESS_LEVEL" + if test $THREADS -ne $DEFAULT_THREADS; then # Leave as the default if threads not indicated + GZIP_CMD="$GZIP_CMD --threads=$THREADS" + fi + GUNZIP_CMD="zstd -cd" + ;; +pbzip2) + GZIP_CMD="pbzip2 -c$COMPRESS_LEVEL" + if test $THREADS -ne $DEFAULT_THREADS; then # Leave as the default if threads not indicated + GZIP_CMD="$GZIP_CMD -p$THREADS" + fi + GUNZIP_CMD="bzip2 -d" + ;; +bzip2) + GZIP_CMD="bzip2 -$COMPRESS_LEVEL" + GUNZIP_CMD="bzip2 -d" + ;; +xz) + GZIP_CMD="xz -c$COMPRESS_LEVEL" + # Must opt-in by specifying a value since not all versions of xz support threads + if test $THREADS -ne $DEFAULT_THREADS; then + GZIP_CMD="$GZIP_CMD --threads=$THREADS" + fi + GUNZIP_CMD="xz -d" + ;; +lzo) + GZIP_CMD="lzop -c$COMPRESS_LEVEL" + GUNZIP_CMD="lzop -d" + ;; +lz4) + GZIP_CMD="lz4 -c$COMPRESS_LEVEL" + GUNZIP_CMD="lz4 -d" + ;; +base64) + GZIP_CMD="base64" + GUNZIP_CMD="base64 --decode -i -" + ;; +gpg) + GZIP_CMD="gpg $GPG_EXTRA -ac -z$COMPRESS_LEVEL" + GUNZIP_CMD="gpg -d" + ENCRYPT="gpg" + ;; +gpg-asymmetric) + GZIP_CMD="gpg $GPG_EXTRA -z$COMPRESS_LEVEL -es" + GUNZIP_CMD="gpg --yes -d" + ENCRYPT="gpg" + ;; +compress) + GZIP_CMD="compress -fc" + GUNZIP_CMD="(type compress >/dev/null 2>&1 && compress -fcd || gzip -cd)" + ;; +none) + GZIP_CMD="cat" + GUNZIP_CMD="cat" + ;; +esac + +if test x"$ENCRYPT" = x"openssl"; then + if test x"$APPEND" = x"y"; then + echo "Appending to existing archive is not compatible with OpenSSL encryption." >&2 + fi + + ENCRYPT_CMD="openssl enc -aes-256-cbc -salt" + DECRYPT_CMD="openssl enc -aes-256-cbc -d" + + if test x"$OPENSSL_NO_MD" != x"y"; then + ENCRYPT_CMD="$ENCRYPT_CMD -md sha256" + DECRYPT_CMD="$DECRYPT_CMD -md sha256" + fi + + if test -n "$PASSWD_SRC"; then + ENCRYPT_CMD="$ENCRYPT_CMD -pass $PASSWD_SRC" + elif test -n "$PASSWD"; then + ENCRYPT_CMD="$ENCRYPT_CMD -pass pass:$PASSWD" + fi +fi + +tmpfile="${TMPDIR:-/tmp}/mkself$$" + +if test -f "$HEADER"; then + oldarchname="$archname" + archname="$tmpfile" + # Generate a fake header to count its lines + SKIP=0 + . "$HEADER" + SKIP=`cat "$tmpfile" |wc -l` + # Get rid of any spaces + SKIP=`expr $SKIP` + rm -f "$tmpfile" + if test "$QUIET" = "n"; then + echo "Header is $SKIP lines long" >&2 + fi + archname="$oldarchname" +else + echo "Unable to open header file: $HEADER" >&2 + exit 1 +fi + +if test "$QUIET" = "n"; then + echo +fi + +if test "$APPEND" = n; then + if test -f "$archname"; then + echo "WARNING: Overwriting existing file: $archname" >&2 + fi +fi + +USIZE=`du $DU_ARGS "$archdir" | awk '{print $1}'` + +if test "." = "$archdirname"; then + if test "$KEEP" = n; then + archdirname="makeself-$$-`date +%Y%m%d%H%M%S`" + fi +fi + +test -d "$archdir" || { echo "Error: $archdir does not exist."; rm -f "$tmpfile"; exit 1; } +if test "$QUIET" = "n"; then + echo "About to compress $USIZE KB of data..." + echo "Adding files to archive named \"$archname\"..." +fi + +# See if we have GNU tar +TAR=`exec <&- 2>&-; which gtar || command -v gtar || type gtar` +test -x "$TAR" || TAR=tar + +tmparch="${TMPDIR:-/tmp}/mkself$$.tar" +( + if test "$APPEND" = "y"; then + tail -n "+$OLDSKIP" "$archname" | eval "$GUNZIP_CMD" > "$tmparch" + fi + cd "$archdir" + # "Determining if a directory is empty" + # https://www.etalabs.net/sh_tricks.html + find . \ + \( \ + ! -type d \ + -o \ + \( -links 2 -exec sh -c ' + is_empty () ( + cd "$1" + set -- .[!.]* ; test -f "$1" && return 1 + set -- ..?* ; test -f "$1" && return 1 + set -- * ; test -f "$1" && return 1 + return 0 + ) + is_empty "$0"' {} \; \ + \) \ + \) -print \ + | LC_ALL=C sort \ + | sed 's/./\\&/g' \ + | xargs $TAR $TAR_EXTRA --format $TAR_FORMAT -$TAR_ARGS "$tmparch" +) || { + echo "ERROR: failed to create temporary archive: $tmparch" + rm -f "$tmparch" "$tmpfile" + exit 1 +} + +USIZE=`du $DU_ARGS "$tmparch" | awk '{print $1}'` + +eval "$GZIP_CMD" <"$tmparch" >"$tmpfile" || { + echo "ERROR: failed to create temporary file: $tmpfile" + rm -f "$tmparch" "$tmpfile" + exit 1 +} +rm -f "$tmparch" + +if test x"$ENCRYPT" = x"openssl"; then + echo "About to encrypt archive \"$archname\"..." + { eval "$ENCRYPT_CMD -in $tmpfile -out ${tmpfile}.enc" && mv -f ${tmpfile}.enc $tmpfile; } || \ + { echo Aborting: could not encrypt temporary file: "$tmpfile".; rm -f "$tmpfile"; exit 1; } +fi + +fsize=`cat "$tmpfile" | wc -c | tr -d " "` + +# Compute the checksums + +shasum=0000000000000000000000000000000000000000000000000000000000000000 +md5sum=00000000000000000000000000000000 +crcsum=0000000000 + +if test "$NOCRC" = y; then + if test "$QUIET" = "n"; then + echo "skipping crc at user request" + fi +else + crcsum=`CMD_ENV=xpg4 cksum < "$tmpfile" | sed -e 's/ /Z/' -e 's/ /Z/' | cut -dZ -f1` + if test "$QUIET" = "n"; then + echo "CRC: $crcsum" + fi +fi + +if test "$SHA256" = y; then + SHA_PATH=`exec <&- 2>&-; which shasum || command -v shasum || type shasum` + if test -x "$SHA_PATH"; then + shasum=`eval "$SHA_PATH -a 256" < "$tmpfile" | cut -b-64` + else + SHA_PATH=`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum` + shasum=`eval "$SHA_PATH" < "$tmpfile" | cut -b-64` + fi + if test "$QUIET" = "n"; then + if test -x "$SHA_PATH"; then + echo "SHA256: $shasum" + else + echo "SHA256: none, SHA command not found" + fi + fi +fi +if test "$NOMD5" = y; then + if test "$QUIET" = "n"; then + echo "Skipping md5sum at user request" + fi +else + # Try to locate a MD5 binary + OLD_PATH=$PATH + PATH=${GUESS_MD5_PATH:-"$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which md5 || command -v md5 || type md5` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which digest || command -v digest || type digest` + PATH=$OLD_PATH + if test -x "$MD5_PATH"; then + if test `basename ${MD5_PATH}`x = digestx; then + MD5_ARG="-a md5" + fi + md5sum=`eval "$MD5_PATH $MD5_ARG" < "$tmpfile" | cut -b-32` + if test "$QUIET" = "n"; then + echo "MD5: $md5sum" + fi + else + if test "$QUIET" = "n"; then + echo "MD5: none, MD5 command not found" + fi + fi +fi +if test "$SIGN" = y; then + GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + if test -x "$GPG_PATH"; then + SIGNATURE=`$GPG_PATH --pinentry-mode=loopback --batch --yes --passphrase "$GPG_PASSPHRASE" --output - --detach-sig $tmpfile | base64 | tr -d \\\\n` + if test "$QUIET" = "n"; then + echo "Signature: $SIGNATURE" + fi + else + echo "Missing gpg command" >&2 + fi +fi + +totalsize=0 +for size in $fsize; +do + totalsize=`expr $totalsize + $size` +done + +if test "$APPEND" = y; then + mv "$archname" "$archname".bak || exit + + # Prepare entry for new archive + filesizes="$fsize" + CRCsum="$crcsum" + MD5sum="$md5sum" + SHAsum="$shasum" + Signature="$SIGNATURE" + # Generate the header + . "$HEADER" + # Append the new data + cat "$tmpfile" >> "$archname" + + chmod +x "$archname" + rm -f "$archname".bak + if test "$QUIET" = "n"; then + echo "Self-extractable archive \"$archname\" successfully updated." + fi +else + filesizes="$fsize" + CRCsum="$crcsum" + MD5sum="$md5sum" + SHAsum="$shasum" + Signature="$SIGNATURE" + + # Generate the header + . "$HEADER" + + # Append the compressed tar data after the stub + if test "$QUIET" = "n"; then + echo + fi + cat "$tmpfile" >> "$archname" + chmod +x "$archname" + if test "$QUIET" = "n"; then + echo Self-extractable archive \"$archname\" successfully created. + fi +fi +rm -f "$tmpfile" diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/run-tests.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/run-tests.sh new file mode 100644 index 0000000..31ee165 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/makeself/run-tests.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# Run every available test - Bash needed +cd test +for test in *test; +do + echo "Running test $test ..." + bash $test || { echo "*** ERROR: Test '$test' failed!"; exit 1; } +done diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/merge_aicpu_info_json.sh b/Increase_Bedore_pipe/Is_increase/cmake/util/merge_aicpu_info_json.sh new file mode 100644 index 0000000..a977bd5 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/merge_aicpu_info_json.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +project_path=$1 +build_path=$2 +vendor_name=customize +echo $@ +if [[ ! -d "$project_path" ]]; then + echo "[ERROR] No projcet path is provided" + exit 1 +fi + +if [[ ! -d "$build_path" ]]; then + echo "[ERROR] No build path is provided" + exit 1 +fi + +if [[ ! -d "$ASCEND_OPP_PATH" ]]; then + echo "[ERROR] No opp install path is provided" + exit 1 +fi +custom_exist_info_json=$ASCEND_OPP_PATH/vendors/$vendor_name/op_impl/cpu/config/cust_aicpu_kernel.json +custom_new_info_json=$build_path/makepkg/packages/vendors/$vendor_name/op_impl/cpu/config/cust_aicpu_kernel.json +temp_info_json=$build_path/makepkg/packages/vendors/$vendor_name/op_impl/cpu/config/temp_cust_aicpu_kernel.json + +if [[ -f "$custom_exist_info_json" ]] && [[ -f "$custom_new_info_json" ]]; then + cp -f $custom_exist_info_json $temp_info_json + chmod +w $temp_info_json + python3 ${project_path}/cmake/util/insert_op_info.py ${custom_new_info_json} ${temp_info_json} + cp -f $temp_info_json $custom_new_info_json + rm -f $temp_info_json +fi diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/opdesc_parser.py b/Increase_Bedore_pipe/Is_increase/cmake/util/opdesc_parser.py new file mode 100644 index 0000000..c38e79e --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/opdesc_parser.py @@ -0,0 +1,260 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os + + +OP_ALL = '__ALLOP__' +SOC_ALL = '__ALLSOC__' +SOC_TO_SHORT_SOC_MAP = { + "ascend910a": "ascend910", + "ascend910proa": "ascend910", + "ascend910b": "ascend910", + "ascend910prob": "ascend910", + "ascend910premiuma": "ascend910", + "ascend910b1": "ascend910b", + "ascend910b2": "ascend910b", + "ascend910b3": "ascend910b", + "ascend910b4": "ascend910b", + "ascend310p1": "ascend310p", + "ascend310p3": "ascend310p", + "ascend310p3vir01": "ascend310p", + "ascend310p3vir02": "ascend310p", + "ascend310p3vir04": "ascend310p", + "ascend310p3vir08": "ascend310p", + "ascend310b1": "ascend310b", + "bs9sx1aa": "bs9sx1a" +} + + +class OpDesc: + def __init__(self: any, op_type: str): + self.op_type = op_type + self.attr_list = [] + self.attr_val = {} + self.input_name = [] + self.input_type = [] + self.input_dtype = [] + self.input_fmt = [] + self.output_name = [] + self.output_type = [] + self.output_dtype = [] + self.output_fmt = [] + self.op_fmt_sel = False + self.op_chk_support = False + self.op_intf = '' + self.kern_name = '' + self.op_file = '' + self.op_replay_flag = False + self.op_replay_batch = False + self.input_idx = -1 + self.output_idx = -1 + self.max_block_dim = 32 + self.max_shape_size = 268435456 + self.dynamic_shape = False + self.op_range_limit = '' + self.custom_compile_options = {} + self.custom_all_compile_options = {} + + @staticmethod + def _parse_digit(conf: str) -> int: + return int(conf.split('=')[1]) + + @staticmethod + def _parse_flag(conf: str) -> bool: + if 'true' == conf.split('=')[1]: + return True + return False + + @staticmethod + def _parse_str(conf: str) -> str: + return conf.split('=')[1] + + @staticmethod + def _parse_list(conf: str) -> list: + return conf.split('=')[1].split(',') + + def parse_input(self: any, conf: str): + if conf.startswith('input{}.name'.format(int(self.input_idx) + 1)): + self.input_idx += 1 + self.input_name.append(self._parse_str(conf)) + elif conf.startswith('input{}.paramType'.format(int(self.input_idx))): + self.input_type.append(self._parse_str(conf)) + elif conf.startswith('input{}.dtype'.format(int(self.input_idx))): + self.input_dtype.append(self._parse_str(conf)) + elif conf.startswith('input{}.format'.format(int(self.input_idx))): + self.input_fmt.append(self._parse_str(conf)) + else: + return + + def parse_output(self: any, conf: str): + if conf.startswith('output{}.name'.format(int(self.output_idx) + 1)): + self.output_idx += 1 + self.output_name.append(self._parse_str(conf)) + elif conf.startswith('output{}.paramType'.format(int(self.output_idx))): + self.output_type.append(self._parse_str(conf)) + elif conf.startswith('output{}.dtype'.format(int(self.output_idx))): + self.output_dtype.append(self._parse_str(conf)) + elif conf.startswith('output{}.format'.format(int(self.output_idx))): + self.output_fmt.append(self._parse_str(conf)) + else: + return + + def parse_op_format(self: any, conf: str): + self.op_fmt_sel = self._parse_flag(conf) + + def parse_check_support(self: any, conf: str): + self.op_chk_support = self._parse_flag(conf) + + def parse_range_limit(self: any, conf: str): + self.op_range_limit = self._parse_str(conf) + + def parse_kern_name(self: any, conf: str): + self.kern_name = self._parse_str(conf) + + def parse_op_intf(self: any, conf: str): + self.op_intf = self._parse_str(conf) + + def parse_op_file(self: any, conf: str): + self.op_file = self._parse_str(conf) + + def parse_dynamic_shape(self: any, conf: str): + self.dynamic_shape = self._parse_flag(conf) + + def parse_attr_list(self: any, conf: str): + self.attr_list = self._parse_list(conf) + + def parse_attr_val(self: any, conf: str): + for attr in self.attr_list: + if self.attr_val.get(attr) is None: + self.attr_val[attr] = {} + if conf.startswith('attr_{}.type'.format(attr)): + self.attr_val.get(attr)['type'] = self._parse_str(conf) + elif conf.startswith('attr_{}.paramType'.format(attr)): + self.attr_val.get(attr)['paramType'] = self._parse_str(conf) + elif conf.startswith('attr_{}.defaultValue'.format(attr)): + self.attr_val.get(attr)['defaultValue'] = self._parse_str(conf) + + def parse_replay_val(self: any, batch_list: list, iterator_list: list): + if self.op_type in batch_list: + self.op_replay_flag = True + self.op_replay_batch = True + elif self.op_type in iterator_list: + self.op_replay_flag = True + self.op_replay_batch = False + + +def _is_op_type_in_opdesc(op_descs: list, op_type: str): + for op in op_descs: + if op_type == op.op_type: + return True + return False + + +def _set_all_options_to_opdescs(op_descs, soc_ver_compile_options): + for op in op_descs: + op.custom_all_compile_options = soc_ver_compile_options + + +def _set_options_to_opdesc(op_descs, op_type, soc_ver_compile_options): + for op in op_descs: + if op.op_type != op_type: + continue + op.custom_compile_options = soc_ver_compile_options + + +def _trans_soc_ver_to_short(soc_ver: str): + low_soc_ver = soc_ver.lower() + if low_soc_ver not in SOC_TO_SHORT_SOC_MAP: + print(f'WARNING: caution: {soc_ver} will trans into ascend910, if not your intention,' + f'use ascend910b1~4 instead') + return SOC_TO_SHORT_SOC_MAP[low_soc_ver] + + +def _get_op_custom_options(op_descs: list, auto_gen_dir: str): + if auto_gen_dir is None: + return {} + file = os.path.join(auto_gen_dir, "custom_compile_options.ini") + if not os.path.exists(file): + print(f'WARNING: cannot find {auto_gen_dir}/custom_compile_options.ini') + return {} + with open (file, 'r') as fd: + lines = fd.readlines() + for line in lines: + param_list = str.split(line.rstrip('\n'), ',') + if len(param_list) != 3: + raise Exception(f'ERROR: custom compile option {param_list} len is not 3') + op_type = param_list[0] + if op_type.upper() == 'ALL': + op_type = OP_ALL + if op_type != OP_ALL and _is_op_type_in_opdesc(op_descs, op_type) == False: + print(f'WARNING: op: {op_type} are not exists in this project') + continue + soc_ver_compile_options = {} + soc_ver = param_list[1] + options_str = param_list[2] + options = str.split(options_str, ';') + if soc_ver == '': + soc_ver_compile_options[SOC_ALL] = options + else: + soc_ver_list = str.split(soc_ver, ';') + for ver in soc_ver_list: + short_ver = _trans_soc_ver_to_short(ver) + soc_ver_compile_options[short_ver] = options + if op_type == OP_ALL: + _set_all_options_to_opdescs(op_descs, soc_ver_compile_options) + else: + _set_options_to_opdesc(op_descs, op_type, soc_ver_compile_options) + + +def get_op_desc(file: str, batch_list: list, iterator_list: list, builder: any, + op_type: list, auto_gen_dir: str = None) -> list: + op_descs = [] + op_match = False + with open (file, 'r') as fd: + lines = fd.readlines() + for line in lines: + line = line.strip() + if line.startswith('['): + name = line[1:-1] + if op_type is None or name in op_type: + op_match = True + op_desc = builder(name) + op_desc.parse_replay_val(batch_list, iterator_list) + op_descs.append(op_desc) + else: + op_match = False + if op_type is not None and len(op_descs) == len(op_type): + return op_descs + continue + if not op_match: + continue + if line.startswith('input'): + op_desc.parse_input(line) + elif line.startswith('output'): + op_desc.parse_output(line) + elif line.startswith('dynamicFormat.flag'): + op_desc.parse_op_format(line) + elif line.startswith('needCheckSupport.flag'): + op_desc.parse_check_support(line) + elif line.startswith('rangeLimit.value'): + op_desc.parse_range_limit(line) + elif line.startswith('opInterface.value'): + op_desc.parse_op_intf(line) + elif line.startswith('kernel.name'): + op_desc.parse_kern_name(line) + elif line.startswith('opFile.value'): + op_desc.parse_op_file(line) + elif line.startswith('dynamicShapeSupport.flag'): + op_desc.parse_dynamic_shape(line) + elif line.startswith('attr.list'): + op_desc.parse_attr_list(line) + elif line.startswith('attr_'): + op_desc.parse_attr_val(line) + _get_op_custom_options(op_descs, auto_gen_dir) + return op_descs diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/parse_ini_to_json.py b/Increase_Bedore_pipe/Is_increase/cmake/util/parse_ini_to_json.py new file mode 100644 index 0000000..721465f --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/parse_ini_to_json.py @@ -0,0 +1,338 @@ +# Copyright 2020-2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +parser ini to json +""" + +import json +import os +import stat +import sys + + +ATTR_TYPE_LIST = ["int", "float", "bool", "str", "listInt", "listFloat", "listBool", "listStr", "listListInt", + "type", "listType", "tensor", "listTensor"] +ATTR_PARAMTYPE_LIST = ["optional", "required"] +BOOL_FLAG_KEY = ["dynamicFormat", "dynamicShapeSupport", "dynamicRankSupport", "precision_reduce", "heavyOp", + "needCheckSupport"] +BOOL_LIST = ["true", "false"] +DTYPE_LIST = ["float16", "float", "float32", "int8", "int16", "int32", "uint8", "uint16", "uint32", "bool", + "int64", "uint64", "qint8", "qint16", "qint32", "quint8", "quint16", "double", "complex64", + "complex128", "string", "resource", "dual", "dual_sub_int8", "dual_sub_uint8", "string_ref", + "int4", "bfloat16", "uint1"] +FORMAT_LIST = ["NCHW", "NHWC", "ND", "NC1HWC0", "FRACTAL_Z", "NC1C0HWPAD", "NHWC1C0", "FSR_NCHW", "FRACTAL_DECONV", + "C1HWNC0", "FRACTAL_DECONV_TRANSPOSE", "FRACTAL_DECONV_SP_STRIDE_TRANS", "NC1HWC0_C04", + "FRACTAL_Z_C04", "CHWN", "FRACTAL_DECONV_SP_STRIDE8_TRANS", "HWCN", "NC1KHKWHWC0", "BN_WEIGHT", + "FILTER_HWCK", "HASHTABLE_LOOKUP_LOOKUPS", "HASHTABLE_LOOKUP_KEYS", "HASHTABLE_LOOKUP_VALUE", + "HASHTABLE_LOOKUP_OUTPUT", "HASHTABLE_LOOKUP_HITS", "C1HWNCoC0", "MD", "NDHWC", "FRACTAL_ZZ", + "FRACTAL_NZ", "NCDHW", "DHWCN", "NDC1HWC0", "FRACTAL_Z_3D", "CN", "NC", "DHWNC", + "FRACTAL_Z_3D_TRANSPOSE", "FRACTAL_ZN_LSTM", "FRACTAL_ZN_RNN", "FRACTAL_Z_G", "NULL"] + + +def parse_ini_files(ini_files): + """ + parse ini files to json + Parameters: + ---------------- + ini_files:input file list + return:ops_info + ---------------- + """ + tbe_ops_info = {} + for ini_file in ini_files: + check_file_size(ini_file) + parse_ini_to_obj(ini_file, tbe_ops_info) + return tbe_ops_info + + +def check_file_size(input_file): + try: + file_size = os.path.getsize(input_file) + except OSError as os_error: + print('[ERROR] Failed to open "%s". %s' % (input_file, str(os_error))) + raise OSError from os_error + if file_size > 10*1024*1024: + print('[WARN] The size of %s exceeds 10MB, it may take more time to run, please wait.' % input_file) + + +def parse_ini_to_obj(ini_file, tbe_ops_info): + """ + parse ini file to json obj + Parameters: + ---------------- + ini_file:ini file path + tbe_ops_info:ops_info + ---------------- + """ + with open(ini_file) as ini_file: + lines = ini_file.readlines() + op_dict = {} + op_name = "" + find_op_type = False + for line in lines: + line = line.rstrip() + if line == "": + continue + if line.startswith("["): + if line.endswith("]"): + op_name = line[1:-1] + op_dict = {} + tbe_ops_info[op_name] = op_dict + find_op_type = True + elif "=" in line: + key1 = line[:line.index("=")] + key2 = line[line.index("=")+1:] + key1_0, key1_1 = key1.split(".") + if key1_0 not in op_dict: + op_dict[key1_0] = {} + if key1_1 in op_dict.get(key1_0): + raise RuntimeError("Op:" + op_name + " " + key1_0 + " " + + key1_1 + " is repeated!") + dic_key = op_dict.get(key1_0) + dic_key[key1_1] = key2 + else: + continue + if not find_op_type: + raise RuntimeError("Not find OpType in .ini file.") + + +def check_output_exist(op_dict, is_valid): + """ + Function Description: + Check output is exist + Parameter: op_dict + Parameter: is_valid + """ + if "output0" in op_dict: + output0_dict = op_dict.get("output0") + if output0_dict.get("name", None) is None: + is_valid = False + print("output0.name is required in .ini file!") + else: + is_valid = False + print("output0 is required in .ini file!") + return is_valid + + +def check_attr_dict(attr_dict, is_valid, attr): + """ + Function Description: + Check attr_dict + Parameter: attr_dict + Parameter: is_valid + Parameter: attr + """ + attr_type = attr_dict.get("type") + value = attr_dict.get("value") + param_type = attr_dict.get("paramType") + if attr_type is None or value is None: + is_valid = False + print("If attr.list is exist, {0}.type and {0}.value is required".format(attr)) + if param_type and param_type not in ATTR_PARAMTYPE_LIST: + is_valid = False + print("{0}.paramType only support {1}.".format(attr, ATTR_PARAMTYPE_LIST)) + if attr_type and attr_type not in ATTR_TYPE_LIST: + is_valid = False + print("{0}.type only support {1}.".format(attr, ATTR_TYPE_LIST)) + return is_valid + + +def check_attr(op_dict, is_valid): + """ + Function Description: + Check attr + Parameter: op_dict + Parameter: is_valid + """ + if "attr" in op_dict: + attr_dict = op_dict.get("attr") + attr_list_str = attr_dict.get("list", None) + if attr_list_str is None: + is_valid = False + print("attr.list is required in .ini file!") + else: + attr_list = attr_list_str.split(",") + for attr_name in attr_list: + attr = "attr_" + attr_name.strip() + attr_dict = op_dict.get(attr) + if attr_dict: + is_valid = check_attr_dict(attr_dict, is_valid, attr) + else: + is_valid = False + print("%s is required in .ini file, when attr.list is %s!" % (attr, attr_list_str)) + return is_valid + + +def check_bool_flag(op_dict, is_valid): + """ + Function Description: + check_bool_flag + Parameter: op_dict + Parameter: is_valid + """ + for key in BOOL_FLAG_KEY: + if key in op_dict: + op_bool_key = op_dict.get(key) + if op_bool_key.get("flag").strip() not in BOOL_LIST: + is_valid = False + print("{0}.flag only support {1}.".format(key, BOOL_LIST)) + return is_valid + + +def check_type_format(op_info, is_valid, op_info_key): + """ + Function Description: + Check type and format + Parameter: op_info + Parameter: is_valid + Parameter: op_info_key + """ + op_info_dtype_str = op_info.get("dtype") + op_info_dtype_num = 0 + op_info_format_num = 0 + if op_info_dtype_str: + op_info_dtype = op_info_dtype_str.split(",") + op_info_dtype_num = len(op_info_dtype) + for dtype in op_info_dtype: + if dtype.strip() not in DTYPE_LIST: + is_valid = False + print("{0}.dtype not support {1}.".format(op_info_key, dtype)) + op_info_format_str = op_info.get("format") + if op_info_format_str: + op_info_format = op_info_format_str.split(",") + op_info_format_num = len(op_info_format) + for op_format in op_info_format: + if op_format.strip() not in FORMAT_LIST: + is_valid = False + print("{0}.format not support {1}.".format(op_info_key, op_format)) + if op_info_dtype_num > 0 and op_info_format_num > 0: + if op_info_dtype_num != op_info_format_num: + is_valid = False + print("The number of {0}.dtype not match the number of {0}.format.".format(op_info_key)) + return is_valid + + +def check_op_info(tbe_ops): + """ + Function Description: + Check info. + Parameter: tbe_ops + Return Value: is_valid + """ + print("\n\n==============check valid for ops info start==============") + required_op_input_info_keys = ["paramType", "name"] + required_op_output_info_keys = ["paramType", "name"] + param_type_valid_value = ["dynamic", "optional", "required"] + is_valid = True + for op_key in tbe_ops: + op_dict = tbe_ops[op_key] + for op_info_key in op_dict: + if op_info_key.startswith("input"): + op_input_info = op_dict[op_info_key] + missing_keys = [] + for required_op_input_info_key in required_op_input_info_keys: + if required_op_input_info_key not in op_input_info: + missing_keys.append(required_op_input_info_key) + if len(missing_keys) > 0: + print("op: " + op_key + " " + op_info_key + " missing: " + + ",".join(missing_keys)) + is_valid = False + else: + if not op_input_info["paramType"] in param_type_valid_value: + print("op: " + op_key + " " + op_info_key + \ + " paramType not valid, valid key:[dynamic, " + "optional, required]") + is_valid = False + is_valid = check_type_format(op_input_info, is_valid, op_info_key) + if op_info_key.startswith("output"): + op_input_info = op_dict[op_info_key] + missing_keys = [] + for required_op_input_info_key in required_op_output_info_keys: + if required_op_input_info_key not in op_input_info: + missing_keys.append(required_op_input_info_key) + if len(missing_keys) > 0: + print("op: " + op_key + " " + op_info_key + " missing: " + + ",".join(missing_keys)) + is_valid = False + else: + if not op_input_info["paramType"] in param_type_valid_value: + print("op: " + op_key + " " + op_info_key + + " paramType not valid, valid key:[dynamic, " + "optional, required]") + is_valid = False + is_valid = check_type_format(op_input_info, is_valid, op_info_key) + is_valid = check_attr(op_dict, is_valid) + is_valid = check_bool_flag(op_dict, is_valid) + print("==============check valid for ops info end================\n\n") + return is_valid + + +def write_json_file(tbe_ops_info, json_file_path): + """ + Save info to json file + Parameters: + ---------------- + tbe_ops_info: ops_info + json_file_path: json file path + ---------------- + """ + json_file_real_path = os.path.realpath(json_file_path) + wr_flag = os.O_WRONLY | os.O_CREAT + wr_mode = stat.S_IWUSR | stat.S_IRUSR + with os.fdopen(os.open(json_file_real_path, wr_flag, wr_mode), 'w') as file_path: + # Only the owner and group have rights + os.chmod(json_file_real_path, stat.S_IWGRP + stat.S_IWUSR + stat.S_IRGRP + + stat.S_IRUSR) + json.dump(tbe_ops_info, file_path, sort_keys=True, indent=4, + separators=(',', ':')) + print("Compile op info cfg successfully.") + + +def parse_ini_to_json(ini_file_paths, outfile_path): + """ + parse ini files to json file + Parameters: + ---------------- + ini_file_paths: list of ini file path + outfile_path: output file path + ---------------- + """ + tbe_ops_info = parse_ini_files(ini_file_paths) + if not check_op_info(tbe_ops_info): + print("Compile op info cfg failed.") + return False + write_json_file(tbe_ops_info, outfile_path) + return True + + +if __name__ == '__main__': + args = sys.argv + + OUTPUT_FILE_PATH = "tbe_ops_info.json" + ini_file_path_list = [] + + for arg in args: + if arg.endswith("ini"): + ini_file_path_list.append(arg) + OUTPUT_FILE_PATH = arg.replace(".ini", ".json") + if arg.endswith("json"): + OUTPUT_FILE_PATH = arg + + if len(ini_file_path_list) == 0: + ini_file_path_list.append("tbe_ops_info.ini") + + if not parse_ini_to_json(ini_file_path_list, OUTPUT_FILE_PATH): + sys.exit(1) + sys.exit(0) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/preset_parse.py b/Increase_Bedore_pipe/Is_increase/cmake/util/preset_parse.py new file mode 100644 index 0000000..8f1124b --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/preset_parse.py @@ -0,0 +1,23 @@ +import json +import sys +import os + + +def get_config_opts(file): + src_dir = os.path.abspath(os.path.dirname(file)) + opts = '' + with open(file, 'r') as fd: + config = json.load(fd) + for conf in config: + if conf == 'configurePresets': + for node in config[conf]: + macros = node.get('cacheVariables') + if macros is not None: + for key in macros: + opts += '-D{}={} '.format(key, macros[key]['value']) + opts = opts.replace('${sourceDir}', src_dir) + print(opts) + + +if __name__ == "__main__": + get_config_opts(sys.argv[1]) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/replay_codegen.py b/Increase_Bedore_pipe/Is_increase/cmake/util/replay_codegen.py new file mode 100644 index 0000000..1baa364 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/replay_codegen.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import os +import stat +import collections +import kernel_entry as keb +from tiling_data_def_build import gen_tiling +import code_channel_infer +import const_var + +PYF_PATH = os.path.dirname(__file__) + +ReplayCodeGenParams = collections.namedtuple('ReplayCodeGenParams',\ +['op_type', 'impl', 'tiling_file', 'kernel', 'entry', 'argn', 'op_replay_batch', 'max_block_dim', 'max_shape_size']) + + +class ReplayCodeGen: + def __init__(self, replayCodeGenParams): + self.op_type = replayCodeGenParams.op_type + self.impl = replayCodeGenParams.impl + self.tiling_file = replayCodeGenParams.tiling_file + self.tiling_data_file = '' + self.kernel = replayCodeGenParams.kernel + self.entry = replayCodeGenParams.entry + self.argn = replayCodeGenParams.argn + self.batch = False + self.outdir = '' + self.data_type = 'uint8_t' + self.blknum = 32 + self.op_replay_batch = replayCodeGenParams.op_replay_batch + self.max_block_dim = replayCodeGenParams.max_block_dim + self.max_shape_size = replayCodeGenParams.max_shape_size + + def set_batch(self, is_batch): + self.batch = is_batch + + def set_outdir(self, outdir): + self.outdir = outdir + + def gen_replay(self, ops_product: str): + kerentry = os.path.join(self.outdir, self.kernel + '_entry.cce') + kerimpl = os.path.join(self.outdir, self.kernel + '_impl.cpp') + replayimpl = os.path.join(self.outdir, self.kernel + '_replay.cpp') + if self.batch: + reptmp = os.path.join(PYF_PATH, 'batch_replay_impl.temp') + else: + reptmp = os.path.join(PYF_PATH, 'replay_impl.temp') + kertmp = os.path.join(PYF_PATH, 'kernel_impl.temp') + self._gen_kentry(kerentry) + self._gen_kimpl_code(kerimpl, kertmp) + self._gen_tiling_data_header() + self._gen_replay_code(replayimpl, reptmp, ops_product) + + def _gen_tiling_data_header(self): + self.tiling_data_file = os.path.join(self.outdir, self.kernel + '_tiling_data.h') + gen_tiling(self.tiling_file, self.tiling_data_file) + + def _gen_kimpl_code(self, src, tmpfile): + with open(tmpfile, 'r') as fd: + temp = fd.read() + temp = temp.replace('__CCE_FILE__', self.impl) + with os.fdopen(os.open(src, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(temp) + + def _gen_replay_code(self, src, tmpfile, ops_product: str): + with open(tmpfile, 'r') as fd: + temp = fd.read() + temp = temp.replace('__ARG_NUM__', str(self.argn)) + argdef = [] + kargs = [] + for i in range(0, self.argn): + argdef.append('{} *'.format(self.data_type)) + kargs.append('({} *)GetArg({})'.format(self.data_type, i)) + temp = temp.replace('__ARGS_DEF__', ', '.join(argdef)) + temp = temp.replace('__KERNEL_ARGS__', ', '.join(kargs)) + temp = temp.replace('__KERNEL_FUN__', self.entry) + core_type_infer = 'core_type' + code_channel = code_channel_infer.infer_code_channel(code_channel_infer.InfoCodeChanelParams(self.impl,\ + self.tiling_data_file, self.kernel, self.outdir, ops_product, None)) + if code_channel == code_channel_infer.CODE_VEC: + core_type_infer = '0' + elif code_channel == code_channel_infer.CODE_CUBE: + core_type_infer = '1' + temp = temp.replace('__CORE_TYPE__', core_type_infer) + # regist function + temp = temp.replace('__OPS_PRODUCT__', ops_product) + temp = temp.replace('__OPTYPE__', self.op_type) + with os.fdopen(os.open(src, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(temp) + + def _gen_kentry(self, src): + kf = '' + pre_alloc_str = 'A' * 256 + if self.batch: + kf += keb.batch_code_gen("K{:02d}_{}{}".format(0, self.entry, pre_alloc_str), self.argn, self.data_type) + else: + kf += keb.mc_code_gen("K{:02d}_{}{}".format(0, self.entry, pre_alloc_str),\ + self.argn, self.data_type, self.blknum) + with os.fdopen(os.open(src, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(kf) diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/replay_impl.temp b/Increase_Bedore_pipe/Is_increase/cmake/util/replay_impl.temp new file mode 100644 index 0000000..1d30dd8 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/replay_impl.temp @@ -0,0 +1,120 @@ +#include +#include +#include +#include +#include +#include +#include "replay_def.h" +#include "code_gen.h" +#include "replay_fun.h" +#include "register/op_check.h" +#define __ASCENDC_REPLAY_CODE__ +using namespace std; +using namespace optiling; +using namespace AscendCReplay; + +extern "C" void __KERNEL_FUN__ (__ARGS_DEF__, const char *); +extern "C" int elf_append(char *elf, uint32_t elfSize, char *jit, int kernum, int blknum[], char *atext[], + int alen[], int atlen, const char* kernelname[]); + +#define KERNEL_N 1 +#define ARG_N (__ARG_NUM__) +#define MAX_L (1024 * 1024 * 100) +#define MAX_E (1024 * 1024) + +int __KERNEL_FUN___replay___OPS_PRODUCT__(ReplayFuncParam& param, const int core_type) +{ + // gen type 1 : direct call codes 0: load .o file + if (param.gentype < 0 || param.gentype > 1) { + printf("Error: call replay gen type is %d, should only be 1 or 0\n", param.gentype); + return 0; + } else if (param.gentype == 1 && param.objptr == nullptr) { + printf("Error: call replay with direct call mode, but code obj addr is null\n"); + return 0; + } else if (param.gentype == 0 && param.output_kernel_file == nullptr) { + printf("Error: call replay with object file mode, but object file path is null\n"); + return 0; + } + // core_type 0:MIX 1:CUBE 2:VEC + if (core_type < 0 || core_type > 2) { + printf("Error: call replay core type is %d !\n", core_type); + return 0; + } + g_coreType = __CORE_TYPE__; + g_taskRation = param.task_ration; + g_tilingKey = param.tiling_key; + + unsigned char *buf, *jit; + char *kernel[KERNEL_N * 32]; + int len[KERNEL_N * 32]; + int blknum[KERNEL_N]; + int max; + block_num = param.block_dim; + g_ubBase = block_num; + uint8_t *code = (uint8_t *)malloc(MAX_L); + uint8_t *pos = code; + struct timespec tp1, tp2; + + clock_gettime(CLOCK_MONOTONIC, &tp1); + if (block_num > 32) { + printf("Error: block_num > 32\n"); + return 0; + } + //__OP_FOPEN__ + for (int i = 0; i < KERNEL_N; i++) { + for (int j = 0; j < ARG_N; j++) + AddArg(j, ARG_STEP * (j + 1)); + for (block_idx = 0; block_idx < block_num; block_idx++) { + //__OP_SET_KERNEL__ + int code_idx = i * block_num + block_idx; +#ifdef FP_CEILING + SetCtrlFloatEnable(); +#else + SetCtrlFloatDisable(); +#endif + CodeInit(pos, false); + __KERNEL_FUN__(__KERNEL_ARGS__, param.tiling_data); + CodeEnd(); + kernel[code_idx] = (char *)pos; + len[code_idx] = CodeLen(); + pos += len[code_idx]; + printf("kernel %d core %ld code generated len %d\n", i, block_idx, len[code_idx]); + } + blknum[i] = block_num; + } + //__OP_FCLOSE__ + clock_gettime(CLOCK_MONOTONIC, &tp2); + buf = (unsigned char *)malloc(MAX_E); + int fd = open(param.entry_file, O_RDONLY); + if (fd < 0) { + printf("[error]: cannot find entry.o : %s\n", param.entry_file); + return 0; + } + uint32_t bufSize = read(fd, buf, MAX_E); + if (bufSize <= 0) { + printf("[error]: entry.o : %s is too small ! \n", param.entry_file); + } + close(fd); + jit = (unsigned char *)malloc(MAX_L); + printf("total code generated %ld\n", pos - code); + int sz = elf_append((char *)buf, bufSize, (char *)jit, KERNEL_N, blknum, kernel, len, pos - code, ¶m.kernel_name); + if (tp1.tv_sec != tp2.tv_sec) { + printf("%ld NS\n", tp2.tv_nsec + 1000000000 - tp1.tv_nsec); + } else { + printf("%ld NS\n", tp2.tv_nsec - tp1.tv_nsec); + } + printf("new elf size %d\n", sz); + if (param.gentype == 0) { + fd = open(param.output_kernel_file, O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); + (void)write(fd, jit, sz); + close(fd); + free(jit); + } else if (param.gentype == 1) { + *param.objptr = (char*)jit; + } + free(buf); + free(code); + return sz; +} + +REG_REPLAY_FUNC(__OPTYPE__, __OPS_PRODUCT__, __KERNEL_FUN___replay___OPS_PRODUCT__); diff --git a/Increase_Bedore_pipe/Is_increase/cmake/util/tiling_data_def_build.py b/Increase_Bedore_pipe/Is_increase/cmake/util/tiling_data_def_build.py new file mode 100644 index 0000000..a963042 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/cmake/util/tiling_data_def_build.py @@ -0,0 +1,84 @@ +#!/usr/bin/env python +# coding=utf-8 +""" +Function: +The replay funtion entry +Copyright Information: +Huawei Technologies Co., Ltd. All Rights Reserved © 2020 +""" + +import sys +import os +import stat +import re +import const_var + + +def gen_tiling(tiling_header_file: str, tiling_file_out: str): + if not os.path.exists(tiling_header_file): + print("warning: no userdef tiling header file: ", tiling_header_file) + return + print("generate tiling def header file: ", tiling_file_out) + tmp_name = os.path.splitext(os.path.basename(tiling_header_file))[0].upper() + tiling_source = '#ifndef __{}_H__\n'.format(tmp_name) + tiling_source += '#define __{}_H__\n\n'.format(tmp_name) + tiling_source += '#include \n' + tiling_source += '#include \n\n' + tiling_source += '#include "kernel_tiling/kernel_tiling.h"\n\n' + end_source = "" + pattern = re.compile(r'[(](.*)[)]', re.S) + with open(tiling_header_file, 'r') as fd: + lines = fd.readlines() + for line in lines: + line = line.strip() + if (line.startswith('BEGIN_TILING_DATA_DEF')): + tiling_source += '#pragma pack(1)\n' + tiling_source += 'struct ' + struct_def = re.findall(pattern, line)[0] + tiling_source += struct_def + ' {\n' + elif (line.startswith('TILING_DATA_FIELD_DEF_ARR')): + field_params = re.findall(pattern, line)[0] + fds = field_params.split(',') + tiling_source += ' {} {}[{}] = {{}};\n'.format(fds[0].strip(), fds[2].strip(), fds[1].strip()) + elif (line.startswith('TILING_DATA_FIELD_DEF_STRUCT')): + field_params = re.findall(pattern, line)[0] + fds = field_params.split(',') + tiling_source += ' {} {};\n'.format(fds[0].strip(), fds[1].strip()) + elif (line.startswith('TILING_DATA_FIELD_DEF')): + field_params = re.findall(pattern, line)[0] + fds = field_params.split(',') + tiling_source += ' {} {} = 0;\n'.format(fds[0].strip(), fds[1].strip()) + elif (line.startswith('END_TILING_DATA_DEF')): + tiling_source += '};\n' + tiling_source += '#pragma pack()\n\n' + tiling_source += '#ifdef __NPU_TILING__\n' + tiling_source += \ + 'inline [aicore] void Init{stru}(const __gm__ uint8_t* tiling, {stru}* const_data)\n'\ + .format(stru=struct_def) + tiling_source += '{\n' + tiling_source += ' const __gm__ uint32_t *src = (const __gm__ uint32_t *)tiling;\n' + tiling_source += ' uint32_t *dst = (uint32_t *)const_data;\n' + tiling_source += ' for (auto i = 0; i < sizeof({}) / 4; i++) *(dst + i) = *(src + i);\n'\ + .format(struct_def) + tiling_source += '}\n' + tiling_source += '#else\n' + tiling_source += 'inline void Init{stru}(uint8_t* tiling, {stru}* const_data)\n'.format(stru=struct_def) + tiling_source += '{\n' + tiling_source += ' memcpy(const_data, tiling, sizeof({}));\n'.format(struct_def) + tiling_source += '}\n' + tiling_source += '#endif\n\n' + end_source = ''' +#define GET_TILING_DATA(tiling_data, tiling_arg) \\ +{stru} tiling_data; \\ +Init{stru}(tiling_arg, &tiling_data)\n +'''.format(stru=struct_def) + tiling_source += end_source + tiling_source += '#endif' + with os.fdopen(os.open(tiling_file_out, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(tiling_source) + + +if __name__ == '__main__': + if len(sys.argv) <= 2: + raise RuntimeError('arguments must greater than 2') + gen_tiling(sys.argv[1], sys.argv[2]) diff --git a/Increase_Bedore_pipe/Is_increase/framework/CMakeLists.txt b/Increase_Bedore_pipe/Is_increase/framework/CMakeLists.txt new file mode 100644 index 0000000..b6be9b4 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/framework/CMakeLists.txt @@ -0,0 +1,11 @@ +if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mindspore") + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/caffe_plugin") + add_subdirectory(caffe_plugin) + endif() + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/tf_plugin") + add_subdirectory(tf_plugin) + endif() + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/onnx_plugin") + add_subdirectory(onnx_plugin) + endif() +endif() diff --git a/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/CMakeLists.txt b/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/CMakeLists.txt new file mode 100644 index 0000000..a6aba5c --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/CMakeLists.txt @@ -0,0 +1,14 @@ + +aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR} plugin_srcs) +add_library(cust_tf_parsers SHARED ${plugin_srcs}) +target_compile_definitions(cust_tf_parsers PRIVATE google=ascend_private) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_tf_parsers PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_tf_parsers PRIVATE intf_pub graph) +install(TARGETS cust_tf_parsers + LIBRARY DESTINATION packages/vendors/${vendor_name}/framework/tensorflow +) diff --git a/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc b/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc new file mode 100644 index 0000000..2cd837c --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc @@ -0,0 +1,23 @@ +/* Copyright (C) 2020-2021. Huawei Technologies Co., Ltd. All +rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the Apache License Version 2.0. + * You may not use this file except in compliance with the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * Apache License for more details at + * http://www.apache.org/licenses/LICENSE-2.0 + */ + +#include "register/register.h" + +namespace domi { +// register op info to GE +REGISTER_CUSTOM_OP("AddCustom") + .FrameworkType(TENSORFLOW) // type: CAFFE, TENSORFLOW + .OriginOpType("Add") // name in tf module + .ParseParamsByOperatorFn(AutoMappingByOpFn); +} // namespace domi diff --git a/Increase_Bedore_pipe/Is_increase/op_host/CMakeLists.txt b/Increase_Bedore_pipe/Is_increase/op_host/CMakeLists.txt new file mode 100644 index 0000000..40dd51c --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/op_host/CMakeLists.txt @@ -0,0 +1,82 @@ + +aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR} ops_srcs) + +opbuild(OPS_SRC ${ops_srcs} + OUT_DIR ${ASCEND_AUTOGEN_PATH} +) + +add_library(cust_op_proto SHARED ${ops_srcs} ${ASCEND_AUTOGEN_PATH}/op_proto.cc) +target_compile_definitions(cust_op_proto PRIVATE OP_PROTO_LIB) +target_compile_options(cust_op_proto PRIVATE + -fvisibility=hidden +) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_op_proto PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_op_proto PRIVATE + intf_pub + exe_graph + register + tiling_api + -Wl,--whole-archive + rt2_registry + -Wl,--no-whole-archive +) +set_target_properties(cust_op_proto PROPERTIES OUTPUT_NAME + cust_opsproto_rt2.0 +) +add_library(cust_optiling SHARED ${ops_srcs}) +target_compile_definitions(cust_optiling PRIVATE OP_TILING_LIB) +target_compile_options(cust_optiling PRIVATE + -fvisibility=hidden +) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_optiling PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_optiling PRIVATE + intf_pub + exe_graph + register + tiling_api + -Wl,--whole-archive + rt2_registry + -Wl,--no-whole-archive +) +set_target_properties(cust_optiling PROPERTIES OUTPUT_NAME + cust_opmaster_rt2.0 +) + +file(GLOB aclnn_src ${ASCEND_AUTOGEN_PATH}/aclnn_*.cpp) +file(GLOB aclnn_inc ${ASCEND_AUTOGEN_PATH}/aclnn_*.h) +add_library(cust_opapi SHARED ${aclnn_src}) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_opapi PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_opapi PRIVATE intf_pub ascendcl nnopbase) + +add_custom_target(optiling_compat ALL + COMMAND ln -sf lib/linux/${CMAKE_SYSTEM_PROCESSOR}/$ + ${CMAKE_CURRENT_BINARY_DIR}/liboptiling.so +) + +install(TARGETS cust_op_proto + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_proto/lib/linux/${CMAKE_SYSTEM_PROCESSOR}) +install(FILES ${ASCEND_AUTOGEN_PATH}/op_proto.h + DESTINATION packages/vendors/${vendor_name}/op_proto/inc) +install(TARGETS cust_optiling + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_tiling/lib/linux/${CMAKE_SYSTEM_PROCESSOR}) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/liboptiling.so + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_tiling) +install(TARGETS cust_opapi + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_api/lib) +install(FILES ${aclnn_inc} + DESTINATION packages/vendors/${vendor_name}/op_api/include) diff --git a/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp b/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp new file mode 100644 index 0000000..491d184 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/op_host/add_custom.cpp @@ -0,0 +1,75 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "add_custom_tiling.h" +#include "register/op_def_registry.h" + +namespace optiling { +const uint32_t BLOCK_DIM = 8; +const uint32_t TILE_NUM = 8; +static ge::graphStatus TilingFunc(gert::TilingContext *context) +{ + TilingData tiling; + uint32_t totalLength = context->GetInputShape(0)->GetOriginShape().GetShapeSize(); + context->SetBlockDim(1); + + tiling.SaveToBuffer(context->GetRawTilingData()->GetData(), context->GetRawTilingData()->GetCapacity()); + context->GetRawTilingData()->SetDataSize(tiling.GetDataSize()); + size_t *currentWorkspace = context->GetWorkspaceSizes(1); + currentWorkspace[0] = 0; + return ge::GRAPH_SUCCESS; +} +} // namespace optiling + +namespace ge { +static graphStatus InferShape(gert::InferShapeContext *context) +{ + const gert::Shape *x1_shape = context->GetInputShape(0); + gert::Shape *y_shape = context->GetOutputShape(0); + *y_shape = *x1_shape; + return GRAPH_SUCCESS; +} + +static graphStatus InferDataType(gert::InferDataTypeContext *context) +{ + const auto inputDataType = context->GetInputDataType(0); + context->SetOutputDataType(0, inputDataType); + return ge::GRAPH_SUCCESS; +} +} // namespace ge + +namespace ops { +class AddCustom : public OpDef { +public: + explicit AddCustom(const char *name) : OpDef(name) + { + this->Input("x") + .ParamType(REQUIRED) + .DataType({ge::DT_FLOAT16}) + .Format({ge::FORMAT_ND}); + this->Input("y") + .ParamType(REQUIRED) + .DataType({ge::DT_FLOAT16}) + .Format({ge::FORMAT_ND}); + this->Output("z") + .ParamType(REQUIRED) + .DataType({ge::DT_FLOAT16}) + .Format({ge::FORMAT_ND}); + + this->SetInferShape(ge::InferShape).SetInferDataType(ge::InferDataType); + this->AICore() + .SetTiling(optiling::TilingFunc) + .AddConfig("ascend910") + .AddConfig("ascend310p") + .AddConfig("ascend310b") + .AddConfig("ascend910b"); + } +}; +OP_ADD(AddCustom); +} // namespace ops diff --git a/Increase_Bedore_pipe/Is_increase/op_host/add_custom_tiling.h b/Increase_Bedore_pipe/Is_increase/op_host/add_custom_tiling.h new file mode 100644 index 0000000..323f307 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/op_host/add_custom_tiling.h @@ -0,0 +1,22 @@ +/** + * @file add_custom_tiling.h + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#ifndef ADD_CUSTOM_TILING_H +#define ADD_CUSTOM_TILING_H +#include "register/tilingdata_base.h" + +namespace optiling { +BEGIN_TILING_DATA_DEF(TilingData) +TILING_DATA_FIELD_DEF(uint32_t, totalLength); +TILING_DATA_FIELD_DEF(uint32_t, tileNum); +END_TILING_DATA_DEF; + +REGISTER_TILING_DATA_CLASS(AddCustom, TilingData) +} // namespace optiling +#endif // ADD_CUSTOM_TILING_H diff --git a/Increase_Bedore_pipe/Is_increase/op_kernel/CMakeLists.txt b/Increase_Bedore_pipe/Is_increase/op_kernel/CMakeLists.txt new file mode 100644 index 0000000..0d31a44 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/op_kernel/CMakeLists.txt @@ -0,0 +1,61 @@ +# set custom compile options +if ("${CMAKE_BUILD_TYPE}x" STREQUAL "Debugx") + add_ops_compile_options(ALL OPTIONS -g -O0) +endif() + +foreach(compute_unit ${ASCEND_COMPUTE_UNIT}) + + # generate aic-${compute_unit}-ops-info.json + add_ops_info_target(TARGET ops_info_gen_${compute_unit} + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core/${compute_unit}/aic-${compute_unit}-ops-info.json + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/config/${compute_unit} + ) + + # generate ascendc impl py once + if (NOT TARGET ascendc_impl_gen) + add_ops_impl_target(TARGET ascendc_impl_gen + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl + ) + endif() + + # dynamic shape binary compile + if (${ENABLE_BINARY_PACKAGE}) + add_bin_compile_target(TARGET ascendc_bin_${compute_unit} + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + ADP_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/dynamic + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/binary/${compute_unit} + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/kernel + COMPUTE_UNIT ${compute_unit} + ) + add_dependencies(ascendc_bin_${compute_unit} ascendc_impl_gen) + endif() + +endforeach() + +# generate npu_supported_ops.json +add_npu_support_target(TARGET npu_supported_ops + OPS_INFO_DIR ${ASCEND_AUTOGEN_PATH} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core + INSTALL_DIR packages/vendors/${vendor_name}/framework/${ASCEND_FRAMEWORK_TYPE} +) + +if(ENABLE_TEST AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/testcases) + add_subdirectory(testcases) +endif() + +# install kernel file +if (${ENABLE_SOURCE_PACKAGE}) + file(GLOB KERNEL_FILES + ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/*.h + ${CMAKE_CURRENT_SOURCE_DIR}/*.py + ) + install(FILES ${KERNEL_FILES} + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl/dynamic + ) +endif() diff --git a/Increase_Bedore_pipe/Is_increase/op_kernel/add_custom.cpp b/Increase_Bedore_pipe/Is_increase/op_kernel/add_custom.cpp new file mode 100644 index 0000000..d1316bf --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/op_kernel/add_custom.cpp @@ -0,0 +1,62 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2022-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "kernel_operator.h" +constexpr int32_t BUFFER_NUM = 2; // tensor num for each queue + +class KernelAdd { +public: + __aicore__ inline KernelAdd() {} + __aicore__ inline void Init(GM_ADDR x, GM_ADDR y, GM_ADDR z, uint32_t totalLength, uint32_t tileNum,AscendC::TPipe * cur_pipe) + { + xGm.SetGlobalBuffer((__gm__ half *)x , 131072); + pipe=cur_pipe; + pipe->InitBuffer(inQueueX, 1, 65536 * sizeof(half)); + pipe->InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe *pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + AscendC::TPipe cur_pipe; + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum,&cur_pipe); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/output/AddCustom_case_20240821114242.json b/Increase_Bedore_pipe/Is_increase/output/AddCustom_case_20240821114242.json new file mode 100644 index 0000000..4b5f793 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/output/AddCustom_case_20240821114242.json @@ -0,0 +1,58 @@ +[ + { + "case_name": "Test_AddCustom_001", + "op": "AddCustom", + "input_desc": [ + { + "format": [ + "ND" + ], + "type": [ + "float16" + ], + "shape": [], + "data_distribute": [ + "uniform" + ], + "value_range": [ + [ + 0.1, + 1.0 + ] + ], + "name": "x" + }, + { + "format": [ + "ND" + ], + "type": [ + "float16" + ], + "shape": [], + "data_distribute": [ + "uniform" + ], + "value_range": [ + [ + 0.1, + 1.0 + ] + ], + "name": "y" + } + ], + "output_desc": [ + { + "format": [ + "ND" + ], + "type": [ + "float16" + ], + "shape": [], + "name": "z" + } + ] + } +] \ No newline at end of file diff --git a/Increase_Bedore_pipe/Is_increase/scripts/install.sh b/Increase_Bedore_pipe/Is_increase/scripts/install.sh new file mode 100644 index 0000000..8468c5a --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/scripts/install.sh @@ -0,0 +1,318 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +QUIET="y" + +while true +do + case $1 in + --quiet) + QUIET="y" + shift + ;; + --install-path=*) + INSTALL_PATH=$(echo $1 | cut -d"=" -f2-) + INSTALL_PATH=${INSTALL_PATH%*/} + shift + ;; + --*) + shift + ;; + *) + break + ;; + esac +done + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [ -n "${INSTALL_PATH}" ]; then + if [[ ! "${INSTALL_PATH}" = /* ]]; then + log "[ERROR] use absolute path for --install-path argument" + exit 1 + fi + if [ ! -d ${INSTALL_PATH} ]; then + mkdir ${INSTALL_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${INSTALL_PATH} failed" + exit 1 + fi + fi + targetdir=${INSTALL_PATH} +elif [ -n "${ASCEND_CUSTOM_OPP_PATH}" ]; then + if [ ! -d ${ASCEND_CUSTOM_OPP_PATH} ]; then + mkdir -p ${ASCEND_CUSTOM_OPP_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${ASCEND_CUSTOM_OPP_PATH} failed" + fi + fi + targetdir=${ASCEND_CUSTOM_OPP_PATH} +else + if [ "x${ASCEND_OPP_PATH}" == "x" ]; then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 + fi + targetdir="${ASCEND_OPP_PATH}" +fi + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + has_same_file=-1 + for file_a in ${sourcedir}/$vendordir/$1/*; do + file_b=${file_a##*/}; + if [ "ls ${targetdir}/$vendordir/$1" = "" ]; then + log "[INFO] ${targetdir}/$vendordir/$1 is empty !!" + return 1 + fi + grep -q $file_b <<<`ls ${targetdir}/$vendordir/$1`; + if [[ $? -eq 0 ]]; then + echo -n "${file_b} " + has_same_file=0 + fi + done + if [ 0 -eq $has_same_file ]; then + if test $QUIET = "n"; then + echo "[INFO]: has old version in ${targetdir}/$vendordir/$1, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + + while true + do + read orn + if [ "$orn" = n ]; then + return 0 + elif [ "$orn" = m ]; then + break; + elif [ "$0rn" = r ]; then + [ -n "${targetdir}/$vendordir/$1/" ] && rm -rf "${targetdir}/$vendordir/$1"/* + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace or merge old ops $1 files .g....." + fi + + log "copy new ops $1 files ......" + if [ -d ${targetdir}/$vendordir/$1/ ]; then + chmod -R +w "$targetdir/$vendordir/$1/" >/dev/null 2>&1 + fi + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} +upgrade_proto() +{ + if [ ! -f ${sourcedir}/$vendordir/custom.proto ]; then + log "[INFO] no need to upgrade custom.proto files" + return 0 + fi + if [ ! -d ${targetdir}/$vendordir/framework/caffe ];then + log "[INFO] create ${targetdir}/$vendordir/framework/caffe." + mkdir -p ${targetdir}/$vendordir/framework/caffe + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/framework/caffe failed" + return 1 + fi + else + if [ -f ${targetdir}/$vendordir/framework/caffe/custom.proto ]; then + # 有老版本,判断是否要覆盖式安装 + if test $QUIET = "n"; then + echo "[INFO] ${targetdir}/$vendordir/framework/caffe has old version"\ + "custom.proto file. Do you want to replace? [y/n] " + + while true + do + read yn + if [ "$yn" = n ]; then + return 0 + elif [ "$yn" = y ]; then + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace old caffe.proto files ......" + fi + chmod -R +w "$targetdir/$vendordir/framework/caffe/" >/dev/null 2>&1 + cp -rf ${sourcedir}/$vendordir/custom.proto ${targetdir}/$vendordir/framework/caffe/ + if [ $? -ne 0 ];then + log "[ERROR] copy new custom.proto failed" + return 1 + fi + log "[INFO] copy custom.proto success" + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +delete_optiling_file() +{ + if [ ! -d ${targetdir}/vendors ];then + log "[INFO] $1 not exist, no need to uninstall" + return 0 + fi + sys_info=$(uname -m) + if [ ! -d ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/lib/linux/${sys_info} ];then + rm -rf ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/liboptiling.so + fi + return 0 +} + +log "[INFO] copy uninstall sh success" + +if [ ! -d ${targetdir}/vendors ];then + log "[INFO] create ${targetdir}/vendors." + mkdir -p ${targetdir}/vendors + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/vendors failed" + return 1 + fi +fi +chmod u+w ${targetdir}/vendors + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +delete_optiling_file op_impl +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +upgrade_proto +if [ $? -ne 0 ];then + exit 1 +fi + +# set the set_env.bash +if [ -n "${INSTALL_PATH}" ] && [ -d ${INSTALL_PATH} ]; then + _ASCEND_CUSTOM_OPP_PATH=${targetdir}/${vendordir} + bin_path="${_ASCEND_CUSTOM_OPP_PATH}/bin" + set_env_variable="#!/bin/bash\nexport ASCEND_CUSTOM_OPP_PATH=${_ASCEND_CUSTOM_OPP_PATH}:\${ASCEND_CUSTOM_OPP_PATH}" + if [ ! -d ${bin_path} ]; then + mkdir -p ${bin_path} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${bin_path} failed" + exit 1 + fi + fi + echo -e ${set_env_variable} > ${bin_path}/set_env.bash + if [ $? -ne 0 ]; then + log "[ERROR] write ASCEND_CUSTOM_OPP_PATH to set_env.bash failed" + exit 1 + else + log "[INFO] using requirements: when custom module install finished or before you run the custom module, \ + execute the command [ source ${bin_path}/set_env.bash ] to set the environment path" + fi +else + config_file=${targetdir}/vendors/config.ini + if [ ! -f ${config_file} ]; then + touch ${config_file} + chmod 640 ${config_file} + echo "load_priority=$vendor_name" > ${config_file} + if [ $? -ne 0 ];then + echo "echo load_priority failed" + exit 1 + fi + else + found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" + found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') + vendor=$(echo $found_vendor | tr -s ' ' ',') + if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" + fi + fi +fi + +chmod u-w ${targetdir}/vendors + +if [ -d ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/ ]; then + chmod -R 440 ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/* >/dev/null 2>&1 +fi +if [ -f ${targetdir}/ascend_install.info ]; then + chmod -R 440 ${targetdir}/ascend_install.info +fi +if [ -f ${targetdir}/scene.info ]; then + chmod -R 440 ${targetdir}/scene.info +fi +if [ -f ${targetdir}/version.info ]; then + chmod -R 440 ${targetdir}/version.info +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/Is_increase/scripts/upgrade.sh b/Increase_Bedore_pipe/Is_increase/scripts/upgrade.sh new file mode 100644 index 0000000..e091734 --- /dev/null +++ b/Increase_Bedore_pipe/Is_increase/scripts/upgrade.sh @@ -0,0 +1,151 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [[ "x${ASCEND_OPP_PATH}" == "x" ]];then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 +fi + +targetdir=${ASCEND_OPP_PATH} + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + vendor_installed_dir=$(ls "$targetdir/vendors" 2> /dev/null) + for i in $vendor_installed_dir;do + vendor_installed_file=$(ls "$vendor_installed_dir/$vendor_name/$i" 2> /dev/null) + if [ "$i" = "$vendor_name" ] && [ "$vendor_installed_file" != "" ]; then + echo "[INFO]: $vendor_name custom opp package has been installed on the path $vendor_installed_dir, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + fi + while true + do + read mrn + if [ "$mrn" = m ]; then + break + elif [ "$mrn" = r ]; then + [ -n "$vendor_installed_file"] && rm -rf "$vendor_installed_file" + break + elif [ "$mrn" = n ]; then + return 0 + else + echo "[WARNING]: Input error, please input m or r or n to choose!" + fi + done + done + log "[INFO] replace old ops $1 files ......" + fi + + log "copy new ops $1 files ......" + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +log "[INFO] copy uninstall sh success" + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +config_file=${targetdir}/vendors/config.ini +found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" +found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') +vendor=$(echo $found_vendor | tr -s ' ' ',') +if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" +fi + +changemode() +{ + if [ -d ${targetdir} ];then + chmod -R 550 ${targetdir}>/dev/null 2>&1 + fi + + return 0 +} +echo "[ops_custom]changemode..." +#changemode +if [ $? -ne 0 ];then + exit 1 +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/No_increase/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/CMakeLists.txt new file mode 100644 index 0000000..584132d --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/CMakeLists.txt @@ -0,0 +1,69 @@ +cmake_minimum_required(VERSION 3.16.0) +project(opp) +if(ENABLE_CROSS_COMPILE) + if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL x86_64) + set(CROSS_COMPILE_PLATFORM aarch64) + else() + set(CROSS_COMPILE_PLATFORM x86_64) + endif() + set(PLATFORM ${CMAKE_SYSTEM_PROCESSOR}) + set(CMAKE_COMPILE_COMPILER_LIBRARY ${ASCEND_CANN_PACKAGE_PATH}/${PLATFORM}-linux/devlib/linux/${CROSS_COMPILE_PLATFORM}/) + set(CMAKE_COMPILE_RUNTIME_LIBRARY ${ASCEND_CANN_PACKAGE_PATH}/${PLATFORM}-linux/devlib/${CROSS_COMPILE_PLATFORM}/) + set(CMAKE_SYSTEM_PROCESSOR ${CROSS_COMPILE_PLATFORM}) + set(CMAKE_COMPILE ${CMAKE_CXX_COMPILER}) + set(CMAKE_CXX_COMPILER ${CMAKE_CROSS_PLATFORM_COMPILER}) +else() + set(CMAKE_COMPILE ${CMAKE_CXX_COMPILER}) +endif() + +include(cmake/config.cmake) +include(cmake/func.cmake) +include(cmake/intf.cmake) + +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/framework) + add_subdirectory(framework) +endif() +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/op_host) + add_subdirectory(op_host) +endif() +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/op_kernel) + add_subdirectory(op_kernel) +endif() +if(ENABLE_TEST AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/testcases) + add_subdirectory(testcases) +endif() + +# modify vendor_name in install.sh and upgrade.sh +add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/scripts/install.sh ${CMAKE_BINARY_DIR}/scripts/upgrade.sh + COMMAND mkdir -p ${CMAKE_BINARY_DIR}/scripts + COMMAND cp -r ${CMAKE_SOURCE_DIR}/scripts/* ${CMAKE_BINARY_DIR}/scripts/ + COMMAND sed -i "s/vendor_name=customize/vendor_name=${vendor_name}/g" ${CMAKE_BINARY_DIR}/scripts/* +) +add_custom_target(modify_vendor ALL DEPENDS ${CMAKE_BINARY_DIR}/scripts/install.sh ${CMAKE_BINARY_DIR}/scripts/upgrade.sh) +install(DIRECTORY ${CMAKE_BINARY_DIR}/scripts/ DESTINATION . FILE_PERMISSIONS OWNER_EXECUTE OWNER_READ GROUP_READ) + +install(FILES ${CMAKE_SOURCE_DIR}/custom.proto DESTINATION packages OPTIONAL) + +get_system_info(SYSTEM_INFO) + +# gen version.info +add_custom_target(gen_version_info ALL + COMMAND bash ${CMAKE_CURRENT_SOURCE_DIR}/cmake/util/gen_version_info.sh ${ASCEND_CANN_PACKAGE_PATH} ${CMAKE_CURRENT_BINARY_DIR} +) + +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/version.info + DESTINATION packages/vendors/${vendor_name}/) + +# CPack config +set(CPACK_PACKAGE_NAME ${CMAKE_PROJECT_NAME}) +set(CPACK_PACKAGE_VERSION ${CMAKE_PROJECT_VERSION}) +set(CPACK_PACKAGE_DESCRIPTION "CPack opp project") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack opp project") +set(CPACK_PACKAGE_DIRECTORY ${CMAKE_INSTALL_PREFIX}) +set(CPACK_PACKAGE_FILE_NAME "custom_opp_${SYSTEM_INFO}.run") +set(CPACK_GENERATOR External) +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_EXTERNAL_ENABLE_STAGING TRUE) +set(CPACK_EXTERNAL_PACKAGE_SCRIPT ${CMAKE_SOURCE_DIR}/cmake/makeself.cmake) +set(CPACK_EXTERNAL_BUILT_PACKAGES ${CPACK_PACKAGE_DIRECTORY}/_CPack_Packages/Linux/External/${CPACK_PACKAGE_FILE_NAME}/${CPACK_PACKAGE_FILE_NAME}) +include(CPack) diff --git a/Increase_Bedore_pipe/No_increase/CMakePresets.json b/Increase_Bedore_pipe/No_increase/CMakePresets.json new file mode 100644 index 0000000..f093397 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/CMakePresets.json @@ -0,0 +1,63 @@ +{ + "version": 1, + "cmakeMinimumRequired": { + "major": 3, + "minor": 19, + "patch": 0 + }, + "configurePresets": [ + { + "name": "default", + "displayName": "Default Config", + "description": "Default build using Unix Makefiles generator", + "generator": "Unix Makefiles", + "binaryDir": "${sourceDir}/build_out", + "cacheVariables": { + "CMAKE_BUILD_TYPE": { + "type": "STRING", + "value": "Release" + }, + "ENABLE_SOURCE_PACKAGE": { + "type": "BOOL", + "value": "True" + }, + "ENABLE_BINARY_PACKAGE": { + "type": "BOOL", + "value": "True" + }, + "ASCEND_COMPUTE_UNIT": { + "type": "STRING", + "value": "ascend310p;ascend310b;ascend910;ascend910b" + }, + "ENABLE_TEST": { + "type": "BOOL", + "value": "True" + }, + "vendor_name": { + "type": "STRING", + "value": "customize" + }, + "ASCEND_CANN_PACKAGE_PATH": { + "type": "PATH", + "value": "/usr/local/Ascend/ascend-toolkit/latest" + }, + "ASCEND_PYTHON_EXECUTABLE": { + "type": "STRING", + "value": "python3" + }, + "CMAKE_INSTALL_PREFIX": { + "type": "PATH", + "value": "${sourceDir}/build_out" + }, + "ENABLE_CROSS_COMPILE": { + "type": "BOOL", + "value": "False" + }, + "CMAKE_CROSS_PLATFORM_COMPILER": { + "type": "PATH", + "value": "/usr/bin/aarch64-linux-gnu-g++" + } + } + } + ] +} diff --git a/Increase_Bedore_pipe/No_increase/build.sh b/Increase_Bedore_pipe/No_increase/build.sh new file mode 100644 index 0000000..4be96d7 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build.sh @@ -0,0 +1,37 @@ +#!/bin/bash +script_path=$(realpath $(dirname $0)) + + +mkdir -p build_out +rm -rf build_out/* +cd build_out + +cmake_version=$(cmake --version | grep "cmake version" | awk '{print $3}') +if [ "$cmake_version" \< "3.19.0" ] ; then + opts=$(python3 $script_path/cmake/util/preset_parse.py $script_path/CMakePresets.json) + echo $opts + cmake .. $opts +else + cmake .. --preset=default +fi +target=package +if [ "$1"x != ""x ]; then target=$1; fi + +cmake --build . --target $target -j16 +if [ $? -ne 0 ]; then exit 1; fi + +if [ $target = "package" ]; then + if test -d ./op_kernel/binary ; then + ./cust*.run + if [ $? -ne 0 ]; then exit 1; fi + cmake --build . --target binary -j16 + if [ $? -ne 0 ]; then exit 1; fi + cmake --build . --target $target -j16 + fi +fi + +# for debug +# cd build_out +# make +# cpack +# verbose append -v diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeCache.txt b/Increase_Bedore_pipe/No_increase/build_out/CMakeCache.txt new file mode 100644 index 0000000..047ef5e --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeCache.txt @@ -0,0 +1,425 @@ +# This is the CMakeCache file. +# For build in directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//No help, variable specified on the command line. +ASCEND_CANN_PACKAGE_PATH:PATH=/usr/local/Ascend/ascend-toolkit/latest + +//No help, variable specified on the command line. +ASCEND_COMPUTE_UNIT:STRING=ascend310p;ascend310b;ascend910;ascend910b + +//No help, variable specified on the command line. +ASCEND_PYTHON_EXECUTABLE:STRING=python3 + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//No help, variable specified on the command line. +CMAKE_BUILD_TYPE:STRING=Release + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//No help, variable specified on the command line. +CMAKE_CROSS_PLATFORM_COMPILER:PATH=/usr/bin/aarch64-linux-gnu-g++ + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11 + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//No help, variable specified on the command line. +CMAKE_INSTALL_PREFIX:PATH=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=opp + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Enable to build RPM source packages +CPACK_SOURCE_RPM:BOOL=OFF + +//Enable to build TBZ2 source packages +CPACK_SOURCE_TBZ2:BOOL=ON + +//Enable to build TGZ source packages +CPACK_SOURCE_TGZ:BOOL=ON + +//Enable to build TXZ source packages +CPACK_SOURCE_TXZ:BOOL=ON + +//Enable to build TZ source packages +CPACK_SOURCE_TZ:BOOL=ON + +//Enable to build ZIP source packages +CPACK_SOURCE_ZIP:BOOL=OFF + +//No help, variable specified on the command line. +ENABLE_BINARY_PACKAGE:BOOL=True + +//No help, variable specified on the command line. +ENABLE_CROSS_COMPILE:BOOL=False + +//No help, variable specified on the command line. +ENABLE_SOURCE_PACKAGE:BOOL=True + +//No help, variable specified on the command line. +ENABLE_TEST:BOOL=True + +//Value Computed by CMake +opp_BINARY_DIR:STATIC=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +//Value Computed by CMake +opp_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +opp_SOURCE_DIR:STATIC=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +//No help, variable specified on the command line. +vendor_name:STRING=customize + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=22 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_AR +CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB +CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=5 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_RPM +CPACK_SOURCE_RPM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TBZ2 +CPACK_SOURCE_TBZ2-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TGZ +CPACK_SOURCE_TGZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TXZ +CPACK_SOURCE_TXZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TZ +CPACK_SOURCE_TZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_ZIP +CPACK_SOURCE_ZIP-ADVANCED:INTERNAL=1 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake new file mode 100644 index 0000000..0c0b1de --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCCompiler.cmake @@ -0,0 +1,72 @@ +set(CMAKE_C_COMPILER "/usr/bin/cc") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "GNU") +set(CMAKE_C_COMPILER_VERSION "11.4.0") +set(CMAKE_C_COMPILER_VERSION_INTERNAL "") +set(CMAKE_C_COMPILER_WRAPPER "") +set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23") +set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes") +set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros") +set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert") +set(CMAKE_C17_COMPILE_FEATURES "c_std_17") +set(CMAKE_C23_COMPILE_FEATURES "c_std_23") + +set(CMAKE_C_PLATFORM_ID "Linux") +set(CMAKE_C_SIMULATE_ID "") +set(CMAKE_C_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_C_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-11") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCC 1) +set(CMAKE_C_COMPILER_LOADED 1) +set(CMAKE_C_COMPILER_WORKS TRUE) +set(CMAKE_C_ABI_COMPILED TRUE) + +set(CMAKE_C_COMPILER_ENV_VAR "CC") + +set(CMAKE_C_COMPILER_ID_RUN 1) +set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) +set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_C_LINKER_PREFERENCE 10) + +# Save compiler ABI information. +set(CMAKE_C_SIZEOF_DATA_PTR "8") +set(CMAKE_C_COMPILER_ABI "ELF") +set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_C_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") + +if(CMAKE_C_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_C_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") +endif() + +if(CMAKE_C_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") +endif() + +set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include") +set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s") +set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..f59b84f --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake @@ -0,0 +1,83 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "11.4.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-11") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "aarch64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/11;/usr/include/aarch64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin new file mode 100644 index 0000000000000000000000000000000000000000..dfdc241f48036b01323e7889d7e41cfab5b12a27 GIT binary patch literal 9024 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 se?c7J`^pwP>W{8VPG8h_ul|e(JnJ*A{i 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 J5oGGs{};RSnOy(? literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake new file mode 100644 index 0000000..e7ba5ca --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-5.10.0+") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "5.10.0+") +set(CMAKE_HOST_SYSTEM_PROCESSOR "aarch64") + + + +set(CMAKE_SYSTEM "Linux-5.10.0+") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "5.10.0+") +set(CMAKE_SYSTEM_PROCESSOR "aarch64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c new file mode 100644 index 0000000..41b99d7 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c @@ -0,0 +1,803 @@ +#ifdef __cplusplus +# error "A C++ compiler has been selected for C." +#endif + +#if defined(__18CXX) +# define ID_VOID_MAIN +#endif +#if defined(__CLASSIC_C__) +/* cv-qualifiers did not exist in K&R C */ +# define const +# define volatile +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_C) +# define COMPILER_ID "SunPro" +# if __SUNPRO_C >= 0x5100 + /* __SUNPRO_C = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# endif + +#elif defined(__HP_cc) +# define COMPILER_ID "HP" + /* __HP_cc = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) + +#elif defined(__DECC) +# define COMPILER_ID "Compaq" + /* __DECC_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) + +#elif defined(__IBMC__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TINYC__) +# define COMPILER_ID "TinyCC" + +#elif defined(__BCC__) +# define COMPILER_ID "Bruce" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + +#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC) +# define COMPILER_ID "SDCC" +# if defined(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR) +# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH) +# else + /* SDCC = VRP */ +# define COMPILER_VERSION_MAJOR DEC(SDCC/100) +# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) +# define COMPILER_VERSION_PATCH DEC(SDCC % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if !defined(__STDC__) && !defined(__clang__) +# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) +# define C_VERSION "90" +# else +# define C_VERSION +# endif +#elif __STDC_VERSION__ > 201710L +# define C_VERSION "23" +#elif __STDC_VERSION__ >= 201710L +# define C_VERSION "17" +#elif __STDC_VERSION__ >= 201000L +# define C_VERSION "11" +#elif __STDC_VERSION__ >= 199901L +# define C_VERSION "99" +#else +# define C_VERSION "90" +#endif +const char* info_language_standard_default = + "INFO" ":" "standard_default[" C_VERSION "]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +# if defined(__CLASSIC_C__) +int main(argc, argv) int argc; char *argv[]; +# else +int main(int argc, char* argv[]) +# endif +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out new file mode 100644 index 0000000000000000000000000000000000000000..e8a72558d96dcc6624712e8c2160f02c6c9e0f9f GIT binary patch literal 9168 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 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out new file mode 100644 index 0000000000000000000000000000000000000000..47c74a11ebba8f57647130a4389f88befac42ec5 GIT binary patch literal 9176 zcmeHNYiwLc6+XM`wodbKTtZq%NH&ij;gO9ULh6>%tY2}A94DkMDn#Y_+Pn5{yWX{S z?-nOP#DyYJwM90KsHs%2pg-IKQjtPQq^hJLZOOKC{EN?Nc4xR7LPUCb%y%Ah?#!9FGsiyO-M2R!3K2?#eo4}ryw)OdWt?5F6((_NqhXEJ2TNISc+t^?6b!MgI z&#bf-L1)#EIi=8(rs&P7-kj=zE~sOmct3eJc?Q&8kajUo3aH3RIryfRkb2iL)2yMl zS(ref_XXC|DN~6nlhw*Tr2Q>5E-CdN6!WknlOEcUNo>!gv&D(+uA3iD?cNnDm%RVkjX)J)^exS7R84f>R8>!ShNl<+MDa(3C5yzaFMNNzp#WnInMBe>x`tcZYF&+ z$xR;UVW;4^dCwVh(^+zda(RygmEqn^J$=0$ozBi!>&=zwr+1OlJFwqLB=gD9biqsJ z2ljVna@pj7JCqTdqhq$d$ELr>VHcsDik&p=FnvyS zvA!Z2s8c$@v$~Fe#}!{_vhxG{gyM}lZ@|%B9l)n_0p1kA=M|3z@QaFX3*e2q{#pX~ zHpS1XpCNuPeKqsO^FG`kf`9el{&jlMhpQ{b&NGUK*|@9=lv6(3Z~u%B_uGHjhhuGt zt&P#hA1@#K)l-)vH2o=}6PJ&@Fn1>6ytcsD6wy@kYdxjaKe~N78s7Mt$l@`)KQZq` z%QNlQxqZRczQFD99;0jcZ*hCGZR0&a#qP&w^7k9~c{4&!pO3^#7q-y!TkO{)`#~3b zN)hHY@N>Rge(Y_24E|nEDNc0qjdJ-$@f-dz?-`n>>HC>(V!DUuZ)bQL=JwR4w|h!1 z>nub3Xd`rUjJojxC-Qh6htHu`az4pF=`-!yqTO7swag>Pa0C+0WCPxCIhd>(RxSC=F9 zEi}7%+Sp1Bw$-&Wdv!a;uQOMd6Ce4VrZG>5JH#CO!@EmZ2=(^wJ#g!AZfrcAN#+mp zm*H*$SL4oo$$TN5%N}kqrL{F?D=oWFX;C$+H=c35kz9W4aG!jw49oN*U#-Jd(zJP( z%_iJ@f;Y|)x0vw`x87W3CpqCIv(j;)B5|PqZVIi7e723Rq1zg&KX=|QG1FYkaoUJ=?bMd=j!!@#`O^K5#{6jg?kjv7#~$W z&SC4d4gTNXFXsfBvD6{i|%>kHrnd+p&4y7PVJi*ERsd#Y{A-2(T2KR3c>0^FOc@d!<5+*RWZm3XbjuOY-~HGVB2 zo~!Ze2=iQxHxlBb8ec|;!)pBcO1xI%OWjXb5azX7eq|*eQ;n~xtoLfXiN1|M_c0>; zJ9~XXvZlpH7 zcU8+{H7}ylTLZmQUPNrozD{kN$i6AJS;S9N71~}de2Kt4auLa^{*A?xoq*nrV_#+{5^4UtB?Jg7M90_~@+4#{+i0Yw)!-`_=auzad<^ zPJg(Bou8>xc9wh@U?_|8McEke_xw< z7Lfk}zJ+lax8OMZ-1NJ+e@dK5*`{_7&#<$52|Kqd9^C&w&-e|zei7&9j>`5Ah`+#9kk8`Y;Zo(D$Rzb0hcom#wx*kk;b2bc3h8x zYmRMM8$6&CR<@BvUFa5mp}zVTpQ+s8p?^v%pl4N1j)QWS zhdxf|UsN3WxMzVPPoQRM#_uc4kUKc^aUTQ4HxB+o4)k8umpeV$xVKfPb}atOJi~v5 z=_prZOrbxh0}P5h1Nw(P-v0sB?@)utTYwHKF8Y!i3F?1`G4Tt>ZRB}C(GQE5qVAzd z4|2_~k9#HPU`5haBq!`IC%EC)pHxRc7li36abI1kkMrZ#M_vkaO+Y^A|E%g`{Bdpp zeJ-Gn@dG>;(8s+O^fm}84fg+RKp*#G&?f`>!T!%MU()B5JeS^!@pty1JldeYW!)y9 zKJMGIn&^WZimwb!7f3{_FXCMx5f3vZV40ebBd< zL3!!RU+lewsKpO*9r~XP;L!I|#GYR?rTxF6 q4oDuglOOnlbt(5L`0m$l)5PqP0psWwvdv5ApVJS|KOv|zsQ+)$W7-S= literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..4f6b313 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeOutput.log b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeOutput.log new file mode 100644 index 0000000..39a334a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeOutput.log @@ -0,0 +1,437 @@ +The system is: Linux - 5.10.0+ - aarch64 +Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. +Compiler: /usr/bin/cc +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" + +The C compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdC/a.out" + +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/3.22.1/CompilerIdCXX/a.out" + +Detecting C compiler ABI info compiled with the following output: +Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_af73b/fast && /usr/bin/gmake -f CMakeFiles/cmTC_af73b.dir/build.make CMakeFiles/cmTC_af73b.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o +/usr/bin/cc -v -o CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_af73b.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_af73b.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/cc1FQT7O.s +GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/lib/gcc/aarch64-linux-gnu/11/include + /usr/local/include + /usr/include/aarch64-linux-gnu + /usr/include +End of search list. +GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_af73b.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o /tmp/cc1FQT7O.s +GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.' +Linking C executable cmTC_af73b +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_af73b.dir/link.txt --verbose=1 +/usr/bin/cc -v CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o -o cmTC_af73b +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_af73b' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_af73b.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccTGgXoc.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_af73b /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_af73b' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_af73b.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp' + + + +Parsed C implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/lib/gcc/aarch64-linux-gnu/11/include] + add: [/usr/local/include] + add: [/usr/include/aarch64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/lib/gcc/aarch64-linux-gnu/11/include] ==> [/usr/lib/gcc/aarch64-linux-gnu/11/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/aarch64-linux-gnu] ==> [/usr/include/aarch64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include] + + +Parsed C implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_af73b/fast && /usr/bin/gmake -f CMakeFiles/cmTC_af73b.dir/build.make CMakeFiles/cmTC_af73b.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp'] + ignore line: [Building C object CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_af73b.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_af73b.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/cc1FQT7O.s] + ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/aarch64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_af73b.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o /tmp/cc1FQT7O.s] + ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.'] + ignore line: [Linking C executable cmTC_af73b] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_af73b.dir/link.txt --verbose=1] + ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o -o cmTC_af73b ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_af73b' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_af73b.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccTGgXoc.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_af73b /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccTGgXoc.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib/ld-linux-aarch64.so.1] ==> ignore + arg [-X] ==> ignore + arg [-EL] ==> ignore + arg [-maarch64linux] ==> ignore + arg [--fix-cortex-a53-843419] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_af73b] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] + arg [-L/lib/aarch64-linux-gnu] ==> dir [/lib/aarch64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] + arg [CMakeFiles/cmTC_af73b.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [-lc] ==> lib [c] + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> [/usr/lib/aarch64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> [/usr/lib/aarch64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> [/usr/lib/aarch64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11] ==> [/usr/lib/gcc/aarch64-linux-gnu/11] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/aarch64-linux-gnu] ==> [/lib/aarch64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> [/usr/lib] + implicit libs: [gcc;gcc_s;c;gcc;gcc_s] + implicit objs: [/usr/lib/aarch64-linux-gnu/Scrt1.o;/usr/lib/aarch64-linux-gnu/crti.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o;/usr/lib/aarch64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib] + implicit fwks: [] + + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1ce61/fast && /usr/bin/gmake -f CMakeFiles/cmTC_1ce61.dir/build.make CMakeFiles/cmTC_1ce61.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -v -o CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_1ce61.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_1ce61.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccAe87gD.s +GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring duplicate directory "/usr/include/aarch64-linux-gnu/c++/11" +ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/include/c++/11 + /usr/include/aarch64-linux-gnu/c++/11 + /usr/include/c++/11/backward + /usr/lib/gcc/aarch64-linux-gnu/11/include + /usr/local/include + /usr/include/aarch64-linux-gnu + /usr/include +End of search list. +GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) + compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 3e6e780af1232722b47e0979fda82402 +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_1ce61.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccAe87gD.s +GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.' +Linking CXX executable cmTC_1ce61 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1ce61.dir/link.txt --verbose=1 +/usr/bin/c++ -v CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_1ce61 +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper +Target: aarch64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) +COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_1ce61' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_1ce61.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccGEzyzc.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_1ce61 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_1ce61' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_1ce61.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp' + + + +Parsed CXX implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/include/c++/11] + add: [/usr/include/aarch64-linux-gnu/c++/11] + add: [/usr/include/c++/11/backward] + add: [/usr/lib/gcc/aarch64-linux-gnu/11/include] + add: [/usr/local/include] + add: [/usr/include/aarch64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/include/c++/11] ==> [/usr/include/c++/11] + collapse include dir [/usr/include/aarch64-linux-gnu/c++/11] ==> [/usr/include/aarch64-linux-gnu/c++/11] + collapse include dir [/usr/include/c++/11/backward] ==> [/usr/include/c++/11/backward] + collapse include dir [/usr/lib/gcc/aarch64-linux-gnu/11/include] ==> [/usr/lib/gcc/aarch64-linux-gnu/11/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/aarch64-linux-gnu] ==> [/usr/include/aarch64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/include/c++/11;/usr/include/aarch64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/aarch64-linux-gnu/11/include;/usr/local/include;/usr/include/aarch64-linux-gnu;/usr/include] + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1ce61/fast && /usr/bin/gmake -f CMakeFiles/cmTC_1ce61.dir/build.make CMakeFiles/cmTC_1ce61.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_1ce61.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_1ce61.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccAe87gD.s] + ignore line: [GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring duplicate directory "/usr/include/aarch64-linux-gnu/c++/11"] + ignore line: [ignoring nonexistent directory "/usr/local/include/aarch64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/aarch64-linux-gnu/11/../../../../aarch64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/include/c++/11] + ignore line: [ /usr/include/aarch64-linux-gnu/c++/11] + ignore line: [ /usr/include/c++/11/backward] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/aarch64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] + ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 3e6e780af1232722b47e0979fda82402] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_1ce61.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccAe87gD.s] + ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.'] + ignore line: [Linking CXX executable cmTC_1ce61] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1ce61.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_1ce61 ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] + ignore line: [Target: aarch64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_1ce61' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_1ce61.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccGEzyzc.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_1ce61 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccGEzyzc.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib/ld-linux-aarch64.so.1] ==> ignore + arg [-X] ==> ignore + arg [-EL] ==> ignore + arg [-maarch64linux] ==> ignore + arg [--fix-cortex-a53-843419] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_1ce61] ==> ignore + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] + arg [-L/lib/aarch64-linux-gnu] ==> dir [/lib/aarch64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] + arg [CMakeFiles/cmTC_1ce61.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o] + arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> [/usr/lib/aarch64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> [/usr/lib/aarch64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] ==> [/usr/lib/aarch64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11] ==> [/usr/lib/gcc/aarch64-linux-gnu/11] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/aarch64-linux-gnu] ==> [/lib/aarch64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/aarch64-linux-gnu] ==> [/usr/lib/aarch64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit objs: [/usr/lib/aarch64-linux-gnu/Scrt1.o;/usr/lib/aarch64-linux-gnu/crti.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o;/usr/lib/aarch64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/aarch64-linux-gnu/11;/usr/lib/aarch64-linux-gnu;/usr/lib;/lib/aarch64-linux-gnu;/lib] + implicit fwks: [] + + diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeRuleHashes.txt b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeRuleHashes.txt new file mode 100644 index 0000000..766786a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/CMakeRuleHashes.txt @@ -0,0 +1,33 @@ +# Hashes of file build rules. +b1cce43d8efd1e75300d47ec674b8a23 CMakeFiles/gen_version_info +388b5cf5135753da6115c0ecb7a82e4c CMakeFiles/modify_vendor +f97c1cf546a41507cc199e45e185b14b op_host/CMakeFiles/optiling_compat +3270997c92bc0069a36461762d15808b op_kernel/CMakeFiles/ascendc_bin_ascend310b +a40fdd7333d6f14935a3f93e6faaf9ed op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0 +ca3113c48eaff53a370fc271db6a2e56 op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy +aa0db98a0b892869f3cd44074f5d0d57 op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config +ac18dd1ea362dd30644251dff9361ec1 op_kernel/CMakeFiles/ascendc_bin_ascend310p +994aca57582a696193255de1d8c6fa5d op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0 +537609957df9eace75990d1929571cb8 op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy +87a67a55f430c24b8379c04861ff85df op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config +bd0d9d8c64ac7c7dc8ab30e44f7b6ad6 op_kernel/CMakeFiles/ascendc_bin_ascend910 +e712ce90dc7b7a955e387128ff41822b op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0 +503a715071282da85c2bbb6bcc85ff0a op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy +1c00ef039ce5361c5640a208d3c97a64 op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config +0ded3a778940e0a62a2c522d9a22b6d8 op_kernel/CMakeFiles/ascendc_bin_ascend910b +dc0d27e392520d56144f02baa79eadfe op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0 +a4ba6367bb4187dc5e462050b19c5d5f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy +2dd77d54cb1e1bef7d759df91ce126bc op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config +633620144a2c22db8e6fef9430d81eb4 op_kernel/CMakeFiles/ascendc_impl_gen +633620144a2c22db8e6fef9430d81eb4 op_kernel/CMakeFiles/npu_supported_ops +633620144a2c22db8e6fef9430d81eb4 op_kernel/CMakeFiles/ops_info_gen_ascend310b +633620144a2c22db8e6fef9430d81eb4 op_kernel/CMakeFiles/ops_info_gen_ascend310p +633620144a2c22db8e6fef9430d81eb4 op_kernel/CMakeFiles/ops_info_gen_ascend910 +633620144a2c22db8e6fef9430d81eb4 op_kernel/CMakeFiles/ops_info_gen_ascend910b +fa38fc4d2b07363695d5561003607d49 op_kernel/tbe/.impl_timestamp +c3f3774a95f7284e679fed7d5ab170fa op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json +79495c2f3e6aa9bf3afa1aea4b288f17 op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json +a795a73353c90d315186170c80ccf636 op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json +093369e87d79739e264a844bf30d785b op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json +9aca85b7344de7bda9886033e0dcc0e0 op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json +35c9fb3305e491035e11eb6a77ada2dc scripts/install.sh diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..7ec716a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile.cmake @@ -0,0 +1,167 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "../CMakeLists.txt" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "../cmake/config.cmake" + "../cmake/func.cmake" + "../cmake/intf.cmake" + "../framework/CMakeLists.txt" + "../framework/tf_plugin/CMakeLists.txt" + "../op_host/CMakeLists.txt" + "../op_kernel/CMakeLists.txt" + "/usr/share/cmake-3.22/Modules/CMakeCCompiler.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c" + "/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCXXCompiler.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp" + "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCompilerIdDetection.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCXXCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompileFeatures.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerABI.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerId.cmake" + "/usr/share/cmake-3.22/Modules/CMakeDetermineSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeFindBinUtils.cmake" + "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseImplicitIncludeInfo.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseImplicitLinkInfo.cmake" + "/usr/share/cmake-3.22/Modules/CMakeParseLibraryArchitecture.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystem.cmake.in" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCXXCompiler.cmake" + "/usr/share/cmake-3.22/Modules/CMakeTestCompilerCommon.cmake" + "/usr/share/cmake-3.22/Modules/CMakeUnixFindMake.cmake" + "/usr/share/cmake-3.22/Modules/CPack.cmake" + "/usr/share/cmake-3.22/Modules/CPackComponent.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/ARMClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Bruce-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Compaq-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-FindBinUtils.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/HP-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/NVHPC-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SDCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SunPro-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/TI-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XL-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XLClang-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/zOS-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.22/Modules/Internal/FeatureTesting.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-Determine-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake" + "/usr/share/cmake-3.22/Templates/CPackConfig.cmake.in" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCCompiler.cmake" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CPackConfig.cmake" + "CPackSourceConfig.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + "framework/CMakeFiles/CMakeDirectoryInformation.cmake" + "framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake" + "op_host/CMakeFiles/CMakeDirectoryInformation.cmake" + "op_kernel/CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/modify_vendor.dir/DependInfo.cmake" + "CMakeFiles/gen_version_info.dir/DependInfo.cmake" + "framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake" + "op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake" + "op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake" + "op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake" + "op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_impl_gen.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/binary.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/DependInfo.cmake" + "op_kernel/CMakeFiles/npu_supported_ops.dir/DependInfo.cmake" + ) diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile2 b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile2 new file mode 100644 index 0000000..38bc57a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/Makefile2 @@ -0,0 +1,976 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: CMakeFiles/modify_vendor.dir/all +all: CMakeFiles/gen_version_info.dir/all +all: framework/all +all: op_host/all +all: op_kernel/all +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: framework/preinstall +preinstall: op_host/preinstall +preinstall: op_kernel/preinstall +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/modify_vendor.dir/clean +clean: CMakeFiles/gen_version_info.dir/clean +clean: framework/clean +clean: op_host/clean +clean: op_kernel/clean +.PHONY : clean + +#============================================================================= +# Directory level rules for directory framework + +# Recursive "all" directory target. +framework/all: framework/tf_plugin/all +.PHONY : framework/all + +# Recursive "preinstall" directory target. +framework/preinstall: framework/tf_plugin/preinstall +.PHONY : framework/preinstall + +# Recursive "clean" directory target. +framework/clean: framework/tf_plugin/clean +.PHONY : framework/clean + +#============================================================================= +# Directory level rules for directory framework/tf_plugin + +# Recursive "all" directory target. +framework/tf_plugin/all: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all +.PHONY : framework/tf_plugin/all + +# Recursive "preinstall" directory target. +framework/tf_plugin/preinstall: +.PHONY : framework/tf_plugin/preinstall + +# Recursive "clean" directory target. +framework/tf_plugin/clean: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean +.PHONY : framework/tf_plugin/clean + +#============================================================================= +# Directory level rules for directory op_host + +# Recursive "all" directory target. +op_host/all: op_host/CMakeFiles/cust_op_proto.dir/all +op_host/all: op_host/CMakeFiles/cust_optiling.dir/all +op_host/all: op_host/CMakeFiles/cust_opapi.dir/all +op_host/all: op_host/CMakeFiles/optiling_compat.dir/all +.PHONY : op_host/all + +# Recursive "preinstall" directory target. +op_host/preinstall: +.PHONY : op_host/preinstall + +# Recursive "clean" directory target. +op_host/clean: op_host/CMakeFiles/cust_op_proto.dir/clean +op_host/clean: op_host/CMakeFiles/cust_optiling.dir/clean +op_host/clean: op_host/CMakeFiles/cust_opapi.dir/clean +op_host/clean: op_host/CMakeFiles/optiling_compat.dir/clean +.PHONY : op_host/clean + +#============================================================================= +# Directory level rules for directory op_kernel + +# Recursive "all" directory target. +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all +op_kernel/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all +op_kernel/all: op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all +op_kernel/all: op_kernel/CMakeFiles/npu_supported_ops.dir/all +.PHONY : op_kernel/all + +# Recursive "preinstall" directory target. +op_kernel/preinstall: +.PHONY : op_kernel/preinstall + +# Recursive "clean" directory target. +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/binary.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean +op_kernel/clean: op_kernel/CMakeFiles/npu_supported_ops.dir/clean +.PHONY : op_kernel/clean + +#============================================================================= +# Target rules for target CMakeFiles/modify_vendor.dir + +# All Build rule for target. +CMakeFiles/modify_vendor.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=11 "Built target modify_vendor" +.PHONY : CMakeFiles/modify_vendor.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/modify_vendor.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/modify_vendor.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : CMakeFiles/modify_vendor.dir/rule + +# Convenience name for target. +modify_vendor: CMakeFiles/modify_vendor.dir/rule +.PHONY : modify_vendor + +# clean rule for target. +CMakeFiles/modify_vendor.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/clean +.PHONY : CMakeFiles/modify_vendor.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/gen_version_info.dir + +# All Build rule for target. +CMakeFiles/gen_version_info.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target gen_version_info" +.PHONY : CMakeFiles/gen_version_info.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/gen_version_info.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/gen_version_info.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : CMakeFiles/gen_version_info.dir/rule + +# Convenience name for target. +gen_version_info: CMakeFiles/gen_version_info.dir/rule +.PHONY : gen_version_info + +# clean rule for target. +CMakeFiles/gen_version_info.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/clean +.PHONY : CMakeFiles/gen_version_info.dir/clean + +#============================================================================= +# Target rules for target framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir + +# All Build rule for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all: + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=9,10 "Built target cust_tf_parsers" +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all + +# Build rule for subdir invocation for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule + +# Convenience name for target. +cust_tf_parsers: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule +.PHONY : cust_tf_parsers + +# clean rule for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean: + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/cust_op_proto.dir + +# All Build rule for target. +op_host/CMakeFiles/cust_op_proto.dir/all: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=2,3,4 "Built target cust_op_proto" +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/cust_op_proto.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 3 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_op_proto.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/rule + +# Convenience name for target. +cust_op_proto: op_host/CMakeFiles/cust_op_proto.dir/rule +.PHONY : cust_op_proto + +# clean rule for target. +op_host/CMakeFiles/cust_op_proto.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/clean +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/cust_optiling.dir + +# All Build rule for target. +op_host/CMakeFiles/cust_optiling.dir/all: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=7,8 "Built target cust_optiling" +.PHONY : op_host/CMakeFiles/cust_optiling.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/cust_optiling.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_optiling.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/cust_optiling.dir/rule + +# Convenience name for target. +cust_optiling: op_host/CMakeFiles/cust_optiling.dir/rule +.PHONY : cust_optiling + +# clean rule for target. +op_host/CMakeFiles/cust_optiling.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/clean +.PHONY : op_host/CMakeFiles/cust_optiling.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/cust_opapi.dir + +# All Build rule for target. +op_host/CMakeFiles/cust_opapi.dir/all: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=5,6 "Built target cust_opapi" +.PHONY : op_host/CMakeFiles/cust_opapi.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/cust_opapi.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_opapi.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/cust_opapi.dir/rule + +# Convenience name for target. +cust_opapi: op_host/CMakeFiles/cust_opapi.dir/rule +.PHONY : cust_opapi + +# clean rule for target. +op_host/CMakeFiles/cust_opapi.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/clean +.PHONY : op_host/CMakeFiles/cust_opapi.dir/clean + +#============================================================================= +# Target rules for target op_host/CMakeFiles/optiling_compat.dir + +# All Build rule for target. +op_host/CMakeFiles/optiling_compat.dir/all: op_host/CMakeFiles/cust_optiling.dir/all + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/depend + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target optiling_compat" +.PHONY : op_host/CMakeFiles/optiling_compat.dir/all + +# Build rule for subdir invocation for target. +op_host/CMakeFiles/optiling_compat.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/optiling_compat.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_host/CMakeFiles/optiling_compat.dir/rule + +# Convenience name for target. +optiling_compat: op_host/CMakeFiles/optiling_compat.dir/rule +.PHONY : optiling_compat + +# clean rule for target. +op_host/CMakeFiles/optiling_compat.dir/clean: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/clean +.PHONY : op_host/CMakeFiles/optiling_compat.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=14 "Built target ops_info_gen_ascend310p" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/rule + +# Convenience name for target. +ops_info_gen_ascend310p: op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/rule +.PHONY : ops_info_gen_ascend310p + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_impl_gen.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_impl_gen.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=1 "Built target ascendc_impl_gen" +.PHONY : op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_impl_gen.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_impl_gen.dir/rule + +# Convenience name for target. +ascendc_impl_gen: op_kernel/CMakeFiles/ascendc_impl_gen.dir/rule +.PHONY : ascendc_impl_gen + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_impl_gen.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/binary.dir + +# All Build rule for target. +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all +op_kernel/CMakeFiles/binary.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target binary" +.PHONY : op_kernel/CMakeFiles/binary.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/binary.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/binary.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/binary.dir/rule + +# Convenience name for target. +binary: op_kernel/CMakeFiles/binary.dir/rule +.PHONY : binary + +# clean rule for target. +op_kernel/CMakeFiles/binary.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/clean +.PHONY : op_kernel/CMakeFiles/binary.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p: op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/rule +.PHONY : ascendc_bin_ascend310p + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend310p_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend310p_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310p_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310p_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend310p_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=13 "Built target ops_info_gen_ascend310b" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/rule + +# Convenience name for target. +ops_info_gen_ascend310b: op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/rule +.PHONY : ops_info_gen_ascend310b + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b: op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/rule +.PHONY : ascendc_bin_ascend310b + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend310b_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend310b_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend310b_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend310b_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend310b_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend910.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=15 "Built target ops_info_gen_ascend910" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/rule + +# Convenience name for target. +ops_info_gen_ascend910: op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/rule +.PHONY : ops_info_gen_ascend910 + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910: op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/rule +.PHONY : ascendc_bin_ascend910 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend910_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend910_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend910_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=16 "Built target ops_info_gen_ascend910b" +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/rule + +# Convenience name for target. +ops_info_gen_ascend910b: op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/rule +.PHONY : ops_info_gen_ascend910b + +# clean rule for target. +op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean +.PHONY : op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all: op_kernel/CMakeFiles/ascendc_impl_gen.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b: op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/rule +.PHONY : ascendc_bin_ascend910b + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b_gen_ops_config" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b_gen_ops_config: op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/rule +.PHONY : ascendc_bin_ascend910b_gen_ops_config + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b_add_custom_copy" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b_add_custom_copy: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/rule +.PHONY : ascendc_bin_ascend910b_add_custom_copy + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir + +# All Build rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/all +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/all + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num= "Built target ascendc_bin_ascend910b_add_custom_0" +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/rule + +# Convenience name for target. +ascendc_bin_ascend910b_add_custom_0: op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/rule +.PHONY : ascendc_bin_ascend910b_add_custom_0 + +# clean rule for target. +op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean +.PHONY : op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/clean + +#============================================================================= +# Target rules for target op_kernel/CMakeFiles/npu_supported_ops.dir + +# All Build rule for target. +op_kernel/CMakeFiles/npu_supported_ops.dir/all: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/depend + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=12 "Built target npu_supported_ops" +.PHONY : op_kernel/CMakeFiles/npu_supported_ops.dir/all + +# Build rule for subdir invocation for target. +op_kernel/CMakeFiles/npu_supported_ops.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 1 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_kernel/CMakeFiles/npu_supported_ops.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : op_kernel/CMakeFiles/npu_supported_ops.dir/rule + +# Convenience name for target. +npu_supported_ops: op_kernel/CMakeFiles/npu_supported_ops.dir/rule +.PHONY : npu_supported_ops + +# clean rule for target. +op_kernel/CMakeFiles/npu_supported_ops.dir/clean: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/clean +.PHONY : op_kernel/CMakeFiles/npu_supported_ops.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/TargetDirectories.txt b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..01ab3a4 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,70 @@ +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_impl_gen.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/binary.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/npu_supported_ops.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/package.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/package_source.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/CMakeFiles/install/strip.dir diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/cmake.check_cache b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake new file mode 100644 index 0000000..dc55e44 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake @@ -0,0 +1,18 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/build.make b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/build.make new file mode 100644 index 0000000..b664bca --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/build.make @@ -0,0 +1,87 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +# Utility rule file for gen_version_info. + +# Include any custom commands dependencies for this target. +include CMakeFiles/gen_version_info.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/gen_version_info.dir/progress.make + +CMakeFiles/gen_version_info: + bash /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/cmake/util/gen_version_info.sh /usr/local/Ascend/ascend-toolkit/latest /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +gen_version_info: CMakeFiles/gen_version_info +gen_version_info: CMakeFiles/gen_version_info.dir/build.make +.PHONY : gen_version_info + +# Rule to build all files generated by this target. +CMakeFiles/gen_version_info.dir/build: gen_version_info +.PHONY : CMakeFiles/gen_version_info.dir/build + +CMakeFiles/gen_version_info.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/gen_version_info.dir/cmake_clean.cmake +.PHONY : CMakeFiles/gen_version_info.dir/clean + +CMakeFiles/gen_version_info.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/gen_version_info.dir/depend + diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake new file mode 100644 index 0000000..4183a83 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/cmake_clean.cmake @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/gen_version_info" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/gen_version_info.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make new file mode 100644 index 0000000..9406130 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for gen_version_info. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts new file mode 100644 index 0000000..714ce8f --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for gen_version_info. diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/gen_version_info.dir/progress.make @@ -0,0 +1 @@ + diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake new file mode 100644 index 0000000..8693237 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake @@ -0,0 +1,24 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Pairs of files generated by the same build rule. +set(CMAKE_MULTIPLE_OUTPUT_PAIRS + "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/scripts/upgrade.sh" "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/scripts/install.sh" + ) + + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/build.make b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/build.make new file mode 100644 index 0000000..430b1b7 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/build.make @@ -0,0 +1,98 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +# Utility rule file for modify_vendor. + +# Include any custom commands dependencies for this target. +include CMakeFiles/modify_vendor.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/modify_vendor.dir/progress.make + +CMakeFiles/modify_vendor: scripts/install.sh +CMakeFiles/modify_vendor: scripts/upgrade.sh + +scripts/install.sh: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating scripts/install.sh, scripts/upgrade.sh" + mkdir -p /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/scripts + cp -r /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/scripts/* /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/scripts/ + sed -i s/vendor_name=customize/vendor_name=customize/g /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/scripts/* + +scripts/upgrade.sh: scripts/install.sh + @$(CMAKE_COMMAND) -E touch_nocreate scripts/upgrade.sh + +modify_vendor: CMakeFiles/modify_vendor +modify_vendor: scripts/install.sh +modify_vendor: scripts/upgrade.sh +modify_vendor: CMakeFiles/modify_vendor.dir/build.make +.PHONY : modify_vendor + +# Rule to build all files generated by this target. +CMakeFiles/modify_vendor.dir/build: modify_vendor +.PHONY : CMakeFiles/modify_vendor.dir/build + +CMakeFiles/modify_vendor.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/modify_vendor.dir/cmake_clean.cmake +.PHONY : CMakeFiles/modify_vendor.dir/clean + +CMakeFiles/modify_vendor.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/modify_vendor.dir/depend + diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake new file mode 100644 index 0000000..5632851 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/modify_vendor" + "scripts/install.sh" + "scripts/upgrade.sh" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/modify_vendor.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make new file mode 100644 index 0000000..bda5864 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for modify_vendor. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts new file mode 100644 index 0000000..4290d3f --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for modify_vendor. diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make new file mode 100644 index 0000000..27952ed --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/modify_vendor.dir/progress.make @@ -0,0 +1,2 @@ +CMAKE_PROGRESS_1 = 11 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/progress.marks b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/progress.marks new file mode 100644 index 0000000..b6a7d89 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles/progress.marks @@ -0,0 +1 @@ +16 diff --git a/Increase_Bedore_pipe/No_increase/build_out/CPackConfig.cmake b/Increase_Bedore_pipe/No_increase/build_out/CPackConfig.cmake new file mode 100644 index 0000000..05f63d0 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CPackConfig.cmake @@ -0,0 +1,71 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BUILD_SOURCE_DIRS "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase;/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "opp built using CMake") +set(CPACK_EXTERNAL_BUILT_PACKAGES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run") +set(CPACK_EXTERNAL_ENABLE_STAGING "TRUE") +set(CPACK_EXTERNAL_PACKAGE_SCRIPT "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/cmake/makeself.cmake") +set(CPACK_GENERATOR "External") +set(CPACK_INSTALL_CMAKE_PROJECTS "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out;opp;ALL;/") +set(CPACK_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +set(CPACK_MODULE_PATH "") +set(CPACK_NSIS_DISPLAY_NAME "opp 0.1.1") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "opp 0.1.1") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION "CPack opp project") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack opp project") +set(CPACK_PACKAGE_DIRECTORY "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +set(CPACK_PACKAGE_FILE_NAME "custom_opp_ubuntu_aarch64.run") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "opp 0.1.1") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "opp 0.1.1") +set(CPACK_PACKAGE_NAME "opp") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "0.1.1") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "1") +set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.22/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.22/Templates/CPack.GenericWelcome.txt") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake") +set(CPACK_SOURCE_RPM "OFF") +set(CPACK_SOURCE_TBZ2 "ON") +set(CPACK_SOURCE_TGZ "ON") +set(CPACK_SOURCE_TXZ "ON") +set(CPACK_SOURCE_TZ "ON") +set(CPACK_SOURCE_ZIP "OFF") +set(CPACK_SYSTEM_NAME "Linux") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Linux") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake b/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake new file mode 100644 index 0000000..0f142f5 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake @@ -0,0 +1,79 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BUILD_SOURCE_DIRS "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase;/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "opp built using CMake") +set(CPACK_EXTERNAL_BUILT_PACKAGES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run") +set(CPACK_EXTERNAL_ENABLE_STAGING "TRUE") +set(CPACK_EXTERNAL_PACKAGE_SCRIPT "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/cmake/makeself.cmake") +set(CPACK_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_INSTALLED_DIRECTORIES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase;/") +set(CPACK_INSTALL_CMAKE_PROJECTS "") +set(CPACK_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +set(CPACK_MODULE_PATH "") +set(CPACK_NSIS_DISPLAY_NAME "opp 0.1.1") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "opp 0.1.1") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION "CPack opp project") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack opp project") +set(CPACK_PACKAGE_DIRECTORY "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +set(CPACK_PACKAGE_FILE_NAME "opp-0.1.1-Source") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "opp 0.1.1") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "opp 0.1.1") +set(CPACK_PACKAGE_NAME "opp") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "0.1.1") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "1") +set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.22/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.22/Templates/CPack.GenericWelcome.txt") +set(CPACK_RPM_PACKAGE_SOURCES "ON") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_SOURCE_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_SOURCE_INSTALLED_DIRECTORIES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase;/") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake") +set(CPACK_SOURCE_PACKAGE_FILE_NAME "opp-0.1.1-Source") +set(CPACK_SOURCE_RPM "OFF") +set(CPACK_SOURCE_TBZ2 "ON") +set(CPACK_SOURCE_TGZ "ON") +set(CPACK_SOURCE_TOPLEVEL_TAG "Linux-Source") +set(CPACK_SOURCE_TXZ "ON") +set(CPACK_SOURCE_TZ "ON") +set(CPACK_SOURCE_ZIP "OFF") +set(CPACK_STRIP_FILES "") +set(CPACK_SYSTEM_NAME "Linux") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Linux-Source") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/Increase_Bedore_pipe/No_increase/build_out/Makefile b/Increase_Bedore_pipe/No_increase/build_out/Makefile new file mode 100644 index 0000000..f41ce67 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/Makefile @@ -0,0 +1,631 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named modify_vendor + +# Build rule for target. +modify_vendor: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 modify_vendor +.PHONY : modify_vendor + +# fast build rule for target. +modify_vendor/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/modify_vendor.dir/build.make CMakeFiles/modify_vendor.dir/build +.PHONY : modify_vendor/fast + +#============================================================================= +# Target rules for targets named gen_version_info + +# Build rule for target. +gen_version_info: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 gen_version_info +.PHONY : gen_version_info + +# fast build rule for target. +gen_version_info/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/gen_version_info.dir/build.make CMakeFiles/gen_version_info.dir/build +.PHONY : gen_version_info/fast + +#============================================================================= +# Target rules for targets named cust_tf_parsers + +# Build rule for target. +cust_tf_parsers: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_tf_parsers +.PHONY : cust_tf_parsers + +# fast build rule for target. +cust_tf_parsers/fast: + $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build +.PHONY : cust_tf_parsers/fast + +#============================================================================= +# Target rules for targets named cust_op_proto + +# Build rule for target. +cust_op_proto: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_op_proto +.PHONY : cust_op_proto + +# fast build rule for target. +cust_op_proto/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/build +.PHONY : cust_op_proto/fast + +#============================================================================= +# Target rules for targets named cust_optiling + +# Build rule for target. +cust_optiling: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_optiling +.PHONY : cust_optiling + +# fast build rule for target. +cust_optiling/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/build +.PHONY : cust_optiling/fast + +#============================================================================= +# Target rules for targets named cust_opapi + +# Build rule for target. +cust_opapi: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 cust_opapi +.PHONY : cust_opapi + +# fast build rule for target. +cust_opapi/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/build +.PHONY : cust_opapi/fast + +#============================================================================= +# Target rules for targets named optiling_compat + +# Build rule for target. +optiling_compat: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 optiling_compat +.PHONY : optiling_compat + +# fast build rule for target. +optiling_compat/fast: + $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/build +.PHONY : optiling_compat/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend310p + +# Build rule for target. +ops_info_gen_ascend310p: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend310p +.PHONY : ops_info_gen_ascend310p + +# fast build rule for target. +ops_info_gen_ascend310p/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310p.dir/build +.PHONY : ops_info_gen_ascend310p/fast + +#============================================================================= +# Target rules for targets named ascendc_impl_gen + +# Build rule for target. +ascendc_impl_gen: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_impl_gen +.PHONY : ascendc_impl_gen + +# fast build rule for target. +ascendc_impl_gen/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_impl_gen.dir/build.make op_kernel/CMakeFiles/ascendc_impl_gen.dir/build +.PHONY : ascendc_impl_gen/fast + +#============================================================================= +# Target rules for targets named binary + +# Build rule for target. +binary: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 binary +.PHONY : binary + +# fast build rule for target. +binary/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/binary.dir/build.make op_kernel/CMakeFiles/binary.dir/build +.PHONY : binary/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p + +# Build rule for target. +ascendc_bin_ascend310p: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p +.PHONY : ascendc_bin_ascend310p + +# fast build rule for target. +ascendc_bin_ascend310p/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p.dir/build +.PHONY : ascendc_bin_ascend310p/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend310p_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p_gen_ops_config +.PHONY : ascendc_bin_ascend310p_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend310p_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend310p_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend310p_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p_add_custom_copy +.PHONY : ascendc_bin_ascend310p_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend310p_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend310p_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310p_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend310p_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310p_add_custom_0 +.PHONY : ascendc_bin_ascend310p_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend310p_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310p_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend310p_add_custom_0/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend310b + +# Build rule for target. +ops_info_gen_ascend310b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend310b +.PHONY : ops_info_gen_ascend310b + +# fast build rule for target. +ops_info_gen_ascend310b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend310b.dir/build +.PHONY : ops_info_gen_ascend310b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b + +# Build rule for target. +ascendc_bin_ascend310b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b +.PHONY : ascendc_bin_ascend310b + +# fast build rule for target. +ascendc_bin_ascend310b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b.dir/build +.PHONY : ascendc_bin_ascend310b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend310b_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b_gen_ops_config +.PHONY : ascendc_bin_ascend310b_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend310b_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend310b_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend310b_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b_add_custom_copy +.PHONY : ascendc_bin_ascend310b_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend310b_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend310b_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend310b_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend310b_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend310b_add_custom_0 +.PHONY : ascendc_bin_ascend310b_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend310b_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend310b_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend310b_add_custom_0/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend910 + +# Build rule for target. +ops_info_gen_ascend910: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend910 +.PHONY : ops_info_gen_ascend910 + +# fast build rule for target. +ops_info_gen_ascend910/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910.dir/build +.PHONY : ops_info_gen_ascend910/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910 + +# Build rule for target. +ascendc_bin_ascend910: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910 +.PHONY : ascendc_bin_ascend910 + +# fast build rule for target. +ascendc_bin_ascend910/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910.dir/build +.PHONY : ascendc_bin_ascend910/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend910_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910_gen_ops_config +.PHONY : ascendc_bin_ascend910_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend910_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend910_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend910_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910_add_custom_copy +.PHONY : ascendc_bin_ascend910_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend910_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend910_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend910_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910_add_custom_0 +.PHONY : ascendc_bin_ascend910_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend910_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend910_add_custom_0/fast + +#============================================================================= +# Target rules for targets named ops_info_gen_ascend910b + +# Build rule for target. +ops_info_gen_ascend910b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ops_info_gen_ascend910b +.PHONY : ops_info_gen_ascend910b + +# fast build rule for target. +ops_info_gen_ascend910b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build.make op_kernel/CMakeFiles/ops_info_gen_ascend910b.dir/build +.PHONY : ops_info_gen_ascend910b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b + +# Build rule for target. +ascendc_bin_ascend910b: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b +.PHONY : ascendc_bin_ascend910b + +# fast build rule for target. +ascendc_bin_ascend910b/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b.dir/build +.PHONY : ascendc_bin_ascend910b/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b_gen_ops_config + +# Build rule for target. +ascendc_bin_ascend910b_gen_ops_config: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b_gen_ops_config +.PHONY : ascendc_bin_ascend910b_gen_ops_config + +# fast build rule for target. +ascendc_bin_ascend910b_gen_ops_config/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_gen_ops_config.dir/build +.PHONY : ascendc_bin_ascend910b_gen_ops_config/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b_add_custom_copy + +# Build rule for target. +ascendc_bin_ascend910b_add_custom_copy: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b_add_custom_copy +.PHONY : ascendc_bin_ascend910b_add_custom_copy + +# fast build rule for target. +ascendc_bin_ascend910b_add_custom_copy/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_copy.dir/build +.PHONY : ascendc_bin_ascend910b_add_custom_copy/fast + +#============================================================================= +# Target rules for targets named ascendc_bin_ascend910b_add_custom_0 + +# Build rule for target. +ascendc_bin_ascend910b_add_custom_0: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ascendc_bin_ascend910b_add_custom_0 +.PHONY : ascendc_bin_ascend910b_add_custom_0 + +# fast build rule for target. +ascendc_bin_ascend910b_add_custom_0/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build.make op_kernel/CMakeFiles/ascendc_bin_ascend910b_add_custom_0.dir/build +.PHONY : ascendc_bin_ascend910b_add_custom_0/fast + +#============================================================================= +# Target rules for targets named npu_supported_ops + +# Build rule for target. +npu_supported_ops: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 npu_supported_ops +.PHONY : npu_supported_ops + +# fast build rule for target. +npu_supported_ops/fast: + $(MAKE) $(MAKESILENT) -f op_kernel/CMakeFiles/npu_supported_ops.dir/build.make op_kernel/CMakeFiles/npu_supported_ops.dir/build +.PHONY : npu_supported_ops/fast + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... ascendc_bin_ascend310b" + @echo "... ascendc_bin_ascend310b_add_custom_0" + @echo "... ascendc_bin_ascend310b_add_custom_copy" + @echo "... ascendc_bin_ascend310b_gen_ops_config" + @echo "... ascendc_bin_ascend310p" + @echo "... ascendc_bin_ascend310p_add_custom_0" + @echo "... ascendc_bin_ascend310p_add_custom_copy" + @echo "... ascendc_bin_ascend310p_gen_ops_config" + @echo "... ascendc_bin_ascend910" + @echo "... ascendc_bin_ascend910_add_custom_0" + @echo "... ascendc_bin_ascend910_add_custom_copy" + @echo "... ascendc_bin_ascend910_gen_ops_config" + @echo "... ascendc_bin_ascend910b" + @echo "... ascendc_bin_ascend910b_add_custom_0" + @echo "... ascendc_bin_ascend910b_add_custom_copy" + @echo "... ascendc_bin_ascend910b_gen_ops_config" + @echo "... ascendc_impl_gen" + @echo "... binary" + @echo "... gen_version_info" + @echo "... modify_vendor" + @echo "... npu_supported_ops" + @echo "... ops_info_gen_ascend310b" + @echo "... ops_info_gen_ascend310p" + @echo "... ops_info_gen_ascend910" + @echo "... ops_info_gen_ascend910b" + @echo "... optiling_compat" + @echo "... cust_op_proto" + @echo "... cust_opapi" + @echo "... cust_optiling" + @echo "... cust_tf_parsers" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json new file mode 100644 index 0000000..38aeef0 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run.json @@ -0,0 +1,26 @@ +{ + "componentGroups" : {}, + "components" : {}, + "errorOnAbsoluteInstallDestination" : false, + "formatVersionMajor" : 1, + "formatVersionMinor" : 0, + "installationTypes" : {}, + "packageDescriptionFile" : "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt", + "packageDescriptionSummary" : "CPack opp project", + "packageName" : "opp", + "packageVersion" : "0.1.1", + "projects" : + [ + { + "component" : "ALL", + "components" : [], + "directory" : "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out", + "installationTypes" : [], + "projectName" : "opp", + "subDirectory" : "/" + } + ], + "setDestdir" : false, + "stripFiles" : false, + "warnOnAbsoluteInstallDestination" : false +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run new file mode 100644 index 0000000..75e0d66 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/custom_opp_ubuntu_aarch64.run @@ -0,0 +1,953 @@ +#!/bin/bash +# This script was generated using Makeself 2.4.5 +# The license covering this archive and its contents, if any, is wholly independent of the Makeself license (GPL) +# 2022.3.19-Modified the MS_Help function and some options +# Huawei Technologies Co., Ltd. + +ORIG_UMASK=`umask` + +CRCsum="2149904594" +MD5="00000000000000000000000000000000" +SHA="22a0c049f2277d542e559f98241cc0e440dfbf75423bd78c01101363b97e96e3" +SIGNATURE="" +TMPROOT=${TMPDIR:="$HOME"} +if ! test -d "$TMPROOT"; then + TMPROOT="$PWD" +fi +export TMPDIR="$TMPROOT" +USER_PWD="$PWD" +if ! test -d "$USER_PWD"; then + exit 1 +fi +export USER_PWD +ARCHIVE_DIR=`dirname "$0"` +export ARCHIVE_DIR + +name_of_file="$0 " +pwd_of_file="$PWD" +label="version:1.0" +script="./install.sh" +scriptargs="" +cleanup_script="" +licensetxt="" +helpheader='' +targetdir="makeself-926681-20240525184308" +filesizes="104847" +totalsize="104847" +keep="n" +nooverwrite="n" +quiet="n" +accept="n" +nodiskspace="n" +export_conf="n" +decrypt_cmd="" +skip="671" + +print_cmd_arg="" +if type printf > /dev/null; then + print_cmd="printf" +elif test -x /usr/ucb/echo; then + print_cmd="/usr/ucb/echo" +else + print_cmd="echo" +fi + +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:$PATH + export PATH +fi + +if test -d /usr/sfw/bin; then + PATH=$PATH:/usr/sfw/bin + export PATH +fi + +unset CDPATH + +MS_Printf() +{ + $print_cmd $print_cmd_arg "$1" +} + +MS_PrintLicense() +{ + PAGER=${PAGER:=more} + if test x"$licensetxt" != x; then + PAGER_PATH=`exec <&- 2>&-; which $PAGER || command -v $PAGER || type $PAGER` + if test -x "$PAGER_PATH"; then + echo "$licensetxt" | $PAGER + else + echo "$licensetxt" + fi + if test x"$accept" != xy; then + while true + do + MS_Printf "Please type y to accept, n otherwise: " + read yn + if test x"$yn" = xn; then + keep=n + eval $finish; exit 1 + break; + elif test x"$yn" = xy; then + break; + fi + done + fi + fi +} + +MS_diskspace() +{ + ( + df -kP "$1" | tail -1 | awk '{ if ($4 ~ /%/) {print $3} else {print $4} }' + ) +} + +MS_dd() +{ + blocks=`expr $3 / 1024` + bytes=`expr $3 % 1024` + # Test for ibs, obs and conv feature + if dd if=/dev/zero of=/dev/null count=1 ibs=512 obs=512 conv=sync 2> /dev/null; then + dd if="$1" ibs=$2 skip=1 obs=1024 conv=sync 2> /dev/null | \ + { test $blocks -gt 0 && dd ibs=1024 obs=1024 count=$blocks ; \ + test $bytes -gt 0 && dd ibs=1 obs=1024 count=$bytes ; } 2> /dev/null + else + dd if="$1" bs=$2 skip=1 2> /dev/null + fi +} + +MS_dd_Progress() +{ + if test x"$noprogress" = xy; then + MS_dd "$@" + return $? + fi + file="$1" + offset=$2 + length=$3 + pos=0 + bsize=4194304 + while test $bsize -gt $length; do + bsize=`expr $bsize / 4` + done + blocks=`expr $length / $bsize` + bytes=`expr $length % $bsize` + ( + dd ibs=$offset skip=1 2>/dev/null + pos=`expr $pos \+ $bsize` + MS_Printf " 0%% " 1>&2 + if test $blocks -gt 0; then + while test $pos -le $length; do + dd bs=$bsize count=1 2>/dev/null + pcent=`expr $length / 100` + pcent=`expr $pos / $pcent` + if test $pcent -lt 100; then + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + if test $pcent -lt 10; then + MS_Printf " $pcent%% " 1>&2 + else + MS_Printf " $pcent%% " 1>&2 + fi + fi + pos=`expr $pos \+ $bsize` + done + fi + if test $bytes -gt 0; then + dd bs=$bytes count=1 2>/dev/null + fi + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + MS_Printf " 100%% " 1>&2 + ) < "$file" +} + +MS_Help() +{ + cat << EOH >&2 +Usage: $0 [options] +Options: + --help | -h Print this message + --info Print embedded info : title, default target directory, embedded script ... + --list Print the list of files in the archive + --check Checks integrity and version dependency of the archive + --quiet Quiet install mode, skip human-computer interactions + --nox11 Do not spawn an xterm + --noexec Do not run embedded script + --extract= Extract directly to a target directory (absolute or relative) + Usually used with --noexec to just extract files without running + --tar arg1 [arg2 ...] Access the contents of the archive through the tar command +${helpheader} +EOH +} + +MS_Verify_Sig() +{ + GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + test -x "$GPG_PATH" || GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + test -x "$MKTEMP_PATH" || MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + temp_sig=`mktemp -t XXXXX` + echo $SIGNATURE | base64 --decode > "$temp_sig" + gpg_output=`MS_dd "$1" $offset $totalsize | LC_ALL=C "$GPG_PATH" --verify "$temp_sig" - 2>&1` + gpg_res=$? + rm -f "$temp_sig" + if test $gpg_res -eq 0 && test `echo $gpg_output | grep -c Good` -eq 1; then + if test `echo $gpg_output | grep -c $sig_key` -eq 1; then + test x"$quiet" = xn && echo "GPG signature is good" >&2 + else + echo "GPG Signature key does not match" >&2 + exit 2 + fi + else + test x"$quiet" = xn && echo "GPG signature failed to verify" >&2 + exit 2 + fi +} + +MS_Check() +{ + OLD_PATH="$PATH" + PATH=${GUESS_MD5_PATH:-"$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which md5 || command -v md5 || type md5` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which digest || command -v digest || type digest` + PATH="$OLD_PATH" + + SHA_PATH=`exec <&- 2>&-; which shasum || command -v shasum || type shasum` + test -x "$SHA_PATH" || SHA_PATH=`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum` + + if test x"$quiet" = xn; then + MS_Printf "Verifying archive integrity..." + fi + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + fsize=`cat "$1" | wc -c | tr -d " "` + if test $totalsize -ne `expr $fsize - $offset`; then + echo " Unexpected archive size." >&2 + exit 2 + fi + verb=$2 + i=1 + for s in $filesizes + do + crc=`echo $CRCsum | cut -d" " -f$i` + if test -x "$SHA_PATH"; then + if test x"`basename $SHA_PATH`" = xshasum; then + SHA_ARG="-a 256" + fi + sha=`echo $SHA | cut -d" " -f$i` + if test x"$sha" = x0000000000000000000000000000000000000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded SHA256 checksum." >&2 + else + shasum=`MS_dd_Progress "$1" $offset $s | eval "$SHA_PATH $SHA_ARG" | cut -b-64`; + if test x"$shasum" != x"$sha"; then + echo "Error in SHA256 checksums: $shasum is different from $sha" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " SHA256 checksums are OK." >&2 + fi + crc="0000000000"; + fi + fi + if test -x "$MD5_PATH"; then + if test x"`basename $MD5_PATH`" = xdigest; then + MD5_ARG="-a md5" + fi + md5=`echo $MD5 | cut -d" " -f$i` + if test x"$md5" = x00000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded MD5 checksum." >&2 + else + md5sum=`MS_dd_Progress "$1" $offset $s | eval "$MD5_PATH $MD5_ARG" | cut -b-32`; + if test x"$md5sum" != x"$md5"; then + echo "Error in MD5 checksums: $md5sum is different from $md5" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " MD5 checksums are OK." >&2 + fi + crc="0000000000"; verb=n + fi + fi + if test x"$crc" = x0000000000; then + test x"$verb" = xy && echo " $1 does not contain a CRC checksum." >&2 + else + sum1=`MS_dd_Progress "$1" $offset $s | CMD_ENV=xpg4 cksum | awk '{print $1}'` + if test x"$sum1" != x"$crc"; then + echo "Error in checksums: $sum1 is different from $crc" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " CRC checksums are OK." >&2 + fi + fi + i=`expr $i + 1` + offset=`expr $offset + $s` + done + if test x"$quiet" = xn; then + echo " All good." + fi +} + +MS_Decompress() +{ + if test x"$decrypt_cmd" != x""; then + { eval "$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "gzip -cd" + else + eval "gzip -cd" + fi + + if test $? -ne 0; then + echo " ... Decompression failed." >&2 + fi +} + +UnTAR() +{ + if test x"$quiet" = xn; then + tar $1vf - 2>&1 || { echo " ... Extraction failed." >&2; kill -15 $$; } + else + tar $1f - 2>&1 || { echo Extraction failed. >&2; kill -15 $$; } + fi +} + +MS_exec_cleanup() { + if test x"$cleanup" = xy && test x"$cleanup_script" != x""; then + cleanup=n + cd "$tmpdir" + eval "\"$cleanup_script\" $scriptargs $cleanupargs" + fi +} + +MS_cleanup() +{ + echo 'Signal caught, cleaning up' >&2 + MS_exec_cleanup + cd "$TMPROOT" + rm -rf "$tmpdir" + eval $finish; exit 15 +} + +Script_Args_Check() +{ + script_supported_args=$(echo ${helpheader} | grep -o -E "\-\-[^ ]+" | awk -F"=" {'print $1'}) + arg_to_test=$(echo $1|awk -F"=" {'print $1'}) + + for arg in ${script_supported_args}; + do + if test x"$arg_to_test" = x"$arg" ;then + return + fi + done + + MS_Help + exit 1 +} + +finish=true +xterm_loop= +noprogress=n +nox11=n +copy=none +ownership=n +verbose=n +cleanup=y +cleanupargs= +sig_key= + +initargs="$@" + +while [ -n "$*" ] +do + case "$1" in + -h | --help) + MS_Help + exit 0 + ;; + -q | --quiet) + quiet=y + noprogress=y + shift + ;; + --info) + echo Identification: "$label" + echo Target directory: "$targetdir" + echo Uncompressed size: 300 KB + echo Compression: gzip + if test x"n" != x""; then + echo Encryption: n + fi + echo Date of packaging: Sat May 25 18:43:08 CST 2024 + echo Built with Makeself version 2.4.5 + echo Build command was: "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.sh \\ + \"--header\" \\ + \"/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself-header.sh\" \\ + \"--help-header\" \\ + \"./help.info\" \\ + \"--gzip\" \\ + \"--complevel\" \\ + \"4\" \\ + \"--nomd5\" \\ + \"--sha256\" \\ + \"./\" \\ + \"custom_opp_ubuntu_aarch64.run\" \\ + \"version:1.0\" \\ + \"./install.sh\"" + if test x"$script" != x; then + echo Script run after extraction: + echo " " $script $scriptargs + fi + if test x"" = xcopy; then + echo "Archive will copy itself to a temporary location" + fi + if test x"n" = xy; then + echo "Root permissions required for extraction" + fi + if test x"n" = xy; then + echo "directory $targetdir is permanent" + else + echo "$targetdir will be removed after extraction" + fi + exit 0 + ;; + --list) + echo Target directory: $targetdir + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | UnTAR t + offset=`expr $offset + $s` + done + exit 0 + ;; + --tar) + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + arg1="$2" + shift 2 || { MS_Help; exit 1; } + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | tar "$arg1" - "$@" + offset=`expr $offset + $s` + done + exit 0 + ;; + --check) + MS_Check "$0" y + scriptargs="$scriptargs $1" + shift + ;; + --noexec) + script="" + cleanup_script="" + shift + ;; + --extract=*) + keep=y + targetdir=`echo $1 | cut -d"=" -f2 ` + if ! shift; then MS_Help; exit 1; fi + ;; + --nox11) + nox11=y + shift + ;; + --xwin) + if test "n" = n; then + finish="echo Press Return to close this window...; read junk" + fi + xterm_loop=1 + shift + ;; + --phase2) + copy=phase2 + shift + ;; + --repack | --repack-path=*) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + if [[ ! "$1" =~ ^-.* ]]; then + scriptargs="$scriptargs '$1'" + shift + fi + ;; + *) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + ;; + esac +done + +quiet_para="" +if test x"$quiet" = xy; then + quiet_para="--quiet " +fi +scriptargs="--$name_of_file""--\"$pwd_of_file\""" $quiet_para""$scriptargs" + +if test x"$quiet" = xy -a x"$verbose" = xy; then + echo Cannot be verbose and quiet at the same time. >&2 + exit 1 +fi + +if test x"n" = xy -a `id -u` -ne 0; then + echo "Administrative privileges required for this archive (use su or sudo)" >&2 + exit 1 +fi + +if test x"$copy" \!= xphase2; then + MS_PrintLicense +fi + +case "$copy" in +copy) + tmpdir="$TMPROOT"/makeself.$RANDOM.`date +"%y%m%d%H%M%S"`.$$ + mkdir "$tmpdir" || { + echo "Could not create temporary directory $tmpdir" >&2 + exit 1 + } + SCRIPT_COPY="$tmpdir/makeself" + echo "Copying to a temporary location..." >&2 + cp "$0" "$SCRIPT_COPY" + chmod +x "$SCRIPT_COPY" + cd "$TMPROOT" + exec "$SCRIPT_COPY" --phase2 -- $initargs + ;; +phase2) + finish="$finish ; rm -rf `dirname $0`" + ;; +esac + +if test x"$nox11" = xn; then + if tty -s; then # Do we have a terminal? + : + else + if test x"$DISPLAY" != x -a x"$xterm_loop" = x; then # No, but do we have X? + if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable + GUESS_XTERMS="xterm gnome-terminal rxvt dtterm eterm Eterm xfce4-terminal lxterminal kvt konsole aterm terminology" + for a in $GUESS_XTERMS; do + if type $a >/dev/null 2>&1; then + XTERM=$a + break + fi + done + chmod a+x $0 || echo Please add execution rights on $0 + if test `echo "$0" | cut -c1` = "/"; then # Spawn a terminal! + exec $XTERM -e "$0 --xwin $initargs" + else + exec $XTERM -e "./$0 --xwin $initargs" + fi + fi + fi + fi +fi + +if test x"$targetdir" = x.; then + tmpdir="." +else + if test x"$keep" = xy; then + if test x"$nooverwrite" = xy && test -d "$targetdir"; then + echo "Target directory $targetdir already exists, aborting." >&2 + exit 1 + fi + if test x"$quiet" = xn; then + echo "Creating directory $targetdir" >&2 + fi + tmpdir="$targetdir" + dashp="-p" + else + tmpdir="$TMPROOT/selfgz$$$RANDOM" + dashp="" + fi + mkdir $dashp "$tmpdir" || { + echo 'Cannot create target directory' $tmpdir >&2 + echo 'You should try option --extract=' >&2 + eval $finish + exit 1 + } +fi + +location="`pwd`" +if test x"$SETUP_NOCHECK" != x1; then + MS_Check "$0" +fi +offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + +if test x"$verbose" = xy; then + MS_Printf "About to extract 300 KB in $tmpdir ... Proceed ? [Y/n] " + read yn + if test x"$yn" = xn; then + eval $finish; exit 1 + fi +fi + +if test x"$quiet" = xn; then + # Decrypting with openssl will ask for password, + # the prompt needs to start on new line + if test x"n" = x"openssl"; then + echo "Decrypting and uncompressing $label..." + else + MS_Printf "Uncompressing $label" + fi +fi +res=3 +if test x"$keep" = xn; then + trap MS_cleanup 1 2 3 15 +fi + +if test x"$nodiskspace" = xn; then + leftspace=`MS_diskspace "$tmpdir"` + if test -n "$leftspace"; then + if test "$leftspace" -lt 300; then + echo + echo "Not enough space left in "`dirname $tmpdir`" ($leftspace KB) to decompress $0 (300 KB)" >&2 + if test x"$keep" = xn; then + echo "Consider setting TMPDIR to a directory with more free space." + fi + eval $finish; exit 1 + fi + fi +fi + +for s in $filesizes +do + if MS_dd_Progress "$0" $offset $s | MS_Decompress | ( cd "$tmpdir"; umask $ORIG_UMASK ; UnTAR xp ) 1>/dev/null; then + if test x"$ownership" = xy; then + (cd "$tmpdir"; chown -R `id -u` .; chgrp -R `id -g` .) + fi + else + echo >&2 + echo "Unable to decompress $0" >&2 + eval $finish; exit 1 + fi + offset=`expr $offset + $s` +done +if test x"$quiet" = xn; then + echo +fi + +cd "$tmpdir" +res=0 +if test x"$script" != x; then + if test x"$export_conf" = x"y"; then + MS_BUNDLE="$0" + MS_LABEL="$label" + MS_SCRIPT="$script" + MS_SCRIPTARGS="$scriptargs" + MS_ARCHDIRNAME="$archdirname" + MS_KEEP="$KEEP" + MS_NOOVERWRITE="$NOOVERWRITE" + MS_COMPRESS="$COMPRESS" + MS_CLEANUP="$cleanup" + export MS_BUNDLE MS_LABEL MS_SCRIPT MS_SCRIPTARGS + export MS_ARCHDIRNAME MS_KEEP MS_NOOVERWRITE MS_COMPRESS + fi + + if test x"$verbose" = x"y"; then + yn="x" + while test x"$yn" != x -a x"$yn" != xy -a x"$yn" != xY -a x"$yn" != xn -a x"$yn" != xN + do + MS_Printf "OK to execute: $script $scriptargs $* ? [Y/n] " + read yn + if test x"$yn" = x -o x"$yn" = xy -o x"$yn" = xY; then + eval "\"$script\" $scriptargs \"\$@\""; res=$?; + elif test x"$yn" = xn -o x"$yn" = xN; then + echo "Unable to decompress $script ,because of aborting! ";res=$? + else + echo "Input value is unacceptable,please try again." + fi + done + else + eval "\"$script\" $scriptargs \"\$@\""; res=$? + fi + if test "$res" -ne 0; then + test x"$verbose" = xy && echo "The program '$script' returned an error code ($res)" >&2 + fi +fi + +MS_exec_cleanup + +if test x"$keep" = xn; then + cd "$TMPROOT" + rm -rf "$tmpdir" +fi +eval $finish; exit $res +Qf< pŕZaBm?Y6 Dz슱$_|g;H;zf֒plKAQuQ E T"$rw㒫+'$:8cb: U0g{f?@Ӄׯ_w=r2eI'GHXޚJPْYn!-Z-˖tfYK&Ch:% ؖd8U}sXД4Ԡbt3kي6 bgXwݖ*9v*oij>hE^0t,X%[QSEUۡWtI5K-b7lZ=b#9#S.鱬9C C%Cw{BYXP1zWs>E͵-) ?б~1y,l+T+4ib%QK`.\SيZnr8GEnl%zvWyba!0K]U ۙnWw\mcf +Wig.v dҭƬQMWFВW:U5.ż/HȺjW +#W5B[ZIŮȴ\!bn%_!$mU!tڪt/[P:b2b_xN_Y)lQ_6Ԛ)X˩] {gz /W1|VْNjEoPi[*^+SppV dD@h[U *xL@[ٚC9dC)Mp_ӞSl,BNg'l|= 7´vAluOvmmvcKkwk>~t#w쑯Gs۱oe@4q0OpƎWxŤLV Shu22CKcgı5!2mc'\`ZN Q}^)2@`Ms֧Hg%;%MO|)Y}[D0UzF18IAq=L R}g1܊SCz^wu*F0e?H\G+vށҀM\gQ sjk^Td(,Q˛)P4S +J*o ,@ks2lI~?F_W+fy>}\-sS,8Uw!r! O?j{Djb1aYmb,.C-'iI,bXR]I~ӁYRй-Bw ]=A548.6궚hѲ]q2]iHVmyd.=#,{[PfʺE)h!OT`jh}kZݡd}d]r`=BLY2loŜUMKyʲl1dpCdz $꣺wrU(f|\Mgja]Ājؖ6zW{fC .ƒx1@d >mcʕd+gk\ɯdcEkUyKBd1,ѱ6ֽ7_gJŴf@sc:Sc*Y "vR>?M28.K@7 +0ov :<0s@:O!צ_y +~AeL" +Ԋ֊WXѲlŊו$regk"2FH;/M2m%9?C.x(WUyp= >OQ,rsџॐk L\ɗrkyF +?qp +D^ޣn/=r++RrӄZQBǏ HܟK>y.oKo~9]a*/$5r_e:"^wC'&l"wLΛpq>yL6xy%zD\I&clmđENdjfh^)O4퍎AiGƏ||k@FǑ u?mc=A֏L:g|ְd,?s<߉|/!#=K';_!dDǁtx[:0}0ȝk+u{~^` /1Waہ!g%žiw |0vN{{VyύKvJ>At͙@Ã_lBWg+<x`j*ʭwFc{-܇䱆FCpf`f`f`f`>|P +\x)xV*x)x }Jܓܞ9.?/03?3|)87DT93O8Ks*8gXC=A +;8}c\8ǟ?q=?յ.4X2dt"SW[ZŜLH9$ zr,%KF>0r#Xڬ]@W1|]}FSwT\.cT}TӋzEmuQ6*=Ղ*t7"u.bzA@a yD)X]> B^ Qn%:Xxt!/(E+ [B^cQpP#D#.(O.E[a0N8(JYm9|"n㯑|8s$Ay?<<@AB ˉr $(_}q~r9QnoHP޿9 :=ps-ӄ7 +yOxˇ 3a6 y:q}sޟ&W] yѯ_`bߑ8]@&AySV򟀣&rx+CXk?'!EZ -1<VΟNOXRRD*VI~ٱ0|t&Lzsl̿fܿ$\pz`wVWwT y)򥬞Ri*j6/i:"eyeb,/s3#CuoA,UK0khxSan2$-0̬>D;oؠtn]kpueHU[?V8d|Z)S% bAЎF@pAv!huO;S1NXU&JxF}MONUY3i4sgbA#s9:]=a `- ۙ>il"R]Or% ~ż`Zm6|h<8v~0 1'B~ rj,SZa?͒PpZtTB>v̌KLd"uf۴=m%`p_ʎf`!UفP(g9SvZ As1a덜I6k^ABDR6oojmmCY @,(6P^C[ +qC$,CP1ॻp]HUfE#5 +U!^#TJ.\v'h$b{CNWu@(_q6 @Y8-UW͵z.i-ҎxrnNYa@(t4/+\v ]iN@ު]J }^ԫ^ў(_IJ_eTWE[뾴|D{n aj*F_Bp&pq}Dr;-+q`}Λ>ogR_yc^*j_?WßY΋*߬B_VVS~T[}qchϽͷ GDv%lnl oFS*NrΡ$;'J-R0 2e!39QE'.@B6Ϙv +,,bʈeRJ +s/ +'oP{9{7neP5VoB}&n 0I]ؾ+2e?zQ Az4Kzkg.?uꙷ/s979o%6ܾ ӹ?ADg!oXV߁bX3/ϮmCz3 o 'į1WӋb߁ +?mf?nc_y{¿M1s Iz m]hG{ +8A-b_exW7e7+~K/y7~7qmt:~s + +vӊɔyvOѳPO;AayS<>c>ōTݜSay1|aŃeF|&Tz˒*^AzX̴ħHWH**l K"vѯDZ˗ԯ =߇p= ^[]Oܵx7.Vi6U~bgQ/}52U-oygVYs즞gƞ?e H?P7|_,9x!lO\ rŴh{-sA.dVĞ)zt{wUp5Ws5rd#;&y}wjN4 +';nFd/p9)~ahh3hӔhEG6O6zE!a AX|b$Z1}SɶVE/ +dQ]gbR: BR]gw=dү½.*բخZ_%}٥#8Ҫ>800\ƱxHc4rcN'>86tMN4>ӕgh+(͇t86u+(N'9FR^Q4UoU']i}Aʏ'jS!˿AR~jQql9QatU_9}OzWc%y*!FɩTt$ORqlZ%pl+/c{©Wqlo74_@WñRql zjninBϟz4E6ލfڈg*@|ͭ͛ev{9@0XGFB6g !S&tSpqXcZd^x"+,K1<*KV!rcx8frfnp%XpFd;0ЫoKuT:H#¬@yLtmVW%脑^[YO2Rځ-VT +t'7נPW E#Vco.CI}pO< *(XQklY1/ioiij>Y^·sooij>YʃvHP(yVio +?o5m`v?+5 !u#kh;JFVK鉼3dz̑oE\NcbV4,Qc-q4~Ǵl^' m,ςQC+YF +`'w $]ڣ݉D@rV`'Lh@sffA~|S6oOkf5%;@'O̢OĆ֭ u'HwBI i{bP$W4 +EȈ֪ZH__,:֭ZSI ~H'ϖs)baMJl km舺sx i\ĎvpN<{5Evo,ٶirH +d4bȰaoϙ\O)1 iH2چДZZ7:rM![0"B!? km aGFsfzo,mM qB!_떭'ï~=}9 LF^ 'O:!o? _-@bk[0th"~_}g/zK^*y$2=գl'f^󶲡6,+n?vt8TAm#~ fZ JUh + +9$1bRxeBz YT jJbRW4 dbv_6xwJA3gmsD!ʲSv;Ea| KC6' aUd]sDzyEnLC[!00nh+Raŝq=3!qtvXRO¨>]Nvy80Yƒg ~&)ĸpV!dhl7GFXv?ZVg<#9WG38,w~p5msa{ <%OKw 9RA;vl۶-NISt&6k0ā6_oC-E[3-yhp|hɥ{kן))3B.e6nغeu`+QEhhq^؀Ga4n  +N$1T +`x k<"I Όǹ,Lo.MɷK`#yP-ҥb+ Ӈ;`QbZBʞeh +Fzp +]C1}gf@;Л0wxOqJB[aÉx-'<\ si.p.dMx8pB\#%rII;r{qgX9]ats< 4K1@F NGM3Gl=h0fn 2 VJ9zzGR~oܟ/ѭҨ. +2#=NV*+KG-TE7qN&`qŇ]=gL9(0on(H臫lx|Uzj1>)b)E2KE4rDlxp$eMA%cQAϋ 7nrU>L#+zqˆQK$+[ *t0?|JqƸJfULN2tОdE% :W2>fAq*h݊ Hacޮ g-eih +p!AFu3SLe-CKe& & LȞvubQ,v0ejV)x@H~ q-C0rCDt@Q-la6- +%Io ?<W)Y%I EXפmEH+t7r?&2!:3/UZy.# Dbn銲_R8vǑ(j=q +iXwi72EZ>Ea}R<犠${RP7DHɞ+:Rd=0l݈{f6$'4\Gs.[@drhhn&ض$bi])",3Bf?ea ~58o|,^mɝz᯾Yd{Rc/uHI [_qT`EĽ;wC[ Dc-r|XD,8J0ep1kW6 a…8wI 0dv +pqH,9da<1,ə=wjQL ʢFkn/NZ̎g:>`3)cta\Pƃo'p>:q9q:Gx+<8oĕjqO*YXeIzNE& x[e+jVf >޸|wIY-}m CGj\|M%#xcSZ߶ձᾍÃғ8A@7B1oSisK:uSzΕ>F*>5ߺmu}躰Cc;*xoNp4MUœd$dUd("a)HD8 # +Ԝn7+#Vse9^ٜ0qNtLF?qKliMiSP+1lGn0ҽRN/1-#rvA-ΣѻfD[w(sA(ƈ=Fos0e|-ɹGxRn1y#Vhe}+zعٹ|p05'4|Ls^m-G|$VL G8oo6~5wYJ@vUggh> L]N?؝\҇5:l0:mŪ>gOuqe*04M8b]uykR]5Lr:,a=tl2 3%죜hʪnه<TNéDFNt-`W> +BNWGz; +S2co?S݌y"!=Bݬ3~f7ߟ._3OeKTاY?V;Ǹ1[笛) IVl*D:!m{mjcY&ˁŊiߠ0r6}HAL +p>P4N+K tjP]qrfm+fT̈́bfjTLJgΌ" +T8T/lg+|P~~yP250Ep~xWXL[MO@,߀xoBoxD߷Ikߋx_A/7t/23R7IFTOe=]{ >!c>z2P/7Q[PqJX,QR^kے}4_ovjIƵ$zJdیc%^쒞key/=Vr]{'lYT׾\%]*yJc%S%p}8wpANt}p.Ո]sм4#[+9 HGogd8$ҕH2EV8L476'h)eXc(P2R +W%bP2a5'*BVP' GKf )P%i6C8ɜyg CĚy}mw2{pPCO';ZcL9{;Ȳ烏 T~T, |>mppف#<4n ztg k휡_X—bL-gץ=EL+SڠѲh ^B@!uuyi#FӽV`Nkցj=1{LczcO\x +? ^k/Bta/|"b qd $~&pq OCXXur Gz + '%_H!}H%Kp2G$ȵtSI<\{n&Gy$׾Gʜ%)qcYw#RxFa"L0&D_IŜ+кF\XC"Rcy|,k[u6x)׆\_ZG\,C>Brih=IQDkgE?3)CdJaT8gkNYgG/0<"r$yL +>'\*W!2{^ jgӜH^JSMI9KBt,DJRh*eRXdU4J&cD2 +ǒZP߄ττO~%s) F-3S{P5{_"~] ,;uyK]`OW٣=I}p{oдU}ܺ]HG`3^(Fݪe:l*-uRFkjUbw!NF5;Gź?֫fRSݘ]dKt,ߏC;6Z݌ qx`'=? d'X +?zI6KtfTPݫd5To||cF'DUha`[PfO;w*5'r oiqf,@=G4훧 SYR,9vl) + +N$/JGE[DfKeږ#K$eRLnhNh>:dv;,d)M7 m dxlv6!]8IF's=!7mc@?{,h-$ˊz[ U70T<~PCdG!m\ԆOS]&+'m@;fbA"B7!ԣ4L]KXNǓqzO(ϕ0{?_/sW8S DP_[zv<=ƞzz^ݑnqk=-a 5Fqy#wVI3Β$9gYN %!O.LK%!OIS +-SsOWC.lj_H;"~!;{-zP$؞_hh5-3?v8\QnSl@;_ҊvX3QR(A@y%e +{I*N2 솖+̪vrVy[d`yms_M-wLܷ½Kwc;iu=`S~:o+u?/VLm2'ߟZa'nVwLj[~>@P,ݯleE<ݻ[8 ϸҾlږ|FKw 8K/o;Dvir-aw}[dk}';د2RӺ{(++>Tu\f;O9Ч2Y8m;:zIuUVh5{<˽wXݓp9 ʹPl +햣W:&ŦL( ʛ +j@Ƭ5ĥD6A gW*Wò̱+y➴+C;:@-DvLX[Jl'yVd-eblԦ(Nu{7OA>9jEG6jSLmkXg5w@Yp[W0n[$՞֝eh-2Cz[J\2y|v9fmG&_5^6;Lo6ajq)wu>`66ғg hqJ!iɂ6چj|X\Ev͇WWYю e\$V5_"Nv6^Z"o2S?aD7gkzM!<7?wy\7W 9Pފ;ZB;´z%s} #Ym`,xZl.lD\ X΋%j4H{:/01UpuE]@(ӏ%7M˵ΒFfoJQ*{*]M^n@Z[hP|sF³LjS8#A*-`ElLŀgm1LVBQGy1skN^kko#? VX)/gq 7?[?^\8G_h6=%aEt1.?Gv`@䫰A%WC]rWa8`|ӌPHw~g/y*z,$iu;ۯxo<[7ڃt~D۳mkHCe7ϫ%$8|!i_[K?+lcڧ?]Og/~qϤ۳OG>]XTJzK IZu]z +.6cJciqaBFBx5ˌ<1㿪@;ⰶʘĘ1Mri3|^nLI>J~yR!4yn1&) L1iWM?2bL_?0L1ɸ2Qyz$^|>0I>ʸޟgLI>})&NbRkL+L֙&|=n3Uky7:7aqb2MWI?RĨo`ư!l&m<-[ )7Bm$) Hi1-.O$ ]UZoX.jw' _gPm좮i ͫB% fOI;=}zgP]JV.*}(n>Oh Noʸp["XE\='&Y4%RG&k+0R=`+VϠ )=-n*wGh<C+=4odDMj4'8v'G!qMܥƴx__RDe Y]ߣfRC4L'"ÆYh7šm4k+bѾxd B(a?[} kUCq=X(zLt냪InO04mH ʬ1thmmL8@0M)`F<,A;=*@ޘN:oPaD< :pb@a*X| 7ix˸]U4˴%~Vw㈇%}fy~2 v&AhnWáL#)L~Oo[[ =(~ v֭HԼ^칹88T*h"Mgc[uל +]RIL +KaZw$ ԕۇ-$~Mq!WoJ #qMPtWM9FF3zFSQ5Raj"4fzB4rPnuWv;k$hx'l',^8v C*q҈\81hdcfVFCAϪ00%{q- 8K1y|#v01 [ 1*肙x/aȟ<ϴpDP|',m,cJuԌ ^(7_.{@,Ga(ALJϺP#D_r)Jv%S}(,J_dkfVϯaqjdc)2XcW>?- 70V >pSIXl(68.w#g%l |= lO7 qMCa`OtmWVb(0?~p;7us'סYPP s%pDKM]#;TPȍ1NȥƂk+TOnkS\9ޓzYtFֹ[+֟iPcqYJl#Q6Z"[]њ8xiYZ  VOO<2zx/|<iy +[?oG8~y߳RV? s,1BM+?:%vݝGȮp['uI~?["EV'9]ʯ:<ׇux3k^:]v=7ؕr^+{8N!C_.2Qw٥îB^,pq/9Q2^zDq>$O/Ƌ}R> pOLGxXKxVa-{$YI~ NJ['$QHJ ?*=~\I I||aF1+@/#6 +~ HJ8o0!?#^!%\0p9,I p2pYOAX$"BLk%R wISY/V B;$\ R7JU-័~ Z“^##~g%|ok%|RŸ%|ivKx%W?%%\V:(! pg Q zḄI .dr4Kp<" k$\C_+:& of o p<>E(HxF%|?[gUu3s3  ~THȝ;J\R5ƊJW^h,Uv5[j*D>{2$A!9`ܹsN}?dW1J%&Ndp~ⒽI(ٯJ$6>_$dZGdWCɞJCZ~\d_$YIv? 1}d/KOd_* w<ɾL_,ٯ3$|7%r~ds~~(o$="oJv'3v{b`W<SF˾h6,Nj}cKVף!PHzjIߎڒOQ]IK^/)e9K!/)~KI/)R9<ŗtKe/(ߢ~K_;(~]NK_һ((Q|IN%ŗtů~/_G)>I%}K ŗ i/)ڒt!.E}+Pot5GS(̜>K|/(/E%=Kڢrzŗ|/k(Q|I/ۺŎD%7-_ҷS|IK./_wS|IK%}?ş)~KQ/)~Kz+şS|I')_~K-op^|g<==vx-u=0v‰D(K`H<&*/Qa6O"mT' 0lps7uu)p+go{%7mT$GF6* GJ@N6 uv_7ڼhKfz6:{p<}=>_}'y3 ?F2?ɞ34IZeggfFFz)vb%{1l?,^%~^r`O=.?QAT|bs<Ѣl*.=h>ʺ|Ns {J8U*o΋7IZ**oOuTޞɀsYʻMYxע v~.xA-yM 鼸 ^%^T뼴 Sy<~#:/GETDvÃ"*H+7Vyt^̀9~6>^nSy~x "X,SySy꼈,?Ky`ȟۮ.y'ټt^ "*:Cȟۢ|_X>|7LSy:/ ST/t9/y1c /ټ:/2LʻVBxQפU)8*X?xpȟ<6ROy 0WoP癅pȟgyB8_OxI]NFyt>tqR!ޗ9׃\\b} a_"?'fO5<6;Tu% {Z-\{Hnc|J }qfp=vMNeoc&tY/r/M~&{fgh1d6xx92q^AuC3\l5}(PſgL14&BEvi#1͘Rpuƣt+Z }, }cu/|9I6%j/L}8%z<B&Q=BO~ƵCkz~=B͘oap/1ɝ9 50)h(/+KBQƧ1dz¥ 񉣯$&fߊLލwd:?c&m&%k{mIPF| +ޡR苖uLH eпqtnQ +=[(7>;R8\}_#wɿǰ]xh9W?AQY{9k,55q~3!՛rڳ$Ƞg-:}!?O 6`-w |N5+>G>"j|7KG}>n7; >&|H>D΂<>]ԏ"Pr }'؋ヨ'ֵms= yNw$fKou|Vm1ʏGFe2eǮ j2v'.?1<YB" N`lRn\AI2@󱟾۪ϳ`EӲu32&W B &%[YN:ўA[V ?!۴ k} V +`r|}Յ +]Fzu x(ע:w6}#1SJ8i49s}/q''α8|:N䚤5:><͎:qҵ0=;W5_f`/?E]>C}ϦXV[Hլ֧->,WG-YTtlXf BXX&{y@5~dž=NGekOC"=[|5v~l=/֭֝u/Zlw^]MZ@jkεKk0&]3m4ŵ1̙f}ڝ\ŵLrڥMkؕ]ˁxϵǿɗ 7+b)e[l+@5@{ +U?LC#[}]t,L>m6n t:_ ><.{!b,?#lA3TcSt{ca'E3챺pčda{̝fs{%L['sSFren%q/sS`ƽ,]Og0v$nP<=^b2+ea[8D5C-h=g9,Vևť. ^T6Weg]uQ2?/qs7qbs` ;~Y<7)wN˓s~Ql^,Dmbo+}~Nʃ+(/bO<`>|ưƵvq.{繸tVR\w㽬R8xb<{V1/'s'u酱{9&I>h8[X>8Iy<3OxwX>tOxt>xb<ǻIc࿉'s%:/>:'s:?@B"*#&@ȟ΋L ET:/5"*/]=B\h&J*VDQ[fp +(ůe$.*ՙ^>*B՚mZr/F[Qw}fL=ϟ {{^{Z{9'5O/^03|o)?-?.{ })+r4+?tͽ_>c -t鯜Q hl<!)YR2):wQOgC۹>ipK3\51!;z!p/I|P!Xwƚ~-aZ~%afl@ܿx"A9FppxjWlyo @y9<?|Ŷo.c c/".!_s7Z[`BߠDm*_wGw[xO*+Sf4}nvѺ"eQ1Oc;[d; RmaUy!޵@w@ydL~lx:1 p1⹮k5a>v,v9K.GR9e|> !~ ۤEl#p!&mr_ |_hn!~w#ГrK?~ >[N9GQ(sFzmp"oȋ\ϛ X\c-v>Mһk1u*ى cOd-̃9 L̡n}>zP.\ <]-p}Eݛ*M,)F B=} $!ҹ^59kimBsDz0 +OFPkuZ<C= 6\[F>yvz[;&u+p|~nDwZ^|z;r5~mȕ>BYx}|cIߵAyg6\G Oo,Lb:?EZWP&yH27˥i >#(GP'缞@p9뵿_gsW+k>PLZ{kOSzX|C'{mйBoT'3=2R$ZS'Q@ ƎwE6uK%~ٯVfOj,%^H⮫% +C+_@\ ρ߫n? +|[d +_LeHAEH62ݥªUtp/U!ߢqx)k%~pٮ^̯;`x'&*υ: ʨ<>7ުp7Qy/ʓ>xVTį~~T7H|(l>x7%>% j&A{#j<{ĝ?NR!]'~:E׸xہAďߡ^?wďA!UN9:dz?:Fhl+ Q>H7Io5B\t(S7DNFૣ=$eQؒ( +{6EɠFEQ>ɏWHR$^~+uT?Va.ytއ|2 XK4>$Cෘ|ځ^ +|)g"UoVoи'S#_i)+| o|J +wlʙ|_p‡2'.J +w+|(&ě>x74nt*<xD-[Q%Sۜ3CNk<_{5!ުv43%~/ ʒ'nO<_-V[L{&ݘķ䟸_o?q̉&27ɿ?@/_cOܫ灯4J|=&ě_&IğA?|?qqWgOܯǁךK9 xɿ̯/7'8xɿ7WwA5o7'ެYgO?HӁMה[,o! o⮋$~3+MIGc䛸b6&../0鈟^e!*+͌;>xOcs.@ӤY#w_&>j|̯jA\NkxP᧓a/Sif#}CWH7'R?q1LK + eX:WI|;ެ>*Wk+|3_Fܭ뗀xP_p_p+*WqQSDC:*^^|^T>ǁך|J: + x.nx?qYs.xg?qN~ɿ̯bM>{U{7Qf |?'A>U]4'TxKL;sM7+:[34@\r5"U{h|W.ۜW~WOj#+<gw:x+o Vq)I>x qh|?ߦq[7W䟸_ɿ̯*|7MT|&:n~C&2›3#?cIOsUM>;O.ƻU= |ɧ̯d)3} M>\S6g\&ě33M>Wi&23>W5M* +&Ľk>䟸`\TMl½M>WooUx!kMe~ƩUM~?q̤/P__d'VqsLě>x?>qfʇx/~^8uz8Bh̯l_z7+/o Vqj/x “S  +5n1?=8]xָ[ŝaOܥd/U_1U|&: +|ɿu5'T1'Rq7S#7bLy!m53HC]o^*v@A.R>X˾x +)hW5q&)b;6?imFp9>`?hKOC3d2w~ٹm׬}-,Y{Ӓ;o K{w&>A{_gF;c{s2ro:;-$ѱ[ϡ[u{vZK&Iho۠^օ3/5TK˹#kREdMP;CQ2ߝ'/܊6C:/N4h״k^'NƗ?:6lK;oLz$)H78Ec C_R._\&"q}M-F66#Rh>hz>|f_ Ry]A5<qrпx|JO_~5~W~Kہ1ϵE?N^z?Kv(þ[+nOZGgs/zsV{׎wPYNgD.Ddd\ij&gG%czB~/IHi(~6q#2>P0G^+"  ^O^'jSy 2sO!G0>X8/),;[ȸZDu]x>38;/d.ӱʧzk]_&I?E_Mț,<'okvK~4'J|R"ZL~eo? }X.pH_2ߑ |ۓzMGo׈BwD`;8" icǵcGPcї"uun])OB;qPπ>333sT/ >ixSύ?ǸpƟBqy ڳ +sSD!"-}*!l'dє'2Ɵ1`gm"QV2|SVؓ-L7b͍E_[.Woo{o]N5pt}#է oaǫSD:)mqZZQ|w7ӴYr(GE|aЦO܏9ᣝyJRvx*eyX+&ü KI/6޼!icc@ƚC[k/]u_5iSxV$ژ >~ + cc+w(Oz|.?3ߌAk Xc7㉔5NxFA1GtݜEhLm>"#3㶍)B+lۜbӿ?6oE<@^u" cN{!Ɔө7"+F|.61?y hj[g/N 4!&Foԩaϧ@.Q>߲Ki:j4B&28qhN 067?Vc}H28a4QnqozPEbeci ?Ck֚iui+#5_ì7\Y"¶=w݈ +@L.̙ܣ>7_5>fk/O\?:&"Ƕ0Mw?#B7}I}%AYHkH;F}vM9E1 X۸RPK}&^gydijv Dr`mH}6ʋ\ۗZd]eBC"Ɛd)>R4S~I>[/ + `%' @ԿK>U|1uc.ۉ(!^ݡ?B/M\*pȪWN8<_tQ=hͪaz]Sr˽Gv&h!]dk;_lІ9c<$Qy(бMg0M,]Ÿoskv(jm3K4,]%Y6ql DSDZw˳cڮM<)bFԙ|#im%c%B[T냃z0u(cma\֌?0ƳT|$I3ooQxB(I͝_ G,籑|0mő8K\+F ?y ZRܑ0.91 tOhH1(<. *AӴqKf|NpO-pvx2cDr,m5.NP^ל>7: \6M5PDZSu^N6>R~˟>D@ Ab"b ^#V)ֶ?K-^ճỐ?ƕ s͍Ź(#;u1 +*TymiW0ayF%ksEV\ 6>'h;za}H5IFy[v\"#a=i=tjA}u +qM= 饣DVQ"&chO Q\CLCOBV  朜^yI9oQv^ҹtv SO36?lcEf{7u#8i=& maKh燺=;Zk1z9jcSP=D 53T/^5Q` ,:H^)BM1s }h|1c\[WX[3{g!:N%zjRjmՋ:8k.]-uȇ1}O0w1|E۩;x!{m .|8`y=[)}ٶdvFlK 4j1 {,sG6xR}c5rD!K9t~@&|5p-DC6qqHŞ"2J;6zǂ'б=k+Z8"P|=Køq߽T;}ܛqG0&f(Ø̸qФ,A}Uc)ǣPrm3S)t^\޽;V_[Mcb vVKKF!F|;ש֑]_񾖯u͙4P{f?xV#ZdZMFcN\/%"6&#vm8oJ/.b?ϳ\u'y|lz4l1Dž}D梍sX9gd1F+>at5a?@CM}im*<;K:ssV@vF}0+ @9Y4ҿDvyS\t!N}E<ýQx!.}Qͨd[hЃwiW'Щk/#pM\o l+1z?{ƽ}n6et'.~Ò~Or iJ 8b*\e ?Ư |[F~j=m _ts%Y"&Ew -pv;?!>_cW$E eꪷ'=BO=Ӥpso hA\+J#v +0箧^t(|zڬ!ZOߌwz~v=e]OKנ-2_(} .oԂWHm@S\Wc^2^Ȼf=OLִd3&:9h'zKߐ !kY+օ.Am!\':msԱr_Oob(!>v9DcNa/q-8NOU+t,XPcL%gI ^la3=L(7@C;pG6 vGj2—ANvήudže CݺցV]W;Eӳ)(}3Ӽk=X=?#+FQ, V2׍E}#f޿Yt{2_䈎wG8BP׃"3B;8H8Y- "{ht HV,Β?~M).Βq'qgwo7܎~^5X3X{Y"ȧfwQtY-hǙT;BG>*> tdt(2c{@yO/8qY&;C\h ;|d+⾢i;r@ї@ރTЅ~5tsE<]f)kѣ.S2MhC}OO{Yo/MqG00NgFc@usN.tJ'c:ܣNp?3?{J'A)8⏭>PGԑ^ ?ۜK]Ջ B2/z_=jn}r<{ ڍ *^rz8e frpq)/~>i&)1cQ]Ă1_?7|ڴQe?=K|q:[:[>m%Dyw ׿ }Jk@}N^.=5OJg2 ɸ6e|dF)e&˽ Lj/p/6Gxu3oc* s"jU/̊Gs}Tscy&GG!;ƻ-uǠLک #||g(םx28Y=Qg6q|Vk-,gLyxcj /C8?=pp]R?Y?5=Ɖs%@ x{psص8Y;AH%AL%ߢuեJ575xȌ_I3ZԧvhN:rR'ςU$w]?z>{gt_$/>sxl/c>\<_g?ɱ6=COXن|[wՙDga(7m]Լ +stg+rj/#Q/nS/W:]lz +2Ql2k뿽{nz=JsV,]w~6JuƟ~i1ց̯5 {{ѩg[x>|7Mi?9]gzsh3$1V]4rMvc 7^X`lsoFo{{yoQ<q޽4Z7'PLP'#p>՞F!34چKmߠ٬78qNS)>@B]Cd6ԌýF=eN4]پ#*`M0PF i3BDkc|zόz~4!ޒd0-/DgD9[oU[b 0>rX[}**oeo?,xk;ʯɿ_Bs}Ӛ V޾}C%y֩xW[lә㭭_C\{”ۙ㭭][嚱xk9[ Fעg{xK[x+n|'Ŗv}MsǟH@~w +gLC.M?kz~=j)k^^:wVA1> ?Pd0 DD{p;RYaw;h 3//qJ+ORc ۲-b4'5qߩA%þS'7a߉WgNn `> Vj(ۢw9ټ`ꡈiZ!öP;CI"b~ B|@3b3ǣ?^;;Fw}06[DS;Ϻ?տt8i*>tt?{#<7ȳ<72 sϳ~Du]~uO?dW1mjw/;ۇg@$czNuA\E[{)܇>BEuIq//**Ƣýڋ"ҟ6yy\C +@vCv#7:$"ѝgs;1i+H^̑6ASo;et-Gw?(W]DVyN{+qvzJ>[RDŽd!wK}t:TwPw tuml4Ȱw3;B=}uW|w AyɌݱy`=Q@A9/9/.(oxP">l5GF''>Y@d OlN>OezboSft~1R>,o>,վ=t˱XOvԳ֗V8|7>[$çy*;3}1~_X߿ /տmG ޻4>x)F_3i֑gi0%Yg_-d .|{-`y~Σn'rO8l~2_gj׺,:'E!;C=±ŔEong+t?ؾ;O4>.hp~}P$S;vuwk\K.#F!\;l=X=͝BG >ވC^>-޾cPHSxѾ0H9l_k2V yt{ö!OpGJ_оW\ &}/l_=.^/87xu|]O>[`k{?\m:..7ݐYi pϊ}gUq큿ez>!{NkQc#.ρʹH[>~| >^Gř3\{ȋ\υ5orf}ti>=)a/kGv9631.<3?Rυm/ܩ|Ys/;9 WW@g]|:iG=9NC/>x]=uLa{0F##oܮ /%KԂW̏"^:ڤ#(C^S a5_ocbaǹGA{j/Clma9aÒ3a)9s{(vuᤡw5 rmÈuz1q␡H.g~< +7׶;q;H;`_yO{^>߱᝸;|;<;J;dA^;}9Nißꏾ6lݟ!϶-U4 +;Ҹζ7C֨f*E?YgKش$YE +5?Vs@+'~Ŀny>ȗSEgqka<ϡEy_[~|G!:ⷱcRf{?0OؒRּ{ڛu79G׳xy;*6c(V?U㳋E"#y`[ua;(ʹB w%؅?xrΤ;pm|7O ;c^vI=}P:zlc6X6Sy(="4#8C'w>m([B=w xW}Eϣ{gWpg~i?oGZ[CYs>ߕ?a<ne<d0_~߂néNb>b@[n +ga C O{x`ZiCKSLycס\ #~/4J ~:K;7>BvtSXočg\GM-'3ѿU'17c~1/#c31/>7fӭ̾Yg%MqXcBy_| +I}~ YZ?j{w#7vwDlO>l[M=(q#(s|j޿-(~4e>p5 ;,E=&QǼܵޘH̸=GϾǔ;ԁ?ʜ}9ro}ӾbaQan|;>s=y:+A66%GJzB>Ww>+c{b9{(ɶe˶/ig.{_.>kS!-p],>ENC*+N/;y}s#ݦNmx]7}=s1q\{x GWAlx.n=b 6O&coyKg 7K߿|K /7 GƯݙjhQʀa`< +9>3Djq;[̳xs#m[mycXvx`s-5hO5M9lO4A/#mbynF毿y$wiǼd|B_1.3`q#cBg;{uş)Vų9w·#{]Էb!#>E!e"(0:?:~MՏhk=[7%_'ARAN&e-xGy~MӲ߉_WkіV<dz#?qNMRg-2 +sF#eזJ}}9/&~6&ڟ^o{/ ~IXZv˝X]DҜ E ;mY!~ME Z#6L/E,{a +ꦉ}{nѿ3,} ԉxʍ8\>y<.Hv19ǪBt?v{<[l|¾f%t-ey' yа[9ǡݚ߹|[7ag_yS=Dww"xN|>/ײYVzK}b[W2Cvv,WwVrop%5ߍ\뼣#y7mO gߥɘԍyRB ĿXmyz\m['7`oa?3Sg9AȒ1w!c7ϣp_is_? t>_ְ݂};z߰'y۪GV}׾ijv-"r@ iP#<9"I].Tlm/&+TGG+} ~MU|ߌ^y>JZPcq}j9q[|/e3_ҼmbGvÜ9E\Ĝ Ǒ\ 0,_0N%o^뷯.rڸ7 P:#8 Vȉ qsbѾbaG¹bghq]\M B+%՘Bgh}G\L+ z;b#m|"Dbۇ]vm3jx1н!Ws01WEBw5:{7KGq7SMo}l^ K<-rXlk3QFK%oDS)slù%o⇸g"δ+0]o/%]ϰf$Fck.-zNhY\YW/|cl3Q >ȃZ\#ָEVqjLVڤ> o9w<^Wzɳ[OC>]ƼO{}pjh=C5y`v0G(4agv[ ?{8-BWg5|G>h<'^^_DOߑN[eoi; cべЏ9o@雬)x颿_K_>s#U+9i|-bg5' #'r{:aCI;~:!C6Xc~ê䮟M6tw}I @koYU7 ]k̖l3esT{0 QymGo-,mq9CqZϵ=%дC!h*E{3З7W=/t$-fN7筃-]A#ZTCՈ1g`yƀ|8偞?t[{ U[W9V/ +c+iϣvJ]c7ϧ/"۠ǃCHG҆!h.D޺9r.D>Ij><(mP\goe kK\WaFF=l1(3dKjT;uݢu>6B_~D=Ф1Q^(o_o7z>cS鎴7?]tt d=Н[~&Bܗx'U? q{C[~%"GXɘ7`C\b(cv _H_mB^ +ca~uGw_e Qn=g\@awuƊ^9태# _1W^h=_:W|V=y#||hSBG(1wC#77@7l݄oӍ(Ē <dʀ}55oiA6`kCь>ݍ1ٷ/bU9vtذ@| +[!?8c]'H/D!V}kl`<vWى>Zo0_DYĴ޿ ok>K1V7ߓY棿k\WgosϦȑ.}Z>1}dkG#fh +R# ޅ`V3|uY_V{{2-9Ц P~!ݣs_g&oy6ricAӷ qky}]$,HR>u]7A?ߊ6̃/tuwyQ}=_Uq~KRcI.駇_|6-N/mF 93f z#g 1%Z7R;ĥ}z^uM6;N}%eJG^5,꫆N.NȯK|fUָJ|5e믿U᫚VV媙ST]@oRBL__tKVTTϪ.k*k|7͚V3}8\זϪ[Em}u]^Q6vk峦j| +]ʙܴ+攕\T^_Q5dne3+N]S>_Mye|h,E˦]Ob׷WV(*(L +-S `^W&;|3n^bYT=wVIx.U,lVMGtJQB***-(+N,ˊfVU+t}K)5|Z 7M/)͙U4oztp+)Yb1.z3QfT͝]s R3ưhhYa=T6H>(T*~pl|Uh*\`kkfL[KyzLoz$xU;:E}+FGޯUte|iWU +W>KVjWZs͕h3TQyfWN+.GঢʪȜWYU3Iw$:*dMLgO)?sv3_sLeUMu:jV!%Ke+|P>Ygͤҹ|XTBRؾʒZ_El'Df5lnVK%Uy|W-0-:JTMΒ^V>mz%?̪>Gܦ_^S2j/>G@ r*!U.*-+fzw_ĪrWA[i,v9~¤[ &L,=h¢1!. e(/3K+}fXUky +\gM϶d\.[R[QSDa֣/ Mzvrk +>F_+/h_Wy%> )3gܴɀW-)^k]T]2V,KiERu-EkD]5ͤ y!zH$ʮ|o_ie3crjaDrWUT*'},(2f>T~|*)W)ոUӣ4+BE"%2_aE/M_"8BVNUW*d?hv&EKx=S|Jf# +@?1x-)q(=aTY)Z"QkxOe4?φmM-gPnLꪢ[`s dp՞QԵ:;OM :ﲪ0K_Xi̼?FS;ʁ"LV(Q.U_Q.uktUUeՄ]J]5 ~5 >/T% q]T+5J5z*spXcPy6(V\NN9US\ut&@yc5WG<&∵9Ro,5ȺؒaD $ܯ)ӴF*uUNE﭅X4Wf:[+7kKfpU$T e9b'B7*۱*)KǎØ0_T ̪Vujij*k*˫+&aAS&x֫6bohf\)SuK7s˨.Hwjie;֢ /*d +D{K"QP/.%RB_W|fTLΉII阌eeЖYe&_GŐuiO^0 X,dUn7\-4Ljcك&iK\ot/XDq&|,IBZ -1C(ZNBD>.M~~_F*ZwnΉ+K\S-Dѣh'咢&̪򑇙ބ[oYх51EU*صXD+0C\@ryr 7}[UqE)t<}9Ljek|Fo C{L}&2lZ).:cc|'3ZnYU /òl虳k/];sRV_9Tpjy$v^6ìa-cJ)\((j_އϐ,8k@ʥЃ/շgAUS(Zfb2M;DK,1u?J-OOTŤ.9\lSyZQ,ʪݖVK+UuEEcxM%*IST͡O[& t,Qk*tVBySiL}6_JKU: amZ 'z"W&c-S\j2QOyML7~7kdhq8D2-N+>_U'(3MؗJ'&,YncfsfyLDUJB79 fjk#Q哘w125{ +Qrz\v7!u*E}2a!JuX>MT\H +XU'RR8a +BҌBqd/FזU!Tfa:1fQ=c>s?AWVɛ:Yz/G1-Ņֆgf5W]nh>O/T 4Umu^jE Gkݪ+Htb/#SٓU#I㚲B_71%7LaIYZ(wzHގM}tp4 6Ӊ LLu|+k暄c+*}5P?)RK%FY^~sY%.]D\KF92xrZu'oj,v3n@{O;ɗHCb\v|uBB3Sd%kϐjgKg+'N踺A8wJ3ݟy4C'NY6SXz?7c|2㱀;*y"ɷ$9Mr.:ii{ڑ^Ubh{1fYhjLTUU&ڠ +x"!CMoVTQ1㨪\ز@gvjT}_4sj%:/-/).ђFUYIeU+SW^OĬ'G\~uW4v#k/+f>U $eKR1cGԄL-qHXpS#U,uq߹C|{S\]4LG(;):;&W[V+.sF)W[".Xk}ƝQjd*T̵ArxQY5OB\ Yt>s97[{8z|hE}kNgInEKzio[[ƀs*PP;wҷ&*IWU>KT>*|鐙-NiA})sQ~!7!J3\yFƌҔ,/7Ln96sD Msx)!9yWϚ[,f3Y`f4ƒ̕ۑ~" %PbYV2Y>a|\JY8v&24 BfFKju'Uwoӿ +ju4źu7.#0[ 1UF2Eo*8YrB*a<\cJ8_3. /UjV.vqlv 5S+gjYIt;P}nt"xzT9ՁWlDKtIߜc=WЛpU[.wn4uE5h%"/zr}CP: p0)"n?~xʗ!]tI7\{ #אt7wYaHȗgH^t(R7H+7CH+1tRWwGz3H }8cHGdн0j"mGzDވI ҡ 飷Ɛ{a܁tG06"wa$Dwo0#ꅼ b nD>"ԏt\axqӑ>t'.AiHM3#?d" ÐGF*IHw#"/څ4Q4X yOÑtR ]t}:A=w2cC1钇qwڇԵFEB!Zl/!)^?][fAd1tcB0֟CHg/]C c T0#mFVA+?Ez3א"ݍtR*/CH_C:{a C'A钧5sZ"}vtӆQvD+G:i6Y= ~z^;pzt+ǐ&z=gw#ݽ |/CHv+h͆,Hg\#}/eozg}T"lL9ʑ57>؍sύ.R]O:r-OxmX'Lǩ=c-ߛțl_6^Mfi+>I({ dw( ,/E6ӳ@7҅q;KKwy W @DϘyP60/dz'薷4G*Jݗ%{Vۧ}c%/>fN[AvV<0^wM!O#ϳIlEwuqQ2I7Kmb}?lsқdS,U3oY ة +ڱ:ߖe=s//Mk-.\| QGY( GM.;(ҹʑn.۳wnV>c-Ki(W}p?TIu9;+l'M:Sb‹"w|X*=;03޴kE0߭*@wmm7b/?i=9,{y+WkabӥoZH[O^7 +$obvԱPٛ_ted糏I4K0)bCeOo7#fKWKП;,!Ud͟/& u>/^GX[}=o6tvdx8B-b;SdOy۶xrEkV'lUwzB'hbR!b=_J*[]]^];wU%A; XҥYƒ&64_{aSRWnʎݿʤK{?X,:Xl:`Iv> l۾gw=,!IПW! m77Ly==uND=='Bb}`wסؿK9+źn* DRר%g nkEǝ;GC^ ,n5v>9nſd;ǓK>7O5|χCVL1P^s^:}$O~!𲤂zny++cٵӳ}4*eH1Ξ3U3 8-R\f2M;cMFpYIA^Pfau2̩ݺÍ:%><9eb%*ݯ/-z蠿4p߾C5Qm> Qn)7|w^m !#> }2 Kɔ;9k݆I(m9$`VsYt>61OkFU0_Iό鈽s'H'N7/MVQAR*hKU__rWPgӪX9*LنKewdE9w`;&3О*FG};yҔmn6:JJ(7+M8\;~I)1_:oz Kٿ3Y'mzKU@2;ՉwS> w +0g=u6YwW2nП0tIKQ%y +ul}\P.9Q 0 `,tVPx힝5NV:YxxXYe=V/oo9z&~u ƾr:3e/(KRQ0o>2X)u~]y˒F3_iݽ+oAhG>eNf;gWXYtm;\Z+}h!*V?vӁݸ"~Cq^??m@ݥL$?=V-X_?b^9Oؙk izB9p^~nڮMsqbʻwlg$ Iɏ=-7W}/$M)[w)z +!'/q3],7ws{r nޮ TIUsʤUWZ휸ox}]n|)s<.iӳM{*yalz%urMr=a/y׳o/hOLUNno䱬 x|,а Ds]fi~ 7EVf+߈7|k|yq`#5ŰcZAY'(3嶼:me'i uR߃qRpӌ0e^*r QA◆!3ʏO.Dco/̛(Ӌ]/Dm*$sbcNcwF#TjIMSYhKͳ4.`eU.K_VwSy4xKcLv/bZ$'dHvaıSY>TI0]v/cLu7QXޱlKv:_FB=v%}'=_Sdz2ճ'eXaw8]oz|e]zOM2zX?g]΂uIv&_9 ˵.]*˝.=gh]ֱ3kSݕtəz+tPJ}# y"Y.;n7qy;aNq w~rmW%?1rI.J&7ps*.RȲ}qzGmˣPꝌ5+Dҙd$(@"Ae*QSUcQ3HtZYWS3&a=j3L6L*g8NQo#NҴ0bnwowﱻ;5w?Ww zyu[ppga;ȏ_f; +O8f\(Wh5d"6Gٴ .kb'i>Qmb6jGv}bvή_(bv}e.p=]C1҄bdZ/*|DE Sf^/MfsEF4}Ζ5]`!:gąogYf+=s>ƶMnh#c^g^-y7,ٔO2lַ἟!YnÜ-pTr㤟Gr~RgcW km}l w@`L.l\ ?KZX5SJ.@'1ScElBa,ήVȖp46*Kԡ71|kKW\+_UpH?W]Ģ:S/%(^45}fGlOfO/ذnٴ6->eyإt7t-h7[ڂE©]DjEN,oҡ9-@VS|.N>SZ Q5]"i9 4X1rJxY݀ Y-zX[./ PMP7h{^VuvaVf|2%l +t^(Km®]@;\*١,˵)~>'*B믖g +x>Ya_,lerx~Mgˡ!99W1f*KcxQh-~)vY;Yu?GsM5͔DžM r%ifk{[ݟx.m8^q.˘3MpsƇX>y[q[42\9udPpQKSnziy̙/.nC8͋9#Q`D9DkD38p2>"P1L + +^?NٓJ1\WH#L4fȅI|ـ[VR&#?(aB^oq{bUx_*SJG"E* _Sf-S?~ǏUo&v+S2|7~$@ë28GY.OQNUN \~O#wpĹT鏳D8eo@Ĝ}L)O11UK_b2JTC8DVv o,Q>*/J({^s"|u*GWq>) rb,?|_Kj TjZ_Ƒ97H>@Q}"hi:D.d +AY +jG}CTmvZxzm8f("3/,M}4஫cćGjø_D`'u4IVO~ue@ЪUޭb׵xoĮ[EtA <^L^bH=d:ڻڍV|\(MPp$F\LXqr(;+8ZpA5[9߅>x#hdRՌo N۷ػfK#{jׅ>.BFmѲ"*Q^$~u8Ž`y{ړax ŵW miф7hf9Wk%{[.- |OL5r_/J>;&[( ]1\L5T>uZjz#O:>|L^g*j0sV(7[XN3( ǃ/}3C5_`Se?bia}-?TQ8?;䅲K0qY% A^H{eIZ\_U8}OT:M!e#E V-'geN ;_S0  8a0#uQiG;V jWf<7: ƃmF:83vƃ]^qK $h"i#ҽ!p8D{e0e28.y 2!͡#=`o /%\|0m{%UVӸndd Nay*=+ :7nW{P ub[`A#FFD$3ja c`z|L5%~H'#Ich(7|]X]6m{F= ͸؁xH<[D-y+<*m{,tEnz5Y)ӽ;µݮE-Lg LX2`g +j<4|Kew*|T*xW|Z JYp^,ø*H_{mXt+ Qc׊5CH<׆`=c}}IY$##Qe.lSQQ+#bÀ\,%cfMN#G"8TB 6ˇeP{##Q{"8hvr#=Zб%ĕq(rDp + 0XW|TwV8ъ|F[}6D3^͆n_ /+דS+sΠvzՊGO}c?-ΊXzcjJu(%2B7_?B_*|gPp ~/qm>ROOf̐M}/a$;EeiIvSDW$KoR|}iayYN8Dq有 +sO7w0Kd 3yFYi/5s¬6qיxt_cSM|AڛL[l536%iomaFox|~"le(&JI%S9e3Y\'|_ Q2uLpN&\'|p^,9\Ay W |p5ep5渜ɥppetNA 8Bp5O8[D89(!\SnS˩)\9( ~ co$|MO~+7>ImO^C4[! %|+s'|p9@8=O FN— ?@8{&3N.'s72;J& M᭄O$| %|sCkpᴿM?Hx+"PM{!Zy{02'nI+ᵠ-N,?SdI ,8ܹs]}?}=sw0Eҫ)R|I׎Q|Io~Kz ŗ_P|I?K%uT?O%5ŗ_/S|IKU/?QY /P|IK(ŗ_Q|IL%EFu/ŗ)/_ҟS|IP|IH%nGu>ZIEmI=.C^ҕwI$=uk)Q=KJ/(E%=KKڢsG _ )oK_wR|IMsz_=qTO%m/(Ka/_k)SyG_)B%4ŗ3_R|I׍)_ҿ~KeoO]y5L灡VY+xSo/'1|y^*w% SDCA-3y:7wNOEm1Vökɇ./щ)Oeb16SB#_ϑg]0ih=ضNcb^0΍cY܇uH5Ƌ#gwC]8Y/k_0{aZ ;Yx,/0^./q_#u7H}4cǫ\~%^쉣|9Q>ܥlOr]>'G`5?] $|⵨Qy1zGts'kWy+t*>u{K:/冿3F}]H/ټVkQy6ȟʫy)SyW<#KOMy%:/u+ET!*&?g,kET"c :ȟgv뼶1P)~X!Sy[uYn?΋ʟ[RpOPcxi\絍)Rxaga?D煊 ⵨u^~OkylHʛB"*oKgET:m"*Fa8W!*ټ (Sy꼶bȟ;X "yX d  ?潢&4?+Q +LS]ZQ>QFߛpbԸxȧd)|Mz28wy28{VT1Mntscj37J@C;m=Kж]v>Uh]:3nB[v+V6݁&hD2K@kh}2FоѮ@{J'ѮBۇv 3hqO6bèc7ހz&71x0RW|ͺfa½?1)o-V ˧ W͏ Sn+~jlK&1$\@:ڟMLdp{Şg|$B* HM1p?Ȏ5`L1g-ŴcM]6K*mzU<XcnmI}3 > .};HݹyJ'ʘW:%.Oⵛ4y7f|kd#Cx㫉iNk=n&2~2_A7Mދ5z'@ό1޺}t7:L~/$x ,?)g& cbE >+}RPA0u/X-&^1y>c0޳q |%X).e+e9ԧ&w5`NL{)c{s)`>;J! +Ɗw4>vZ Cq3K-6j7y'>wn` Utlc;M\d(ٶfLv?>ἴAOL'8>Aoq/ )|Dϸ8+S+;F{hW1x_P&ڄy^a񳤗ހz?#u * ;zIS[)]kЯm +|m]0&>Ķ\pߓ(IP~).#7Ӛ1 +ފg&&R->gSu>'LE|$GbYT8@>;vBQ(r`7-okض\)ly^oKx+ղ#'ܾݞ{?6;2SgܞrsZ#7<`to2]c*[p:/N.z_ 1u1\[cj%kb 08xn;zYXKyQZ:mfА?K;+I,q{~SXll LmL6ݴ݅mݛS^C]vEf2xG }ֹ+V\9c&sp4n{Yk8и7LWwՉyԧxɎCkſ*ƕ +Wc1oHKkeNj3WZ2]>k-nq\i-W[|j\i*i~јp @Igʃܫ,>|+k,OZeq7i\h ϵE̓X +&CMm;->@3Z߶qݢ5+OlC,Z>upݢ5֫n -ZREp]5)ŏ(\hiýkOx!]{O[m+yZGL-Nmם.'Qwˡ]΋콜A*<ʝ{t{wJܻǜk߻nwk{wwod9tҵ^-_A{}FN9vbApmߜȶ=m92lD?+wO7mC3)tL|;|פchi +*Ol剅čV&~>$jOV ϳy4ƌg7ZHK/_^y}|ST_FfےG^zȈZ?bF6I}Ր}l+Oh[o|vd..@{ +6suևè9~>Nn[/[z +e_.~_D :.yyx_yt^tyT?yF9S[u^"* ,~ʟ[ +8OSy?y +&^{\Jx l^X癕px l7ݬ ?xw}F@)K}O0Sg&³Wrۈ}OP*H<{R( +.U6Sڼ _>oɍv7݉vvFA=v?>[ўAmNhAmA37-Bm ACہ]?kh]v FmA{WqЦ.F{e\vM ڌ<&QFس0L+<,f7MJL_´uSձ%ign>E\K;Hک~WjG w3nϧ/A6ei dv2>B:_cձ꩎k^Gp:hpQ&QVb@h&JݕMLUB\f %Ez(T&A3].D2 +TR!̼߳3 K{μ9ys,F&%WO?kCZMr +3/>/yA>V>z7b紅BcAcX{O +C&?uzl-{X/=O }ޡ&ݯZ_{XV=%ޤ=="vgRSa=%H >T{X{XBe""jju,:|x'am6{X sDwU=z# ucj}t ^Zt֏jk:7VR}~Jf՛XmcP nP{X\{X۽=Ρ=1){C'9QZ~ꍎX\FX=UF=H7ғ5X@^ܼj;'3{XYYa MbkGb+y=,'ݰqqmaݕ-bacܿ:`{Xupq=CP,Kc6a7qM*_Ybr}^XIHѸ[͵o􏼿Bk wrwJ] lO!ӷTw5(k +?qV}+SW~ң~/z&KXGyjxLOz?g=x}P׃u^֫Z:7xw{2}<^/Q{4Z_{D[y>sotׯ{W)7:4)~ xU]loFo5|!W Iߣk8F5}Mot,{tܾ,*K E_E?5`ܻޅD_=7c |Y|̧}7z:w-uSL]P>{zH]>+%g|݇>}8?i*;iy/OYpgkk9Uv|ز2ݖAS*o>Uԯ*w4K @y{#ҧխ?rY̒pzb݈|(;%GԳ}=}V\Gbe>Sv3es}zO}pwC#45W}+K}TŊ{Erɽȹf#qi NAݐ{IOAOuvFӐwutr?{6y+2E}c,#mߜ pi_˽3\sspWYAK%&IǹCNxhW3,^G틲{FY#YL.ݝf"-xmBO_Stˬ1&rCk~= !_E'֦[g\KO]*?i'J"?F,N'Ǻ:t!?hrݣW\30ttG{f{5hq FHN:_9d~erfoZU.kЉ8݊KuY=mte֗t4KnQq*]k3AAFu5h^(6Ug+J tT{&^hvf"OOq:gwu"mv0&6n©Vo\KOLl`r-=T~V'k ~ַ-LɰG{N77_0ZzT~7k ~SRyX[O'ݔ/3ɵ ZXO']j&?wY*`WR.Nf5H%Z*5SEY-gT~H/_T~gVH^xԣW|4_3>7'*oTk D~r-=ob*@/ZzߕZ{Yϓ\KO<;-ɵ!|YJOm&_J=:ϝϝmB/_n*?_3d~SE;9Ss[3_ ǚ&q:OZ?K''ך$ǵRs 9;E~ebJȳT{&Znku˕krW[,werϦ[y'LmB~էE~.$=؎_+ +lM?(~`+bCgׂ@~󛾡ןzBg-+lF?y@As?&'zF]Z፞={7_"s#3wР';UZp>kyoԻs+LQg5)t=(s73Vt hN5/Qi|iNkz +Xþ"a5/2tmMr̓{9IOطPc 5g\b¾ &o?뿀q (H.Q.a-">X9|^/ ߄rl> +xê&W26^ |ÚE|+p[ |Úg?V8uapȢh#z4ok}Ӭwy}51-Lu#4;Q`m&ͧh#߾ i۷K +WI3 |09;Yy}3W'k=ݻ{YOu!Yap}K8ĪɠY(=u9<\j$]lW]t1Y{#B]"{'+9qm+GɵQ=rv @LLNVO~C֥GU? -nAJ^w'|(P>кԾFY{jי6fɽNh-h tX+JV8sz~*?zprun/|}7Qy}+̺3QַCt(?^YM^+-^GyQWZWifWƱ \푾No '^{rz'ڗJx'oDx}r^Ew5yxݿHihg^_k2Uj觎B]cSGNS'.NOti|=-i >'WD~^L^~<@`]T$J#|;~!G +s#89t94Kq6Wd쏌yF_J,$r5v^b`Y̰(rc&W*M5.2r8g[cWJj:5%TdjO\ -gh|¯^O^Yph|,WᣁO꬞p86Nc-.] + YU=9k^bjܑFGH\#~&^I/0"Sx?s!Wx6q}#% ><xoUoIHWQM-^ᇀwNJ|X%9 G{%>JG_S;ĽC[x!ƽNß%j|qw_g7oUxqytqyG,vx#ߧ.=7 +/cA24Bx@gjd%9UnhOU})x6FNIL9%,g3z&TF~p-#] +?xD:i{r$9*|o ުC-}S +|i3Oo_E_ƽ} +_ l'TxF~>R? y#?V7Jq6$(ă +/Oi~/%F~ +%%>F~W_`O'gOTF~W#n'~ +#eF~I_O<+`x;S + F~➁|8CIלR-ؙ%3e~7 gI |;|I<iFn +g&ĝO5|ă(l@7|~x'Ç8G P?x!ƽ=ICиxD;|oS ^o_-Hh|Wx_P/xDM7^$Oqo^a|T[ԋxDO\ǿWd*-c#?/~GŹÀ1G%s>IU6"PSBҸE9 x Ux_{8x=*.{h|VXT|K-\w.-,W?qG$]x!V|ƽ^ۀq?7H _]7(%[5B|_Wk'ǀ?cw\? Oܭч/7*>S0ashC碨[yb3ggzv7T6딹/&%s뒧s]M]:o?s'鼹)yvBC[ݿ5|9aG2sLu0}6pyINg[kبGR%3˽Ц}.GX8  +[,.<]][tpltUI>MDWqRF#@6>;bnCv'ݝ$eχzX|Rns9WF>/^ m՜p +~"ȶh؛]gyκyvݝ/K[ yߙ_ęgqKY׶?!(isyУc8%tHɏ }Wm'$7-ކٮҎ{'Kx yF )<#Jr/FvX&ͳqqvXd:"-5ݝ'zTw:4)nݽUqlS` J/{.Y^r4 zl/܎ɏs=?#챣feGw\CnKmw;ko8)u4oR{a}R)]T_gwD@L;^<""WH1 tMJ ~'g~w4>(">=_S=`tM,u\/̺ $,.EzGhtMhA%9"#ojq5ڷ) oC|b7uׇH=ek@k_s q/;>Wk:v>>x |(v%;x5䌂U-[mg sjP}akv~w+Ra5J}di}t>'j ;hc~Toȳ|G?z-B ʳ6Iy/ec! p@]t]ώ >p3l5HSyY<m|a,..Nj9y[[v:01c@B1Ww:[gLh~ +Nڡ;S(6XD꼣uޯ;ʼ=:>9MbZ~ri9Yj9߳|"ENUNv,ʸ"|O|mm/2bPW"ecYvT囖"ecMv=B:ଏ@Oapkĺ]bUK9aƎcGPcww*mգrgt'd'̭ܣ9Y[I*xvC;W# MbS8}˻WϿGwŘ{3\ |!E(/Gd/!ʳs|ev5zo΁>3>ڪN^bMG~Hbn[r}GSncO^ u8|y.q\)uЙIDZ^XU`*J"o#{2!vfHhJlɆvV.tБ!~+2?ۊ` {3<-#>2{ 1Q-Րs]~u>:z纝˫yӳgee-fgM b+F>y@-B<\\\][[za^ssxَq" O\}mk68 uEDX2h["#ov4u(& 4oNdD~|i"٢?&w&fb\/0gN!kz8$6RbLg}Bw:ۃyèc!xX뷱aUg%!?3 R;{Zx`1v&S;ms|>c qv߂DhL"Zp+TpWZQP"O8ğ;ĺ\~LS /Os]kn=;vOG +h \֊o:SYi5/\g^5t`83BMߨ#Z'XF gGʼr}qkk,O ,Ʈ&nb$ts(LQ/_xsO[,΀s{0{DsOК|+`:sZ.Cߝ-wnO]YSP&=/»#\U01K:^ xk7|%72{=].~M:~"C]e|\OPY8jƵ()P< +@%=rlhM)N DC,B;]E#>D)]]cQ>۳-s36&J͢?gLl[ZcK9^v+Rnk;`]괮/f{ !iŐ8CW1$C~Y%tI0rlq.Ty>JSe{'{K`gϺ3Q_3&O [/\3.wKS~Gqx4euJ|<ކ[ոr{YǺ})5ަxk&?Gzԡ@θ +c^2dcWdRjL|8q)b1s2s2։ck!ۏ}!XV +1m]xZ2رҍ`]C:tAx7qYkg÷Է1'XC{\j. +R O|0+oq .K+<|Z1ih՛ Y3w%\“ag1g _lӬW@`|4p'wFpcwg5.C.HnD^ל5s upM[57ܗY J:ď[c#\wD +>>縲ҍ|:'\.\(%źE&&[SbNޝyjllBvsոD~aNQ&F쏕o3EA0m +20>h=kEٵTV!X[]?Ÿ~qm[?Jg դЎn[_袟1?w-rk1/Y\'L!86=J==Jm]޵99 ebxZCG)]*#;6`crX[3#Wl.>݃}B_܂y XG։wÏ.ݴ:^Ͽp~'Ҏ~PGcj'T#øN0G@'hz0ƷU2~%ݝX7\uuo棘rL<߈WM{I=0Vyr^~a>o9h_VB\xuaG\Dz=a];KE;A=[2bu0W޹a1ͷq>iUGk45Nu +VCC +W߽ ,67꛰WӾ+0xわboQZTߢwyNk{8~Yq9^P Y96w 74q+%g: ˎ{7m"yq{uvWj?ƽ%70yc٬3^ ?5k\ߥ؉؏p܁M\>p;֫bpu'z׆7O5bHgcI}},pŵlu#rfY ޻چIpGZ<êuPMWLE xk (-cʹMJ,|_"Vku? s-ui9+K fL  yH@_Jl le?b_ z:Ƚñ&Cm}A_O5㻆5~<b}<(/ g߿8`hdbwvVv}37>ET[¾S7l?לUq\4 `q/`zik=3w6@`n4ħƯƁyYC2Gfl)ۣ^ wV}~'ڳ}~:qVe,Z3.&)}`4t>HņB|Qӳ]=n&+?D5I]>k,n!c#V enIo9L6X䃱rݛiF awT;[FI堭v$ih(ǴzÍ_=uF: #Dڿ_ +ݍV Rwupq^\oFNBw>}c lGJמt́,)8";eb=kȷݑeQGg"6މ@zXigWПৢs%BX&η|[~`< _ȳ ೟(DE56Ěלn q~Av|bT#.gb<[%(.6q/pRB_ MExa`Gx +vqC F ./'I^?5"- AwT%K#۹\qbn<'1 >Q-'|-x YKX~L<]Et +=(ܟ'=Ρu+DA3xEXsC,^p i&M}? =7`}9)=յ ׋p5yR1ߞM Y]E .uF~&h DFLi!\ e"/BOO׾ߺ3ӵ}wo[3]oEe~i2bef_c؇o[tJҏH?F!X~5Uoy1σ(/x|ꠟB}A??[{C mu9s{'燾S|ۻNю΀m,cnthu 䅝;p𖓳o!ۂ6v(ۚ%mەgqL䞼vڶCQmvwON#N_;fN9')iW.:.n} .oCwǠ}@ߓ[T;kܮヾo湪 Iޑ#n=\@ׁ ]?u)kt]/zZׁ~GǺ94ٿ]ݿ:OlmK蚿yӳ61ݺ76e?˳{veF;?~{_ޢM% 9x /u]YӱA<1<'\+a%xwo['S7>ƶ|uG17b[;LjXmBɎDZL=Q9dJ;_/xrÇxxM$N"^)8z5^K7j;qT;luxegL}hljmP۸cqgE>j93R`Wg7L<ȳy t,.3a.cVOTN?=C9,Ttk ?כ8Ds`\rRn|[n +98G͹1(2<|Iz?Pg_p뎳mpپ>uKfM`3~g-MoU;߿a>ɵ\7ߺmLh3G\oQռp7!uT7ڲޙ':HXL]`2`Xbͩk\o @?zp]2OT}6tIWR&r~šwD Dkrkm +Αch/z6*sjh/?g7sM}n\s5k ȶ(ݶ̺ݾhofstCl݁IVnޯoN ql,UgMu +}ob&3Udzܩq72@ kFLd\wwƝc;a-y'z+\ٌY5=8pqfOΊ3߂z6Lg΀͛uROy}T1|1+-Cr}BG6PFpjy6։2V<ͣY%Ҳm''2}sf\C kv!Z!C]8f֕R>.|P[ƅI |Qƕ:.D/GyMs>|_9(w<)(6h>5p)}0~d7N-}yF%#FUm1xgh~_); +SxYIeRMX T]X?(ծ/_;hdg (?K =ͼwdA:&{G|(7;sd20|yr9JgoXgrE+/#H{$")M[L36QWoR]5dA$>P~z&տo+Yzk/kP*8y-hSDTh*,cEM%Bڤ]z[NjuƮGvu< y}CL~9Hƍbߣܵ')ޭ~sr9In圦 j>C3@}8 !΢k2\v\#_M(Fcm{>zC}z#wyC-Lj[1_<419^d,>9Ze}~}:̿[1Ypkp@oreCƆ>sǩÔxΎaۖψ[tqZ m2RrgY)e} +O '/GS1R}y+;և6kT[a tzţbKۤM6-ֆ["oْ~-\*z{ΦNo5li'7 Zo͸{m99^݁'߻'vMPn__X={U:?=[O6Vz;~XVC*c[O2Zo=ؓߊ[R-/O&=[OR_hSmdB]D|O:qK@yAnK.9}omym1Oaʾǯ<"@:́v γ ߜK39;h"z!ƦY1fq@jMX߿AlxL t.~wFz跰sj mi'?k?—CM=H:JCES'^,=%TZ"௮}&;Ezq +אAݡ"zLHD43ߗ#Ml̑|#EAa8q@#ڀ Fw>WYD\u;~{J=H[D !ߣ]]=u:H7D lu|3t"zy126fLpw{%*ڠW|߅yɈ͉y=Q+A5:Kr>^;Q_b؈yD߫4?M\Ԓrn<8/KFmpK;aRe?;k>B/g/xS +N9E ֋2R gYP~0RjSʾ9M&*Q` qϙLg@gc#G=xSEM;^I=|?gQ*='t\j"l069 ]0I;q_4q=[3қ|1Nf"/!G?aT[9r9^!ǕǗ̈,&Υ%9!ߛѲaRb'NPr[4(/F)ř(;H;wzۤ= W`c(YXN>¹!z"G +eԳW冿yCO6xe=zPpl"bйvM[Z?V"fE}dzs{v e.YϬm~#CGt{hKjG7cvJ{ܣ#-=PwgxOėy ̱WT՝sl<f,]|?b_Gty >Nj̳OC8޽oSfmo7ƶTGښBέ ܚm}DS/׫\wk(sY?2$Wo |8s\_L^{.D[LAW(/W,9ϛ6}MyU'ZӰQXL,oS, #/CEC;{vn` .[ vּKۈl˼3}1˾^IZ }OoA_isu se苇`;1+xEQ7 Qv eyQW['^V91Ns6율 ,ou0o)~*s 'dg}ÿ!'w}~/?[?@jGߨo?wzu:.)}fo7?)='P/Tfnƚwo@='#=(?KBwOt+;)Y_~'tܔVCNRuZuF|gyz'uR*>=ai>oTdo5?wbYLͅim*lߝƋuG:ΏG9%'=Q/<Ǒ,9ו}}q$邲~q7M}9|ꃶ6z G4q?mkh.Oi~幑<rZD?@﴿V!?/Jh7nޑvzB ߷ׄxE>h}+~AX}SӼm}[6s.qx|\w[ ʪOWzBSПۈ' ]9gRV~k1yTwWyv6󄲇 +e9[Pc>x:x!1S~OEh.Alq¯6DI?xTMh)!ynVss}^qVZ-}ro +W ߧf>,xq;x^pa߂H>®?0+$eS.[2 +[$/OpNmw"?K[Bߠ?&i$g4=csIQSih?b=.0Ҳ3ez wno}2c EgA939)ϒq>Slb^SmNHSr;NWqc,nb3<+˩b.#ey[jjbgQ(f׿y]Nh(i iV]<(aOyዏ=}7OjK<=?וiQ~gͱ=u!7A;ǜ}ft%_sD}Ո46~߉X7y~(6%WWo 3Eg7ک?b Ecv]V8v[*Zp@pe%fnc5yͱ~낿zG ܃g=-1>[wo::n'awoK(N~w\?costg>nQu˗u[J;֮7u_Dc%MS=!-틸e_S,>D};US6߉پm<;os MΜM{ 䈦m4!y:?e Wί=jR|?BrDrqutwFo^s?C鰾F܉>V5_zsz[܌ks~Azv8_ |{'1Зq ܹ=.nbL?ǒO5 ( ]ux6곘sDgQBqn8|d(ѓX7}~/_g릔wA?OwX8׋P~V;sj<uiE][oLSkyO@sj #ؖ qz7c7op43N-"m`;6 +@uw3k{ }0S3]m@|э֭:\%F\s|NzhK}yp%/׌u,iX~Á{GiibN~HA'_0NpdlXVp./u9rot0.0e?ߨlFp. +y5J6~]RǿכXi-'7@QEȍ1Aw;ӒJu~ Kp0椰Qڞ{ә1إ-bwo~Ebۆۯ.-~q zgMp. +nVcN΃ kJ3hgԹno~l~ +ߗi[&ZYcji "k3ېG3J%ESYg=Qp'~> [v9!هr~_}סq q~b4uͥEImv|Əv7; ϛlGBʠ^kwؿdY0)0w&_'-&xEx7(٭\E!)c^O,sr}ÚOfh=B5ENkN0W4Oο's(vT|? /kr.|X-^\GDO̶S[eMloi~ߘ-c` r\UVM8rt 2~gkJmS-#bpwΞ0uB՚u†c&!i^'{Am ~1Fòc?~Ёew~~^,3Q7Q_3_YFמ*ゴ5ECg3c۟ރ7bΤݷk[T<%e{ ͈nkOH1ߐ|C!U#svQg ֠-9nlBOhE1nq;᜔&㼕W|$oB-ls!mL휮9Gc>5l[/ ۜp iٲ s-E_n +=-Ž-=?tY[L{>gkO-#]W.Jц[mclgύ7+um11QQЕowoz>cFa9lW&^:.ΥE2.^]}pQ凝6> +%}!Gi 1nɟ Ps4rmёqe/ykoX@^ˢƶ,hc=ц>翲.Vr3]bUYDG]{A[4~/߽(4j`W|&iᮢQ(9bϯ +mk襟w ֽ$smqk dmu[l3[:}.F!tܞ s5oiA6`׆^#6݁1ٶ+:v}+ + IEkʀt|?b7dž_W;&޳=*fE4X _|9"f-U|lh)dcD{}o>ڛ|uEy6{6l-h ؾljz lgGygx{? ) HGz3қ.ъ̓g̓3׊W#hcd~?B/pm]-^aLF3s|o]?9_>+U?w>̕'SmOw|; {N[仦gEm|?o+o5]G=_q)}I;|-?i{o^pzwo9⦠?W_?knGj/cG.+{aÝ6NzGglw/} M?]US? Ō3[>SA =3f ǚz7_)eA:֔fO]lgQ9B qֵ}.q6SEnͼC߼;_\w_]V>{ʈ.L|хsR'2ٕ5rMfʥV^VSY鯚V^宙[Z]qG\B(K/-Ygά,+]]^UTg^S>{Z W⺶bvKm}u]1|\,Ik%3+fO+|?*gVK?|Veռsj*fUᯩL&UfٵNeWOJj:q=JH\PY5jtmeWhrU~_5PyJ!syeRemk3*&֔O)- %WN9E߯:,/U9|&ZqT.r?Y 9USA=feU\ +XB VGXW3UUc +ZƯc`?br|12W<~Xښ95 Ɩ**bv,zU=㥷]#.WrՔj^ Y^Zi xMb,T]WƯ)TW̚/)S:gfh}umUN<ת}ϝM dMBL* 7qլ93 N+*nӡPS"ϮT}DUFeq9 _HS-_[SYuKCc*ˮ7mU5VRPakK\t4Y-VUVIf^t)wrԩUk,TNwqX[ Ӧѭ){ۤ+jʦW4BrI +t4kN#Ŀ9S'N3ހV>ϤMc~yո ו?z̤IcJJp0I?g49+/GyAޟ5efd6kUZQ=g_Vm׵s-$ήYSV,촥RRu-UkT]=Ћ zH_avfwUX^N$GyUJ`+5D͌яZN7u?}TW)ոcsiv=J'TT*'mK'/@D! GUBsUW +Av(GLJo%x}&Ɂ+(L)(s^5DENXCWN6&pcMFQwTt +552$~v˫7a0_Rijf-Q]Ʈ+&w~r7Q}S~rZ7~TUUV}F3 +?wMN7{6|T-!R>}Ɣ2]B<ڗo7%oǾ +%+'jJXaD>D3c W9Sjv&թV3ܯ)׼̞⮜:Z k(otwEuv>S<$pWgTm) }ή3rJ1qݎs슚 +@+3*Puc\A+vsJy7Ț|YB549U5jh|QԠݡ\kgy]7v [?yhSSϥy4}74;S doѤrB"%x ҥx'r9_||6zhar&'%w@<I=R9\$%{D2o^Q&LUz6H[ϩдd͵#Z5:iL4mr4|\5ZX>c C}O blBv-j'R=Ӓeq5BE~. Nvlo~_FBjUoΙ+SmDucs%G@MI(,jou\71EH&S(kvLڼ[KܕsluUɵ0UnW/f%eקB2U>Yݟ]+k{3~C-oKc¸=ncЉ ƫ겫0Ot$햞j]%ѵs:sXVE5f98bk+gOQ5ZQeDϡ0%v,ȫaʕSm 6mHSz\}{6KNn5ډEh2K"4ovX`~[աI[T+8r7R?٨ZQ^Dm-O]_^Z rz&B55% UKK#Ӑ-pOmA(06s?eCWΜ^7G̖SjL;+p'ұփ+ZL1v.m +kx!)wRǁ8>\ynſ Wo)ƌ*%"xjgMncsVE,UjBW::Ԋ +֝DWv߾^!SS*eqIAd8-1˹#8_˱t(\h=[U`R$)0iF!9'igc٘NLZHg r̯Fǯ7E:Qzd +[qgG^jgEJ~O/wYiN븼sՊǡIćpI,:/H&Jl*‘ӤcrMyzFyz+jDZϺPRCvbBLAg:Q1!Nȸͩg'gV״@BK\.{5Jp2s.")ʥ f~\$ Sf3m}ߧlj3-q3i@3{ƧХjG7Y +/YΔ8tl dzCD&y:?Cʫ]fbK+tt\] xj:Rxa~'~܉;>gKO%V'K4)Rmo|ܒY:5Ԏ^:s2i{~ͬ,j Alijz*g]A2<Ρ?z*ިqTU.l[==.^WM3SKEgKu^Z_R]=ȣ')zՍʪNvEM2SO=\RN.'qWpkێ,|Jm|80tU)yKR cǸՄL-qHYpS#U"us_]|{u<] dOi#Z;!>; ?-1XT-bE>85WfγArxQ\jNQNr_w·oswIӲI/)a_ޫ&L0/N}{km9j̕+J OE'U>[L>dtȐ%Wsd瑓$"pҩ^9cm+nd̸MyM r~io~\TCI.3gΊ/.%vS {fjbf_ĨP9~C-?vLuVLeeJah2kg1(Gf"7 $1*]V[UEwQÞZ[L\w2c2~ՐIzc=SMM9Ub2:R$ W/E7*Z+N6U3$wBt>T:m2*^v\vj_Dssc=WЛpӫXhJk*݇ΕJсn>ڟ5AB{l54!+9.%>Cz%~=xk,V}E">7">5#ͿtH!}Gb;p}#/NG*E>2bӑE#eX=~>H?Cگ3<鳣b ϐD9@zY ]t}!MccH?2{נ]B?b H?C@1!یmb,6UEX>FGچL෠ H4X> ?Fs2bH! +bLA{ q>A@/H?-% }zH_B: HE64^tЌXHD@N tn C#ՠ|݆C=3@> q4!!݌TA(`7Hz !_c>/6 @CHׁ@! sꐮEARc<'kzb!} >b7Z?Ӝ'HwlC~#G@R>d==݅Q/! } U,A:Y7"nA +iϐ^孎Evt/BH{ 4H"G-G=k?}7ANၷp}=?t1Q=ѷ{ bȡ;m.Ә zfH{U9ÿm$hMMw.GS$h=?0#+ӵ% h%S-%wzւ݁-3K7:LLx]F/ɨ CtY`Cy"EK;?k1OU I Cϐ2%Jc:>:^L($z[%YunnGK?x_G]orZO{K~$Ѽ1Kse彜Zu^ Ҵ'%'~ ?3)Q4uXd^lG?X*]&뺸}M0u "!VKm!k ;v⼪1S0{vy;$lCGBΆ:** ZE-RD[kUV&YR ފv]O> vf*Wss>sJ؋1UHj>l;Mo aoK25M`㏙b; y %SX̠TphFc9EC8gbGbjjو]~$:+}iڵgѪ^(nbQqʦ~\2!:er1oPfXxOo}͢v +w% Q 4${>{2c^bgQkkU!I9iEqCO6x(ӿq e!%|W Kd/?<JM'8t}sӐ*䱩.85SZzGv? +K b.tNgK (F9TP24q6=S+AzpǭVP?K]2/FAnWA]wbҧsX<RlSȤ#{C{Kz..޵O1r bdD; rNs3_7yҜ8D$&*2#hQMq tMXwޙ^u{㼼}p\e{L#{#U)^Ǚ~ޗ`;z箏6{T<_%tRjȓy?w%;}@}]P(xZ$]~[3`:wE亪qyrT\QJG<ڍPv"yDU:"Y8J I(/4!S ?`\L}݆o2tDqDw:L>>*ԩ3xOMOJ<[s6PSy?K #S9\ʰ8aۆ +ܒy21ⷋDE(4Fgm#16=Ek0ܝO7z3ҋw?ѳ.?恩Z"5yrZ3'q vİ"?Wܛ~B(ϢJ6BN;ͪR;quh;DxUy0V?ßJ^Sܓz&6nN&@G#08IWD=\%Nj܎xu>G:_rr + +Q6'|uE=k;2=۬6Qcu]M%7؜"Fn+חP{m:wO7=M+/y$^(]OҺ4T2 uG%n{6W&Fp.!w.)jkϮ}/*J.nT)}SWzьaUUJ} "[G|vƫ{%ۡ;cc:r\_0qlm(nﳔ<9)%Aw"רv/x+'?,OѢ+pxXOn{cW?) b"Ѩ#Fxjmcu~~2`ퟌf}9o @hBBpDGe3#C4~QOhu =0 xfm`vyMe b[6˩w, J#l64-ٳ6dԍTN3ʨM)&㩠'lAqN Ă]|,%:o`/V>uly֞OWyϯX,` +\Yͱ~/ZF Uűyi!F[FV~Mn .l>?[2B?aocgƏg 8l;YAeH(>.'.*!4b+i/M_ qHmYW4Xڹ$'˪WIMuVr?7X6ύ$`q2D.ᐭn6{_LEVAl[6c +؈ڃ |`4fI~fW@W ]oly e 8mtJݗ0gg8$BE_qQ5~=Lyè]t+AõQ^A+U[e:H3F1Iy6a`f&nί٤Rr߭F-,*$i/gMcίBIO1|8žɀK~a1I +q0O_Ih%oƈR"{ 'Vu_e7eT^P./YP^%UjZ7q=ʲ[N*{?IUl)nxc- |A:tYs.S퍊]<[5Vtci+-󪭓ԃnEYQ[$Ӫ=yYjgU/~} +/Dbw[(<&ùTeeU=Wԟ ^)UW}'^5#ɺPː\CվRmm˪=u  +ߌ+*tEe\|_|*^δַ:r +r\ZE3۷ +(Z|-Ν99y]|W>c9͵-M-ϰsW3Ѫ=\jޖuKѯnTRƺ3e9-5m/ʡ˩nhҳg+y-GrMMߓsgR4`3K -infx):@#ïRRz7&ubM|qK +㐎 .㚮w#T5qQجB i|wt}G5z i㚮'Ǻ~uյVbߣ:nZyo`LD_ZźgY, F]Y,~U^l@ubŇD}ftx+wk.+(1\.T"(DPP5ׄaJדǩ)de5,,ӹ5/["}qxWWl)eYl&<' /8` ӹ02tQeB-^/TGzRFwEm@yVfDeRK eY)Y⦥elN->ْ>Nw_J]s]l! li!d^ ^ݱ~u'i d"ADO;F`ʀ=*B'㨄˗pD[gU0^ )}eҦ]G28.`[dj orj _;+^*< @}`CbTdؐO؆5<%H%nPtt*ohKv‰`hdЮDT/B&c[R]z+6ҀNd]0%B݉OlEA">Bk!}> d"4ݯמzꩧrT \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh new file mode 100644 index 0000000..8468c5a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/install.sh @@ -0,0 +1,318 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +QUIET="y" + +while true +do + case $1 in + --quiet) + QUIET="y" + shift + ;; + --install-path=*) + INSTALL_PATH=$(echo $1 | cut -d"=" -f2-) + INSTALL_PATH=${INSTALL_PATH%*/} + shift + ;; + --*) + shift + ;; + *) + break + ;; + esac +done + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [ -n "${INSTALL_PATH}" ]; then + if [[ ! "${INSTALL_PATH}" = /* ]]; then + log "[ERROR] use absolute path for --install-path argument" + exit 1 + fi + if [ ! -d ${INSTALL_PATH} ]; then + mkdir ${INSTALL_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${INSTALL_PATH} failed" + exit 1 + fi + fi + targetdir=${INSTALL_PATH} +elif [ -n "${ASCEND_CUSTOM_OPP_PATH}" ]; then + if [ ! -d ${ASCEND_CUSTOM_OPP_PATH} ]; then + mkdir -p ${ASCEND_CUSTOM_OPP_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${ASCEND_CUSTOM_OPP_PATH} failed" + fi + fi + targetdir=${ASCEND_CUSTOM_OPP_PATH} +else + if [ "x${ASCEND_OPP_PATH}" == "x" ]; then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 + fi + targetdir="${ASCEND_OPP_PATH}" +fi + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + has_same_file=-1 + for file_a in ${sourcedir}/$vendordir/$1/*; do + file_b=${file_a##*/}; + if [ "ls ${targetdir}/$vendordir/$1" = "" ]; then + log "[INFO] ${targetdir}/$vendordir/$1 is empty !!" + return 1 + fi + grep -q $file_b <<<`ls ${targetdir}/$vendordir/$1`; + if [[ $? -eq 0 ]]; then + echo -n "${file_b} " + has_same_file=0 + fi + done + if [ 0 -eq $has_same_file ]; then + if test $QUIET = "n"; then + echo "[INFO]: has old version in ${targetdir}/$vendordir/$1, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + + while true + do + read orn + if [ "$orn" = n ]; then + return 0 + elif [ "$orn" = m ]; then + break; + elif [ "$0rn" = r ]; then + [ -n "${targetdir}/$vendordir/$1/" ] && rm -rf "${targetdir}/$vendordir/$1"/* + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace or merge old ops $1 files .g....." + fi + + log "copy new ops $1 files ......" + if [ -d ${targetdir}/$vendordir/$1/ ]; then + chmod -R +w "$targetdir/$vendordir/$1/" >/dev/null 2>&1 + fi + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} +upgrade_proto() +{ + if [ ! -f ${sourcedir}/$vendordir/custom.proto ]; then + log "[INFO] no need to upgrade custom.proto files" + return 0 + fi + if [ ! -d ${targetdir}/$vendordir/framework/caffe ];then + log "[INFO] create ${targetdir}/$vendordir/framework/caffe." + mkdir -p ${targetdir}/$vendordir/framework/caffe + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/framework/caffe failed" + return 1 + fi + else + if [ -f ${targetdir}/$vendordir/framework/caffe/custom.proto ]; then + # 有老版本,判断是否要覆盖式安装 + if test $QUIET = "n"; then + echo "[INFO] ${targetdir}/$vendordir/framework/caffe has old version"\ + "custom.proto file. Do you want to replace? [y/n] " + + while true + do + read yn + if [ "$yn" = n ]; then + return 0 + elif [ "$yn" = y ]; then + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace old caffe.proto files ......" + fi + chmod -R +w "$targetdir/$vendordir/framework/caffe/" >/dev/null 2>&1 + cp -rf ${sourcedir}/$vendordir/custom.proto ${targetdir}/$vendordir/framework/caffe/ + if [ $? -ne 0 ];then + log "[ERROR] copy new custom.proto failed" + return 1 + fi + log "[INFO] copy custom.proto success" + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +delete_optiling_file() +{ + if [ ! -d ${targetdir}/vendors ];then + log "[INFO] $1 not exist, no need to uninstall" + return 0 + fi + sys_info=$(uname -m) + if [ ! -d ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/lib/linux/${sys_info} ];then + rm -rf ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/liboptiling.so + fi + return 0 +} + +log "[INFO] copy uninstall sh success" + +if [ ! -d ${targetdir}/vendors ];then + log "[INFO] create ${targetdir}/vendors." + mkdir -p ${targetdir}/vendors + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/vendors failed" + return 1 + fi +fi +chmod u+w ${targetdir}/vendors + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +delete_optiling_file op_impl +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +upgrade_proto +if [ $? -ne 0 ];then + exit 1 +fi + +# set the set_env.bash +if [ -n "${INSTALL_PATH}" ] && [ -d ${INSTALL_PATH} ]; then + _ASCEND_CUSTOM_OPP_PATH=${targetdir}/${vendordir} + bin_path="${_ASCEND_CUSTOM_OPP_PATH}/bin" + set_env_variable="#!/bin/bash\nexport ASCEND_CUSTOM_OPP_PATH=${_ASCEND_CUSTOM_OPP_PATH}:\${ASCEND_CUSTOM_OPP_PATH}" + if [ ! -d ${bin_path} ]; then + mkdir -p ${bin_path} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${bin_path} failed" + exit 1 + fi + fi + echo -e ${set_env_variable} > ${bin_path}/set_env.bash + if [ $? -ne 0 ]; then + log "[ERROR] write ASCEND_CUSTOM_OPP_PATH to set_env.bash failed" + exit 1 + else + log "[INFO] using requirements: when custom module install finished or before you run the custom module, \ + execute the command [ source ${bin_path}/set_env.bash ] to set the environment path" + fi +else + config_file=${targetdir}/vendors/config.ini + if [ ! -f ${config_file} ]; then + touch ${config_file} + chmod 640 ${config_file} + echo "load_priority=$vendor_name" > ${config_file} + if [ $? -ne 0 ];then + echo "echo load_priority failed" + exit 1 + fi + else + found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" + found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') + vendor=$(echo $found_vendor | tr -s ' ' ',') + if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" + fi + fi +fi + +chmod u-w ${targetdir}/vendors + +if [ -d ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/ ]; then + chmod -R 440 ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/* >/dev/null 2>&1 +fi +if [ -f ${targetdir}/ascend_install.info ]; then + chmod -R 440 ${targetdir}/ascend_install.info +fi +if [ -f ${targetdir}/scene.info ]; then + chmod -R 440 ${targetdir}/scene.info +fi +if [ -f ${targetdir}/version.info ]; then + chmod -R 440 ${targetdir}/version.info +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info new file mode 100644 index 0000000..0ec7257 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info @@ -0,0 +1 @@ +custom_opp_compiler_version=7.3.T10.0.B528 diff --git a/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh new file mode 100644 index 0000000..e091734 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/upgrade.sh @@ -0,0 +1,151 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [[ "x${ASCEND_OPP_PATH}" == "x" ]];then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 +fi + +targetdir=${ASCEND_OPP_PATH} + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + vendor_installed_dir=$(ls "$targetdir/vendors" 2> /dev/null) + for i in $vendor_installed_dir;do + vendor_installed_file=$(ls "$vendor_installed_dir/$vendor_name/$i" 2> /dev/null) + if [ "$i" = "$vendor_name" ] && [ "$vendor_installed_file" != "" ]; then + echo "[INFO]: $vendor_name custom opp package has been installed on the path $vendor_installed_dir, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + fi + while true + do + read mrn + if [ "$mrn" = m ]; then + break + elif [ "$mrn" = r ]; then + [ -n "$vendor_installed_file"] && rm -rf "$vendor_installed_file" + break + elif [ "$mrn" = n ]; then + return 0 + else + echo "[WARNING]: Input error, please input m or r or n to choose!" + fi + done + done + log "[INFO] replace old ops $1 files ......" + fi + + log "copy new ops $1 files ......" + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +log "[INFO] copy uninstall sh success" + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +config_file=${targetdir}/vendors/config.ini +found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" +found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') +vendor=$(echo $found_vendor | tr -s ' ' ',') +if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" +fi + +changemode() +{ + if [ -d ${targetdir} ];then + chmod -R 550 ${targetdir}>/dev/null 2>&1 + fi + + return 0 +} +echo "[ops_custom]changemode..." +#changemode +if [ $? -ne 0 ];then + exit 1 +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp b/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp new file mode 100644 index 0000000..b6088c2 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp @@ -0,0 +1,199 @@ +#include +#include "graph/types.h" +#include "aclnn_add_custom.h" + +namespace { +typedef struct { + uint32_t id; + const char *funcName; + bool hasReg; +} NnopbaseDfxId; +typedef struct { + ge::DataType dtype; + ge::Format format; +} TensorDesc; +typedef struct { + TensorDesc *inputsDesc; + size_t inputsNum; + TensorDesc *outputsDesc; + size_t outputsNum; +} SupportInfo; +typedef struct { + SupportInfo *supportInfo; + size_t num; +} OpSocSupportInfo; +typedef struct { + OpSocSupportInfo *socSupportInfo; + size_t num; +} OpSupportList; +enum SocType { + SOC_VERSION_ASCEND910A = 1, + SOC_VERSION_ASCEND910B, + SOC_VERSION_ASCEND910C, + SOC_VERSION_ASCEND910D, + SOC_VERSION_ASCEND310P, + SOC_VERSION_ASCEND310B, + SOC_VERSION_BS9SX1A, + SOC_VERSION_MC61AM21A, + SOC_VERSION_ASCEND610Lite +}; +enum NnopbaseAttrDtype { + kNnopbaseBool = 0U, + kNnopbaseFloat, + kNnopbaseInt, + kNnopbaseString, + kNnopbaseAttrEnd +}; +uint32_t socSupportList[] = {SOC_VERSION_ASCEND310B,SOC_VERSION_ASCEND310P,SOC_VERSION_ASCEND910A,SOC_VERSION_ASCEND910B}; +uint32_t socSupportListLen = 4; + +TensorDesc inputDesc0_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc0_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list0_0 = {inputDesc0_0, 2, outputDesc0_0, 1}; +SupportInfo supportInfo0[1] = {list0_0}; +OpSocSupportInfo socSupportInfo0= {supportInfo0, 1}; + +TensorDesc inputDesc1_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc1_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list1_0 = {inputDesc1_0, 2, outputDesc1_0, 1}; +SupportInfo supportInfo1[1] = {list1_0}; +OpSocSupportInfo socSupportInfo1= {supportInfo1, 1}; + +TensorDesc inputDesc2_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc2_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list2_0 = {inputDesc2_0, 2, outputDesc2_0, 1}; +SupportInfo supportInfo2[1] = {list2_0}; +OpSocSupportInfo socSupportInfo2= {supportInfo2, 1}; + +TensorDesc inputDesc3_0[2] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}, + {ge::DT_FLOAT16, ge::FORMAT_ND}}; +TensorDesc outputDesc3_0[1] = + {{ge::DT_FLOAT16, ge::FORMAT_ND}}; +SupportInfo list3_0 = {inputDesc3_0, 2, outputDesc3_0, 1}; +SupportInfo supportInfo3[1] = {list3_0}; +OpSocSupportInfo socSupportInfo3= {supportInfo3, 1}; + +OpSocSupportInfo opSocSupportList[4] = {socSupportInfo0, socSupportInfo1, socSupportInfo2, socSupportInfo3}; +OpSupportList supportList = {opSocSupportList, 4}; + +[[maybe_unused]] uint32_t NNOPBASE_AddCustom = 0U; +} // namespace + +extern void NnopbaseOpLogE(const aclnnStatus code, const char *const expr); + +#ifdef __cplusplus +extern "C" { +#endif + +extern aclnnStatus NnopbaseCreateExecutorSpace(void **space); +extern void *NnopbaseGetExecutor(void *space, const char *opType, char *inputsDesc, uint32_t inputNum, + char *outputsDesc, uint32_t outputNum, char *attrsDesc, uint32_t attrsNum); +extern aclnnStatus NnopbaseAddInput(void *executor, const aclTensor *tensor, const uint32_t index); +extern aclnnStatus NnopbaseAddIgnoreContinuesInput(void *executor, + const aclTensor *tensor, const uint32_t index); +extern aclnnStatus NnopbaseAddIntArrayInput(void *executor, const aclIntArray *array, const uint32_t index); +extern aclnnStatus NnopbaseAddBoolArrayInput(void *executor, const aclBoolArray *array, const uint32_t index); +extern aclnnStatus NnopbaseAddFloatArrayInput(void *executor, const aclFloatArray *array, const uint32_t index); +extern aclnnStatus NnopbaseAddOutput(void *executor, const aclTensor *tensor, const uint32_t index); +extern aclnnStatus NnopbaseAddDynamicInput(void *executor, const aclTensorList *tensor_list, const uint32_t index); +extern aclnnStatus NnopbaseAddDynamicOutput(void *executor, const aclTensorList *tensor_list, const uint32_t index); +extern aclnnStatus NnopbaseAddAttrWithDtype(void *executor, void *attrAddr, size_t attrLen, const size_t index, const NnopbaseAttrDtype dtype); +extern aclnnStatus NnopbaseAddIntArrayAttr(void *executor, const aclIntArray* array, const size_t index); +extern aclnnStatus NnopbaseAddFloatArrayAttr(void *executor, const aclFloatArray* array, const size_t index); +extern aclnnStatus NnopbaseAddBoolArrayAttr(void *executor, const aclBoolArray* array, const size_t index); +extern aclnnStatus NnopbaseAddArrayAttrWithDtype(void *executor, void *array, const size_t len, const size_t elementSize, const size_t index, const NnopbaseAttrDtype dtype); +extern uint64_t NnopbaseMsprofSysTime(); +extern aclnnStatus NnopbaseAddTilingId(void *executor, NnopbaseDfxId *tilingId); +extern void NnopbaseReportApiInfo(const uint64_t beginTime, NnopbaseDfxId &dfxId); +extern aclnnStatus NnopbaseRunForWorkspace(void *executor, uint64_t *workspaceLen); +extern aclnnStatus NnopbaseRunWithWorkspace(void *executor, aclrtStream stream, void *workspace, uint64_t workspaceSize); +extern aclnnStatus NnopbaseAddSupportList(void *executor, OpSupportList *list, uint32_t *socSupportList, size_t socSupportListLen); +extern aclnnStatus NnopbaseAddScalarInput(void *executor, const aclScalar *scalar, const uint32_t index, const int32_t srcIndex, const ge::DataType dtype); +extern aclnnStatus NnopbaseAddScalarListInput(void *executor, const aclScalarList *scalarList, const uint32_t index, const int32_t srcIndex, const ge::DataType dtype); +extern void NnopbaseAddOpTypeId(void *executor, const uint32_t opTypeId); + +#define ACLNN_SUCCESS 0 +#define ACLNN_ERR_PARAM_NULLPTR 161001 + +#define NNOPBASE_ASSERT_OK_RETVAL(v) \ + do { \ + const aclnnStatus _chk_stutus = (v); \ + if (_chk_stutus != ACLNN_SUCCESS) { \ + NnopbaseOpLogE(_chk_stutus, #v); \ + return _chk_stutus; \ + } \ + } while (false) + +#define NNOPBASE_ASSERT_NOTNULL_RETVAL(v) \ + do { \ + if ((v) == nullptr) { \ + NnopbaseOpLogE(ACLNN_ERR_PARAM_NULLPTR, #v " != nullptr"); \ + return ACLNN_ERR_PARAM_NULLPTR; \ + } \ + } while (false) + +aclnnStatus aclnnAddCustomGetWorkspaceSize( + const aclTensor *x, + const aclTensor *y, + const aclTensor *out, + uint64_t *workspaceSize, + aclOpExecutor **executor) +{ + uint64_t timeStamp = NnopbaseMsprofSysTime(); + static NnopbaseDfxId dfxId = {0x60000, __func__, false}; + static NnopbaseDfxId tilingId = {0x60000, "aclnnAddCustomTiling", false}; + void *nnopExecutor; + static void *executorSpace = NULL; + const char *opType = "AddCustom"; + char inputDesc[] = {1, 1}; + char outputDesc[] = {1}; + char attrDesc[] = {}; + + NNOPBASE_ASSERT_NOTNULL_RETVAL(x); + NNOPBASE_ASSERT_NOTNULL_RETVAL(y); + NNOPBASE_ASSERT_NOTNULL_RETVAL(out); + + if (!executorSpace) { + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseCreateExecutorSpace(&executorSpace)); + } + nnopExecutor = NnopbaseGetExecutor(executorSpace, opType, inputDesc, sizeof(inputDesc) / sizeof(char), outputDesc, + sizeof(outputDesc) / sizeof(char), attrDesc, sizeof(attrDesc) / sizeof(char)); + NNOPBASE_ASSERT_NOTNULL_RETVAL(nnopExecutor); + NNOPBASE_ASSERT_NOTNULL_RETVAL(executor); + *executor = reinterpret_cast(nnopExecutor); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddTilingId(*executor, &tilingId)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddInput(*executor, x, 0)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddInput(*executor, y, 1)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddOutput(*executor, out, 0)); + NNOPBASE_ASSERT_OK_RETVAL(NnopbaseAddSupportList(*executor, &supportList, socSupportList, socSupportListLen)); + aclnnStatus ret = NnopbaseRunForWorkspace(*executor, workspaceSize); + NnopbaseReportApiInfo(timeStamp, dfxId); + return ret; +} + +aclnnStatus aclnnAddCustom( + void *workspace, + uint64_t workspaceSize, + aclOpExecutor *executor, + aclrtStream stream) +{ + uint64_t timeStamp = NnopbaseMsprofSysTime(); + static NnopbaseDfxId dfxId = {0x60000, __func__, false}; + aclnnStatus ret = NnopbaseRunWithWorkspace(executor, stream, workspace, workspaceSize); + NnopbaseReportApiInfo(timeStamp, dfxId); + return ret; +} + +#ifdef __cplusplus +} +#endif diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h b/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.h similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h rename to Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.h diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310b-ops-info.ini b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310b-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310b-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310p-ops-info.ini b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310p-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend310p-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910-ops-info.ini b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910b-ops-info.ini b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910b-ops-info.ini new file mode 100644 index 0000000..7570a06 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/autogen/aic-ascend910b-ops-info.ini @@ -0,0 +1,24 @@ +[AddCustom] +input0.name=x +input0.dtype=float16 +input0.format=ND +input0.shape=all +input0.paramType=required +input1.name=y +input1.dtype=float16 +input1.format=ND +input1.shape=all +input1.paramType=required +output0.name=z +output0.dtype=float16 +output0.format=ND +output0.shape=all +output0.paramType=required +dynamicCompileStatic.flag=true +dynamicFormat.flag=true +dynamicRankSupport.flag=true +dynamicShapeSupport.flag=true +needCheckSupport.flag=false +precision_reduce.flag=true +opFile.value=add_custom +opInterface.value=add_custom diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/custom_compile_options.ini b/Increase_Bedore_pipe/No_increase/build_out/autogen/custom_compile_options.ini new file mode 100644 index 0000000..e69de29 diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/libascend_all_ops.so b/Increase_Bedore_pipe/No_increase/build_out/autogen/libascend_all_ops.so new file mode 100644 index 0000000000000000000000000000000000000000..f9b9b89a8fdb3d7f874bad961f443c9dd7cf07c0 GIT binary patch literal 988080 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 z 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%0DdZnudX8o{iEahVfT>W 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 M6Yb!E;OoTy2eX88+5i9m literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc b/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc new file mode 100644 index 0000000..ea46ba4 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc @@ -0,0 +1,5 @@ +#include "op_proto.h" +namespace ge { + +} + diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc/op_proto.h b/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.h similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc/op_proto.h rename to Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.h diff --git a/Increase_Bedore_pipe/No_increase/build_out/cmake_install.cmake b/Increase_Bedore_pipe/No_increase/build_out/cmake_install.cmake new file mode 100644 index 0000000..bdbf239 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/cmake_install.cmake @@ -0,0 +1,81 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/cmake_install.cmake") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/cmake_install.cmake") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/cmake_install.cmake") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/." TYPE DIRECTORY PERMISSIONS OWNER_EXECUTE OWNER_READ GROUP_READ FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/scripts/") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/custom.proto") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/version.info") +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run b/Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run new file mode 100644 index 0000000..75e0d66 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run @@ -0,0 +1,953 @@ +#!/bin/bash +# This script was generated using Makeself 2.4.5 +# The license covering this archive and its contents, if any, is wholly independent of the Makeself license (GPL) +# 2022.3.19-Modified the MS_Help function and some options +# Huawei Technologies Co., Ltd. + +ORIG_UMASK=`umask` + +CRCsum="2149904594" +MD5="00000000000000000000000000000000" +SHA="22a0c049f2277d542e559f98241cc0e440dfbf75423bd78c01101363b97e96e3" +SIGNATURE="" +TMPROOT=${TMPDIR:="$HOME"} +if ! test -d "$TMPROOT"; then + TMPROOT="$PWD" +fi +export TMPDIR="$TMPROOT" +USER_PWD="$PWD" +if ! test -d "$USER_PWD"; then + exit 1 +fi +export USER_PWD +ARCHIVE_DIR=`dirname "$0"` +export ARCHIVE_DIR + +name_of_file="$0 " +pwd_of_file="$PWD" +label="version:1.0" +script="./install.sh" +scriptargs="" +cleanup_script="" +licensetxt="" +helpheader='' +targetdir="makeself-926681-20240525184308" +filesizes="104847" +totalsize="104847" +keep="n" +nooverwrite="n" +quiet="n" +accept="n" +nodiskspace="n" +export_conf="n" +decrypt_cmd="" +skip="671" + +print_cmd_arg="" +if type printf > /dev/null; then + print_cmd="printf" +elif test -x /usr/ucb/echo; then + print_cmd="/usr/ucb/echo" +else + print_cmd="echo" +fi + +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:$PATH + export PATH +fi + +if test -d /usr/sfw/bin; then + PATH=$PATH:/usr/sfw/bin + export PATH +fi + +unset CDPATH + +MS_Printf() +{ + $print_cmd $print_cmd_arg "$1" +} + +MS_PrintLicense() +{ + PAGER=${PAGER:=more} + if test x"$licensetxt" != x; then + PAGER_PATH=`exec <&- 2>&-; which $PAGER || command -v $PAGER || type $PAGER` + if test -x "$PAGER_PATH"; then + echo "$licensetxt" | $PAGER + else + echo "$licensetxt" + fi + if test x"$accept" != xy; then + while true + do + MS_Printf "Please type y to accept, n otherwise: " + read yn + if test x"$yn" = xn; then + keep=n + eval $finish; exit 1 + break; + elif test x"$yn" = xy; then + break; + fi + done + fi + fi +} + +MS_diskspace() +{ + ( + df -kP "$1" | tail -1 | awk '{ if ($4 ~ /%/) {print $3} else {print $4} }' + ) +} + +MS_dd() +{ + blocks=`expr $3 / 1024` + bytes=`expr $3 % 1024` + # Test for ibs, obs and conv feature + if dd if=/dev/zero of=/dev/null count=1 ibs=512 obs=512 conv=sync 2> /dev/null; then + dd if="$1" ibs=$2 skip=1 obs=1024 conv=sync 2> /dev/null | \ + { test $blocks -gt 0 && dd ibs=1024 obs=1024 count=$blocks ; \ + test $bytes -gt 0 && dd ibs=1 obs=1024 count=$bytes ; } 2> /dev/null + else + dd if="$1" bs=$2 skip=1 2> /dev/null + fi +} + +MS_dd_Progress() +{ + if test x"$noprogress" = xy; then + MS_dd "$@" + return $? + fi + file="$1" + offset=$2 + length=$3 + pos=0 + bsize=4194304 + while test $bsize -gt $length; do + bsize=`expr $bsize / 4` + done + blocks=`expr $length / $bsize` + bytes=`expr $length % $bsize` + ( + dd ibs=$offset skip=1 2>/dev/null + pos=`expr $pos \+ $bsize` + MS_Printf " 0%% " 1>&2 + if test $blocks -gt 0; then + while test $pos -le $length; do + dd bs=$bsize count=1 2>/dev/null + pcent=`expr $length / 100` + pcent=`expr $pos / $pcent` + if test $pcent -lt 100; then + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + if test $pcent -lt 10; then + MS_Printf " $pcent%% " 1>&2 + else + MS_Printf " $pcent%% " 1>&2 + fi + fi + pos=`expr $pos \+ $bsize` + done + fi + if test $bytes -gt 0; then + dd bs=$bytes count=1 2>/dev/null + fi + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + MS_Printf " 100%% " 1>&2 + ) < "$file" +} + +MS_Help() +{ + cat << EOH >&2 +Usage: $0 [options] +Options: + --help | -h Print this message + --info Print embedded info : title, default target directory, embedded script ... + --list Print the list of files in the archive + --check Checks integrity and version dependency of the archive + --quiet Quiet install mode, skip human-computer interactions + --nox11 Do not spawn an xterm + --noexec Do not run embedded script + --extract= Extract directly to a target directory (absolute or relative) + Usually used with --noexec to just extract files without running + --tar arg1 [arg2 ...] Access the contents of the archive through the tar command +${helpheader} +EOH +} + +MS_Verify_Sig() +{ + GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + test -x "$GPG_PATH" || GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + test -x "$MKTEMP_PATH" || MKTEMP_PATH=`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp` + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + temp_sig=`mktemp -t XXXXX` + echo $SIGNATURE | base64 --decode > "$temp_sig" + gpg_output=`MS_dd "$1" $offset $totalsize | LC_ALL=C "$GPG_PATH" --verify "$temp_sig" - 2>&1` + gpg_res=$? + rm -f "$temp_sig" + if test $gpg_res -eq 0 && test `echo $gpg_output | grep -c Good` -eq 1; then + if test `echo $gpg_output | grep -c $sig_key` -eq 1; then + test x"$quiet" = xn && echo "GPG signature is good" >&2 + else + echo "GPG Signature key does not match" >&2 + exit 2 + fi + else + test x"$quiet" = xn && echo "GPG signature failed to verify" >&2 + exit 2 + fi +} + +MS_Check() +{ + OLD_PATH="$PATH" + PATH=${GUESS_MD5_PATH:-"$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which md5 || command -v md5 || type md5` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which digest || command -v digest || type digest` + PATH="$OLD_PATH" + + SHA_PATH=`exec <&- 2>&-; which shasum || command -v shasum || type shasum` + test -x "$SHA_PATH" || SHA_PATH=`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum` + + if test x"$quiet" = xn; then + MS_Printf "Verifying archive integrity..." + fi + offset=`head -n "$skip" "$1" | wc -c | tr -d " "` + fsize=`cat "$1" | wc -c | tr -d " "` + if test $totalsize -ne `expr $fsize - $offset`; then + echo " Unexpected archive size." >&2 + exit 2 + fi + verb=$2 + i=1 + for s in $filesizes + do + crc=`echo $CRCsum | cut -d" " -f$i` + if test -x "$SHA_PATH"; then + if test x"`basename $SHA_PATH`" = xshasum; then + SHA_ARG="-a 256" + fi + sha=`echo $SHA | cut -d" " -f$i` + if test x"$sha" = x0000000000000000000000000000000000000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded SHA256 checksum." >&2 + else + shasum=`MS_dd_Progress "$1" $offset $s | eval "$SHA_PATH $SHA_ARG" | cut -b-64`; + if test x"$shasum" != x"$sha"; then + echo "Error in SHA256 checksums: $shasum is different from $sha" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " SHA256 checksums are OK." >&2 + fi + crc="0000000000"; + fi + fi + if test -x "$MD5_PATH"; then + if test x"`basename $MD5_PATH`" = xdigest; then + MD5_ARG="-a md5" + fi + md5=`echo $MD5 | cut -d" " -f$i` + if test x"$md5" = x00000000000000000000000000000000; then + test x"$verb" = xy && echo " $1 does not contain an embedded MD5 checksum." >&2 + else + md5sum=`MS_dd_Progress "$1" $offset $s | eval "$MD5_PATH $MD5_ARG" | cut -b-32`; + if test x"$md5sum" != x"$md5"; then + echo "Error in MD5 checksums: $md5sum is different from $md5" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " MD5 checksums are OK." >&2 + fi + crc="0000000000"; verb=n + fi + fi + if test x"$crc" = x0000000000; then + test x"$verb" = xy && echo " $1 does not contain a CRC checksum." >&2 + else + sum1=`MS_dd_Progress "$1" $offset $s | CMD_ENV=xpg4 cksum | awk '{print $1}'` + if test x"$sum1" != x"$crc"; then + echo "Error in checksums: $sum1 is different from $crc" >&2 + exit 2 + elif test x"$quiet" = xn; then + MS_Printf " CRC checksums are OK." >&2 + fi + fi + i=`expr $i + 1` + offset=`expr $offset + $s` + done + if test x"$quiet" = xn; then + echo " All good." + fi +} + +MS_Decompress() +{ + if test x"$decrypt_cmd" != x""; then + { eval "$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "gzip -cd" + else + eval "gzip -cd" + fi + + if test $? -ne 0; then + echo " ... Decompression failed." >&2 + fi +} + +UnTAR() +{ + if test x"$quiet" = xn; then + tar $1vf - 2>&1 || { echo " ... Extraction failed." >&2; kill -15 $$; } + else + tar $1f - 2>&1 || { echo Extraction failed. >&2; kill -15 $$; } + fi +} + +MS_exec_cleanup() { + if test x"$cleanup" = xy && test x"$cleanup_script" != x""; then + cleanup=n + cd "$tmpdir" + eval "\"$cleanup_script\" $scriptargs $cleanupargs" + fi +} + +MS_cleanup() +{ + echo 'Signal caught, cleaning up' >&2 + MS_exec_cleanup + cd "$TMPROOT" + rm -rf "$tmpdir" + eval $finish; exit 15 +} + +Script_Args_Check() +{ + script_supported_args=$(echo ${helpheader} | grep -o -E "\-\-[^ ]+" | awk -F"=" {'print $1'}) + arg_to_test=$(echo $1|awk -F"=" {'print $1'}) + + for arg in ${script_supported_args}; + do + if test x"$arg_to_test" = x"$arg" ;then + return + fi + done + + MS_Help + exit 1 +} + +finish=true +xterm_loop= +noprogress=n +nox11=n +copy=none +ownership=n +verbose=n +cleanup=y +cleanupargs= +sig_key= + +initargs="$@" + +while [ -n "$*" ] +do + case "$1" in + -h | --help) + MS_Help + exit 0 + ;; + -q | --quiet) + quiet=y + noprogress=y + shift + ;; + --info) + echo Identification: "$label" + echo Target directory: "$targetdir" + echo Uncompressed size: 300 KB + echo Compression: gzip + if test x"n" != x""; then + echo Encryption: n + fi + echo Date of packaging: Sat May 25 18:43:08 CST 2024 + echo Built with Makeself version 2.4.5 + echo Build command was: "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.sh \\ + \"--header\" \\ + \"/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself-header.sh\" \\ + \"--help-header\" \\ + \"./help.info\" \\ + \"--gzip\" \\ + \"--complevel\" \\ + \"4\" \\ + \"--nomd5\" \\ + \"--sha256\" \\ + \"./\" \\ + \"custom_opp_ubuntu_aarch64.run\" \\ + \"version:1.0\" \\ + \"./install.sh\"" + if test x"$script" != x; then + echo Script run after extraction: + echo " " $script $scriptargs + fi + if test x"" = xcopy; then + echo "Archive will copy itself to a temporary location" + fi + if test x"n" = xy; then + echo "Root permissions required for extraction" + fi + if test x"n" = xy; then + echo "directory $targetdir is permanent" + else + echo "$targetdir will be removed after extraction" + fi + exit 0 + ;; + --list) + echo Target directory: $targetdir + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | UnTAR t + offset=`expr $offset + $s` + done + exit 0 + ;; + --tar) + offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + arg1="$2" + shift 2 || { MS_Help; exit 1; } + for s in $filesizes + do + MS_dd "$0" $offset $s | MS_Decompress | tar "$arg1" - "$@" + offset=`expr $offset + $s` + done + exit 0 + ;; + --check) + MS_Check "$0" y + scriptargs="$scriptargs $1" + shift + ;; + --noexec) + script="" + cleanup_script="" + shift + ;; + --extract=*) + keep=y + targetdir=`echo $1 | cut -d"=" -f2 ` + if ! shift; then MS_Help; exit 1; fi + ;; + --nox11) + nox11=y + shift + ;; + --xwin) + if test "n" = n; then + finish="echo Press Return to close this window...; read junk" + fi + xterm_loop=1 + shift + ;; + --phase2) + copy=phase2 + shift + ;; + --repack | --repack-path=*) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + if [[ ! "$1" =~ ^-.* ]]; then + scriptargs="$scriptargs '$1'" + shift + fi + ;; + *) + Script_Args_Check $1 + scriptargs="$scriptargs '$1'" + shift + ;; + esac +done + +quiet_para="" +if test x"$quiet" = xy; then + quiet_para="--quiet " +fi +scriptargs="--$name_of_file""--\"$pwd_of_file\""" $quiet_para""$scriptargs" + +if test x"$quiet" = xy -a x"$verbose" = xy; then + echo Cannot be verbose and quiet at the same time. >&2 + exit 1 +fi + +if test x"n" = xy -a `id -u` -ne 0; then + echo "Administrative privileges required for this archive (use su or sudo)" >&2 + exit 1 +fi + +if test x"$copy" \!= xphase2; then + MS_PrintLicense +fi + +case "$copy" in +copy) + tmpdir="$TMPROOT"/makeself.$RANDOM.`date +"%y%m%d%H%M%S"`.$$ + mkdir "$tmpdir" || { + echo "Could not create temporary directory $tmpdir" >&2 + exit 1 + } + SCRIPT_COPY="$tmpdir/makeself" + echo "Copying to a temporary location..." >&2 + cp "$0" "$SCRIPT_COPY" + chmod +x "$SCRIPT_COPY" + cd "$TMPROOT" + exec "$SCRIPT_COPY" --phase2 -- $initargs + ;; +phase2) + finish="$finish ; rm -rf `dirname $0`" + ;; +esac + +if test x"$nox11" = xn; then + if tty -s; then # Do we have a terminal? + : + else + if test x"$DISPLAY" != x -a x"$xterm_loop" = x; then # No, but do we have X? + if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable + GUESS_XTERMS="xterm gnome-terminal rxvt dtterm eterm Eterm xfce4-terminal lxterminal kvt konsole aterm terminology" + for a in $GUESS_XTERMS; do + if type $a >/dev/null 2>&1; then + XTERM=$a + break + fi + done + chmod a+x $0 || echo Please add execution rights on $0 + if test `echo "$0" | cut -c1` = "/"; then # Spawn a terminal! + exec $XTERM -e "$0 --xwin $initargs" + else + exec $XTERM -e "./$0 --xwin $initargs" + fi + fi + fi + fi +fi + +if test x"$targetdir" = x.; then + tmpdir="." +else + if test x"$keep" = xy; then + if test x"$nooverwrite" = xy && test -d "$targetdir"; then + echo "Target directory $targetdir already exists, aborting." >&2 + exit 1 + fi + if test x"$quiet" = xn; then + echo "Creating directory $targetdir" >&2 + fi + tmpdir="$targetdir" + dashp="-p" + else + tmpdir="$TMPROOT/selfgz$$$RANDOM" + dashp="" + fi + mkdir $dashp "$tmpdir" || { + echo 'Cannot create target directory' $tmpdir >&2 + echo 'You should try option --extract=' >&2 + eval $finish + exit 1 + } +fi + +location="`pwd`" +if test x"$SETUP_NOCHECK" != x1; then + MS_Check "$0" +fi +offset=`head -n "$skip" "$0" | wc -c | tr -d " "` + +if test x"$verbose" = xy; then + MS_Printf "About to extract 300 KB in $tmpdir ... Proceed ? [Y/n] " + read yn + if test x"$yn" = xn; then + eval $finish; exit 1 + fi +fi + +if test x"$quiet" = xn; then + # Decrypting with openssl will ask for password, + # the prompt needs to start on new line + if test x"n" = x"openssl"; then + echo "Decrypting and uncompressing $label..." + else + MS_Printf "Uncompressing $label" + fi +fi +res=3 +if test x"$keep" = xn; then + trap MS_cleanup 1 2 3 15 +fi + +if test x"$nodiskspace" = xn; then + leftspace=`MS_diskspace "$tmpdir"` + if test -n "$leftspace"; then + if test "$leftspace" -lt 300; then + echo + echo "Not enough space left in "`dirname $tmpdir`" ($leftspace KB) to decompress $0 (300 KB)" >&2 + if test x"$keep" = xn; then + echo "Consider setting TMPDIR to a directory with more free space." + fi + eval $finish; exit 1 + fi + fi +fi + +for s in $filesizes +do + if MS_dd_Progress "$0" $offset $s | MS_Decompress | ( cd "$tmpdir"; umask $ORIG_UMASK ; UnTAR xp ) 1>/dev/null; then + if test x"$ownership" = xy; then + (cd "$tmpdir"; chown -R `id -u` .; chgrp -R `id -g` .) + fi + else + echo >&2 + echo "Unable to decompress $0" >&2 + eval $finish; exit 1 + fi + offset=`expr $offset + $s` +done +if test x"$quiet" = xn; then + echo +fi + +cd "$tmpdir" +res=0 +if test x"$script" != x; then + if test x"$export_conf" = x"y"; then + MS_BUNDLE="$0" + MS_LABEL="$label" + MS_SCRIPT="$script" + MS_SCRIPTARGS="$scriptargs" + MS_ARCHDIRNAME="$archdirname" + MS_KEEP="$KEEP" + MS_NOOVERWRITE="$NOOVERWRITE" + MS_COMPRESS="$COMPRESS" + MS_CLEANUP="$cleanup" + export MS_BUNDLE MS_LABEL MS_SCRIPT MS_SCRIPTARGS + export MS_ARCHDIRNAME MS_KEEP MS_NOOVERWRITE MS_COMPRESS + fi + + if test x"$verbose" = x"y"; then + yn="x" + while test x"$yn" != x -a x"$yn" != xy -a x"$yn" != xY -a x"$yn" != xn -a x"$yn" != xN + do + MS_Printf "OK to execute: $script $scriptargs $* ? [Y/n] " + read yn + if test x"$yn" = x -o x"$yn" = xy -o x"$yn" = xY; then + eval "\"$script\" $scriptargs \"\$@\""; res=$?; + elif test x"$yn" = xn -o x"$yn" = xN; then + echo "Unable to decompress $script ,because of aborting! ";res=$? + else + echo "Input value is unacceptable,please try again." + fi + done + else + eval "\"$script\" $scriptargs \"\$@\""; res=$? + fi + if test "$res" -ne 0; then + test x"$verbose" = xy && echo "The program '$script' returned an error code ($res)" >&2 + fi +fi + +MS_exec_cleanup + +if test x"$keep" = xn; then + cd "$TMPROOT" + rm -rf "$tmpdir" +fi +eval $finish; exit $res +Qf< pŕZaBm?Y6 Dz슱$_|g;H;zf֒plKAQuQ E T"$rw㒫+'$:8cb: U0g{f?@Ӄׯ_w=r2eI'GHXޚJPْYn!-Z-˖tfYK&Ch:% ؖd8U}sXД4Ԡbt3kي6 bgXwݖ*9v*oij>hE^0t,X%[QSEUۡWtI5K-b7lZ=b#9#S.鱬9C C%Cw{BYXP1zWs>E͵-) ?б~1y,l+T+4ib%QK`.\SيZnr8GEnl%zvWyba!0K]U ۙnWw\mcf +Wig.v dҭƬQMWFВW:U5.ż/HȺjW +#W5B[ZIŮȴ\!bn%_!$mU!tڪt/[P:b2b_xN_Y)lQ_6Ԛ)X˩] {gz /W1|VْNjEoPi[*^+SppV dD@h[U *xL@[ٚC9dC)Mp_ӞSl,BNg'l|= 7´vAluOvmmvcKkwk>~t#w쑯Gs۱oe@4q0OpƎWxŤLV Shu22CKcgı5!2mc'\`ZN Q}^)2@`Ms֧Hg%;%MO|)Y}[D0UzF18IAq=L R}g1܊SCz^wu*F0e?H\G+vށҀM\gQ sjk^Td(,Q˛)P4S +J*o ,@ks2lI~?F_W+fy>}\-sS,8Uw!r! O?j{Djb1aYmb,.C-'iI,bXR]I~ӁYRй-Bw ]=A548.6궚hѲ]q2]iHVmyd.=#,{[PfʺE)h!OT`jh}kZݡd}d]r`=BLY2loŜUMKyʲl1dpCdz $꣺wrU(f|\Mgja]Ājؖ6zW{fC .ƒx1@d >mcʕd+gk\ɯdcEkUyKBd1,ѱ6ֽ7_gJŴf@sc:Sc*Y "vR>?M28.K@7 +0ov :<0s@:O!צ_y +~AeL" +Ԋ֊WXѲlŊו$regk"2FH;/M2m%9?C.x(WUyp= >OQ,rsџॐk L\ɗrkyF +?qp +D^ޣn/=r++RrӄZQBǏ HܟK>y.oKo~9]a*/$5r_e:"^wC'&l"wLΛpq>yL6xy%zD\I&clmđENdjfh^)O4퍎AiGƏ||k@FǑ u?mc=A֏L:g|ְd,?s<߉|/!#=K';_!dDǁtx[:0}0ȝk+u{~^` /1Waہ!g%žiw |0vN{{VyύKvJ>At͙@Ã_lBWg+<x`j*ʭwFc{-܇䱆FCpf`f`f`f`>|P +\x)xV*x)x }Jܓܞ9.?/03?3|)87DT93O8Ks*8gXC=A +;8}c\8ǟ?q=?յ.4X2dt"SW[ZŜLH9$ zr,%KF>0r#Xڬ]@W1|]}FSwT\.cT}TӋzEmuQ6*=Ղ*t7"u.bzA@a yD)X]> B^ Qn%:Xxt!/(E+ [B^cQpP#D#.(O.E[a0N8(JYm9|"n㯑|8s$Ay?<<@AB ˉr $(_}q~r9QnoHP޿9 :=ps-ӄ7 +yOxˇ 3a6 y:q}sޟ&W] yѯ_`bߑ8]@&AySV򟀣&rx+CXk?'!EZ -1<VΟNOXRRD*VI~ٱ0|t&Lzsl̿fܿ$\pz`wVWwT y)򥬞Ri*j6/i:"eyeb,/s3#CuoA,UK0khxSan2$-0̬>D;oؠtn]kpueHU[?V8d|Z)S% bAЎF@pAv!huO;S1NXU&JxF}MONUY3i4sgbA#s9:]=a `- ۙ>il"R]Or% ~ż`Zm6|h<8v~0 1'B~ rj,SZa?͒PpZtTB>v̌KLd"uf۴=m%`p_ʎf`!UفP(g9SvZ As1a덜I6k^ABDR6oojmmCY @,(6P^C[ +qC$,CP1ॻp]HUfE#5 +U!^#TJ.\v'h$b{CNWu@(_q6 @Y8-UW͵z.i-ҎxrnNYa@(t4/+\v ]iN@ު]J }^ԫ^ў(_IJ_eTWE[뾴|D{n aj*F_Bp&pq}Dr;-+q`}Λ>ogR_yc^*j_?WßY΋*߬B_VVS~T[}qchϽͷ GDv%lnl oFS*NrΡ$;'J-R0 2e!39QE'.@B6Ϙv +,,bʈeRJ +s/ +'oP{9{7neP5VoB}&n 0I]ؾ+2e?zQ Az4Kzkg.?uꙷ/s979o%6ܾ ӹ?ADg!oXV߁bX3/ϮmCz3 o 'į1WӋb߁ +?mf?nc_y{¿M1s Iz m]hG{ +8A-b_exW7e7+~K/y7~7qmt:~s + +vӊɔyvOѳPO;AayS<>c>ōTݜSay1|aŃeF|&Tz˒*^AzX̴ħHWH**l K"vѯDZ˗ԯ =߇p= ^[]Oܵx7.Vi6U~bgQ/}52U-oygVYs즞gƞ?e H?P7|_,9x!lO\ rŴh{-sA.dVĞ)zt{wUp5Ws5rd#;&y}wjN4 +';nFd/p9)~ahh3hӔhEG6O6zE!a AX|b$Z1}SɶVE/ +dQ]gbR: BR]gw=dү½.*բخZ_%}٥#8Ҫ>800\ƱxHc4rcN'>86tMN4>ӕgh+(͇t86u+(N'9FR^Q4UoU']i}Aʏ'jS!˿AR~jQql9QatU_9}OzWc%y*!FɩTt$ORqlZ%pl+/c{©Wqlo74_@WñRql zjninBϟz4E6ލfڈg*@|ͭ͛ev{9@0XGFB6g !S&tSpqXcZd^x"+,K1<*KV!rcx8frfnp%XpFd;0ЫoKuT:H#¬@yLtmVW%脑^[YO2Rځ-VT +t'7נPW E#Vco.CI}pO< *(XQklY1/ioiij>Y^·sooij>YʃvHP(yVio +?o5m`v?+5 !u#kh;JFVK鉼3dz̑oE\NcbV4,Qc-q4~Ǵl^' m,ςQC+YF +`'w $]ڣ݉D@rV`'Lh@sffA~|S6oOkf5%;@'O̢OĆ֭ u'HwBI i{bP$W4 +EȈ֪ZH__,:֭ZSI ~H'ϖs)baMJl km舺sx i\ĎvpN<{5Evo,ٶirH +d4bȰaoϙ\O)1 iH2چДZZ7:rM![0"B!? km aGFsfzo,mM qB!_떭'ï~=}9 LF^ 'O:!o? _-@bk[0th"~_}g/zK^*y$2=գl'f^󶲡6,+n?vt8TAm#~ fZ JUh + +9$1bRxeBz YT jJbRW4 dbv_6xwJA3gmsD!ʲSv;Ea| KC6' aUd]sDzyEnLC[!00nh+Raŝq=3!qtvXRO¨>]Nvy80Yƒg ~&)ĸpV!dhl7GFXv?ZVg<#9WG38,w~p5msa{ <%OKw 9RA;vl۶-NISt&6k0ā6_oC-E[3-yhp|hɥ{kן))3B.e6nغeu`+QEhhq^؀Ga4n  +N$1T +`x k<"I Όǹ,Lo.MɷK`#yP-ҥb+ Ӈ;`QbZBʞeh +Fzp +]C1}gf@;Л0wxOqJB[aÉx-'<\ si.p.dMx8pB\#%rII;r{qgX9]ats< 4K1@F NGM3Gl=h0fn 2 VJ9zzGR~oܟ/ѭҨ. +2#=NV*+KG-TE7qN&`qŇ]=gL9(0on(H臫lx|Uzj1>)b)E2KE4rDlxp$eMA%cQAϋ 7nrU>L#+zqˆQK$+[ *t0?|JqƸJfULN2tОdE% :W2>fAq*h݊ Hacޮ g-eih +p!AFu3SLe-CKe& & LȞvubQ,v0ejV)x@H~ q-C0rCDt@Q-la6- +%Io ?<W)Y%I EXפmEH+t7r?&2!:3/UZy.# Dbn銲_R8vǑ(j=q +iXwi72EZ>Ea}R<犠${RP7DHɞ+:Rd=0l݈{f6$'4\Gs.[@drhhn&ض$bi])",3Bf?ea ~58o|,^mɝz᯾Yd{Rc/uHI [_qT`EĽ;wC[ Dc-r|XD,8J0ep1kW6 a…8wI 0dv +pqH,9da<1,ə=wjQL ʢFkn/NZ̎g:>`3)cta\Pƃo'p>:q9q:Gx+<8oĕjqO*YXeIzNE& x[e+jVf >޸|wIY-}m CGj\|M%#xcSZ߶ձᾍÃғ8A@7B1oSisK:uSzΕ>F*>5ߺmu}躰Cc;*xoNp4MUœd$dUd("a)HD8 # +Ԝn7+#Vse9^ٜ0qNtLF?qKliMiSP+1lGn0ҽRN/1-#rvA-ΣѻfD[w(sA(ƈ=Fos0e|-ɹGxRn1y#Vhe}+zعٹ|p05'4|Ls^m-G|$VL G8oo6~5wYJ@vUggh> L]N?؝\҇5:l0:mŪ>gOuqe*04M8b]uykR]5Lr:,a=tl2 3%죜hʪnه<TNéDFNt-`W> +BNWGz; +S2co?S݌y"!=Bݬ3~f7ߟ._3OeKTاY?V;Ǹ1[笛) IVl*D:!m{mjcY&ˁŊiߠ0r6}HAL +p>P4N+K tjP]qrfm+fT̈́bfjTLJgΌ" +T8T/lg+|P~~yP250Ep~xWXL[MO@,߀xoBoxD߷Ikߋx_A/7t/23R7IFTOe=]{ >!c>z2P/7Q[PqJX,QR^kے}4_ovjIƵ$zJdیc%^쒞key/=Vr]{'lYT׾\%]*yJc%S%p}8wpANt}p.Ո]sм4#[+9 HGogd8$ҕH2EV8L476'h)eXc(P2R +W%bP2a5'*BVP' GKf )P%i6C8ɜyg CĚy}mw2{pPCO';ZcL9{;Ȳ烏 T~T, |>mppف#<4n ztg k휡_X—bL-gץ=EL+SڠѲh ^B@!uuyi#FӽV`Nkցj=1{LczcO\x +? ^k/Bta/|"b qd $~&pq OCXXur Gz + '%_H!}H%Kp2G$ȵtSI<\{n&Gy$׾Gʜ%)qcYw#RxFa"L0&D_IŜ+кF\XC"Rcy|,k[u6x)׆\_ZG\,C>Brih=IQDkgE?3)CdJaT8gkNYgG/0<"r$yL +>'\*W!2{^ jgӜH^JSMI9KBt,DJRh*eRXdU4J&cD2 +ǒZP߄ττO~%s) F-3S{P5{_"~] ,;uyK]`OW٣=I}p{oдU}ܺ]HG`3^(Fݪe:l*-uRFkjUbw!NF5;Gź?֫fRSݘ]dKt,ߏC;6Z݌ qx`'=? d'X +?zI6KtfTPݫd5To||cF'DUha`[PfO;w*5'r oiqf,@=G4훧 SYR,9vl) + +N$/JGE[DfKeږ#K$eRLnhNh>:dv;,d)M7 m dxlv6!]8IF's=!7mc@?{,h-$ˊz[ U70T<~PCdG!m\ԆOS]&+'m@;fbA"B7!ԣ4L]KXNǓqzO(ϕ0{?_/sW8S DP_[zv<=ƞzz^ݑnqk=-a 5Fqy#wVI3Β$9gYN %!O.LK%!OIS +-SsOWC.lj_H;"~!;{-zP$؞_hh5-3?v8\QnSl@;_ҊvX3QR(A@y%e +{I*N2 솖+̪vrVy[d`yms_M-wLܷ½Kwc;iu=`S~:o+u?/VLm2'ߟZa'nVwLj[~>@P,ݯleE<ݻ[8 ϸҾlږ|FKw 8K/o;Dvir-aw}[dk}';د2RӺ{(++>Tu\f;O9Ч2Y8m;:zIuUVh5{<˽wXݓp9 ʹPl +햣W:&ŦL( ʛ +j@Ƭ5ĥD6A gW*Wò̱+y➴+C;:@-DvLX[Jl'yVd-eblԦ(Nu{7OA>9jEG6jSLmkXg5w@Yp[W0n[$՞֝eh-2Cz[J\2y|v9fmG&_5^6;Lo6ajq)wu>`66ғg hqJ!iɂ6چj|X\Ev͇WWYю e\$V5_"Nv6^Z"o2S?aD7gkzM!<7?wy\7W 9Pފ;ZB;´z%s} #Ym`,xZl.lD\ X΋%j4H{:/01UpuE]@(ӏ%7M˵ΒFfoJQ*{*]M^n@Z[hP|sF³LjS8#A*-`ElLŀgm1LVBQGy1skN^kko#? VX)/gq 7?[?^\8G_h6=%aEt1.?Gv`@䫰A%WC]rWa8`|ӌPHw~g/y*z,$iu;ۯxo<[7ڃt~D۳mkHCe7ϫ%$8|!i_[K?+lcڧ?]Og/~qϤ۳OG>]XTJzK IZu]z +.6cJciqaBFBx5ˌ<1㿪@;ⰶʘĘ1Mri3|^nLI>J~yR!4yn1&) L1iWM?2bL_?0L1ɸ2Qyz$^|>0I>ʸޟgLI>})&NbRkL+L֙&|=n3Uky7:7aqb2MWI?RĨo`ư!l&m<-[ )7Bm$) Hi1-.O$ ]UZoX.jw' _gPm좮i ͫB% fOI;=}zgP]JV.*}(n>Oh Noʸp["XE\='&Y4%RG&k+0R=`+VϠ )=-n*wGh<C+=4odDMj4'8v'G!qMܥƴx__RDe Y]ߣfRC4L'"ÆYh7šm4k+bѾxd B(a?[} kUCq=X(zLt냪InO04mH ʬ1thmmL8@0M)`F<,A;=*@ޘN:oPaD< :pb@a*X| 7ix˸]U4˴%~Vw㈇%}fy~2 v&AhnWáL#)L~Oo[[ =(~ v֭HԼ^칹88T*h"Mgc[uל +]RIL +KaZw$ ԕۇ-$~Mq!WoJ #qMPtWM9FF3zFSQ5Raj"4fzB4rPnuWv;k$hx'l',^8v C*q҈\81hdcfVFCAϪ00%{q- 8K1y|#v01 [ 1*肙x/aȟ<ϴpDP|',m,cJuԌ ^(7_.{@,Ga(ALJϺP#D_r)Jv%S}(,J_dkfVϯaqjdc)2XcW>?- 70V >pSIXl(68.w#g%l |= lO7 qMCa`OtmWVb(0?~p;7us'סYPP s%pDKM]#;TPȍ1NȥƂk+TOnkS\9ޓzYtFֹ[+֟iPcqYJl#Q6Z"[]њ8xiYZ  VOO<2zx/|<iy +[?oG8~y߳RV? s,1BM+?:%vݝGȮp['uI~?["EV'9]ʯ:<ׇux3k^:]v=7ؕr^+{8N!C_.2Qw٥îB^,pq/9Q2^zDq>$O/Ƌ}R> pOLGxXKxVa-{$YI~ NJ['$QHJ ?*=~\I I||aF1+@/#6 +~ HJ8o0!?#^!%\0p9,I p2pYOAX$"BLk%R wISY/V B;$\ R7JU-័~ Z“^##~g%|ok%|RŸ%|ivKx%W?%%\V:(! pg Q zḄI .dr4Kp<" k$\C_+:& of o p<>E(HxF%|?[gUu3s3  ~THȝ;J\R5ƊJW^h,Uv5[j*D>{2$A!9`ܹsN}?dW1J%&Ndp~ⒽI(ٯJ$6>_$dZGdWCɞJCZ~\d_$YIv? 1}d/KOd_* w<ɾL_,ٯ3$|7%r~ds~~(o$="oJv'3v{b`W<SF˾h6,Nj}cKVף!PHzjIߎڒOQ]IK^/)e9K!/)~KI/)R9<ŗtKe/(ߢ~K_;(~]NK_һ((Q|IN%ŗtů~/_G)>I%}K ŗ i/)ڒt!.E}+Pot5GS(̜>K|/(/E%=Kڢrzŗ|/k(Q|I/ۺŎD%7-_ҷS|IK./_wS|IK%}?ş)~KQ/)~Kz+şS|I')_~K-op^|g<==vx-u=0v‰D(K`H<&*/Qa6O"mT' 0lps7uu)p+go{%7mT$GF6* GJ@N6 uv_7ڼhKfz6:{p<}=>_}'y3 ?F2?ɞ34IZeggfFFz)vb%{1l?,^%~^r`O=.?QAT|bs<Ѣl*.=h>ʺ|Ns {J8U*o΋7IZ**oOuTޞɀsYʻMYxע v~.xA-yM 鼸 ^%^T뼴 Sy<~#:/GETDvÃ"*H+7Vyt^̀9~6>^nSy~x "X,SySy꼈,?Ky`ȟۮ.y'ټt^ "*:Cȟۢ|_X>|7LSy:/ ST/t9/y1c /ټ:/2LʻVBxQפU)8*X?xpȟ<6ROy 0WoP癅pȟgyB8_OxI]NFyt>tqR!ޗ9׃\\b} a_"?'fO5<6;Tu% {Z-\{Hnc|J }qfp=vMNeoc&tY/r/M~&{fgh1d6xx92q^AuC3\l5}(PſgL14&BEvi#1͘Rpuƣt+Z }, }cu/|9I6%j/L}8%z<B&Q=BO~ƵCkz~=B͘oap/1ɝ9 50)h(/+KBQƧ1dz¥ 񉣯$&fߊLލwd:?c&m&%k{mIPF| +ޡR苖uLH eпqtnQ +=[(7>;R8\}_#wɿǰ]xh9W?AQY{9k,55q~3!՛rڳ$Ƞg-:}!?O 6`-w |N5+>G>"j|7KG}>n7; >&|H>D΂<>]ԏ"Pr }'؋ヨ'ֵms= yNw$fKou|Vm1ʏGFe2eǮ j2v'.?1<YB" N`lRn\AI2@󱟾۪ϳ`EӲu32&W B &%[YN:ўA[V ?!۴ k} V +`r|}Յ +]Fzu x(ע:w6}#1SJ8i49s}/q''α8|:N䚤5:><͎:qҵ0=;W5_f`/?E]>C}ϦXV[Hլ֧->,WG-YTtlXf BXX&{y@5~dž=NGekOC"=[|5v~l=/֭֝u/Zlw^]MZ@jkεKk0&]3m4ŵ1̙f}ڝ\ŵLrڥMkؕ]ˁxϵǿɗ 7+b)e[l+@5@{ +U?LC#[}]t,L>m6n t:_ ><.{!b,?#lA3TcSt{ca'E3챺pčda{̝fs{%L['sSFren%q/sS`ƽ,]Og0v$nP<=^b2+ea[8D5C-h=g9,Vևť. ^T6Weg]uQ2?/qs7qbs` ;~Y<7)wN˓s~Ql^,Dmbo+}~Nʃ+(/bO<`>|ưƵvq.{繸tVR\w㽬R8xb<{V1/'s'u酱{9&I>h8[X>8Iy<3OxwX>tOxt>xb<ǻIc࿉'s%:/>:'s:?@B"*#&@ȟ΋L ET:/5"*/]=B\h&J*VDQ[fp +(ůe$.*ՙ^>*B՚mZr/F[Qw}fL=ϟ {{^{Z{9'5O/^03|o)?-?.{ })+r4+?tͽ_>c -t鯜Q hl<!)YR2):wQOgC۹>ipK3\51!;z!p/I|P!Xwƚ~-aZ~%afl@ܿx"A9FppxjWlyo @y9<?|Ŷo.c c/".!_s7Z[`BߠDm*_wGw[xO*+Sf4}nvѺ"eQ1Oc;[d; RmaUy!޵@w@ydL~lx:1 p1⹮k5a>v,v9K.GR9e|> !~ ۤEl#p!&mr_ |_hn!~w#ГrK?~ >[N9GQ(sFzmp"oȋ\ϛ X\c-v>Mһk1u*ى cOd-̃9 L̡n}>zP.\ <]-p}Eݛ*M,)F B=} $!ҹ^59kimBsDz0 +OFPkuZ<C= 6\[F>yvz[;&u+p|~nDwZ^|z;r5~mȕ>BYx}|cIߵAyg6\G Oo,Lb:?EZWP&yH27˥i >#(GP'缞@p9뵿_gsW+k>PLZ{kOSzX|C'{mйBoT'3=2R$ZS'Q@ ƎwE6uK%~ٯVfOj,%^H⮫% +C+_@\ ρ߫n? +|[d +_LeHAEH62ݥªUtp/U!ߢqx)k%~pٮ^̯;`x'&*υ: ʨ<>7ުp7Qy/ʓ>xVTį~~T7H|(l>x7%>% j&A{#j<{ĝ?NR!]'~:E׸xہAďߡ^?wďA!UN9:dz?:Fhl+ Q>H7Io5B\t(S7DNFૣ=$eQؒ( +{6EɠFEQ>ɏWHR$^~+uT?Va.ytއ|2 XK4>$Cෘ|ځ^ +|)g"UoVoи'S#_i)+| o|J +wlʙ|_p‡2'.J +w+|(&ě>x74nt*<xD-[Q%Sۜ3CNk<_{5!ުv43%~/ ʒ'nO<_-V[L{&ݘķ䟸_o?q̉&27ɿ?@/_cOܫ灯4J|=&ě_&IğA?|?qqWgOܯǁךK9 xɿ̯/7'8xɿ7WwA5o7'ެYgO?HӁMה[,o! o⮋$~3+MIGc䛸b6&../0鈟^e!*+͌;>xOcs.@ӤY#w_&>j|̯jA\NkxP᧓a/Sif#}CWH7'R?q1LK + eX:WI|;ެ>*Wk+|3_Fܭ뗀xP_p_p+*WqQSDC:*^^|^T>ǁך|J: + x.nx?qYs.xg?qN~ɿ̯bM>{U{7Qf |?'A>U]4'TxKL;sM7+:[34@\r5"U{h|W.ۜW~WOj#+<gw:x+o Vq)I>x qh|?ߦq[7W䟸_ɿ̯*|7MT|&:n~C&2›3#?cIOsUM>;O.ƻU= |ɧ̯d)3} M>\S6g\&ě33M>Wi&23>W5M* +&Ľk>䟸`\TMl½M>WooUx!kMe~ƩUM~?q̤/P__d'VqsLě>x?>qfʇx/~^8uz8Bh̯l_z7+/o Vqj/x “S  +5n1?=8]xָ[ŝaOܥd/U_1U|&: +|ɿu5'T1'Rq7S#7bLy!m53HC]o^*v@A.R>X˾x +)hW5q&)b;6?imFp9>`?hKOC3d2w~ٹm׬}-,Y{Ӓ;o K{w&>A{_gF;c{s2ro:;-$ѱ[ϡ[u{vZK&Iho۠^օ3/5TK˹#kREdMP;CQ2ߝ'/܊6C:/N4h״k^'NƗ?:6lK;oLz$)H78Ec C_R._\&"q}M-F66#Rh>hz>|f_ Ry]A5<qrпx|JO_~5~W~Kہ1ϵE?N^z?Kv(þ[+nOZGgs/zsV{׎wPYNgD.Ddd\ij&gG%czB~/IHi(~6q#2>P0G^+"  ^O^'jSy 2sO!G0>X8/),;[ȸZDu]x>38;/d.ӱʧzk]_&I?E_Mț,<'okvK~4'J|R"ZL~eo? }X.pH_2ߑ |ۓzMGo׈BwD`;8" icǵcGPcї"uun])OB;qPπ>333sT/ >ixSύ?ǸpƟBqy ڳ +sSD!"-}*!l'dє'2Ɵ1`gm"QV2|SVؓ-L7b͍E_[.Woo{o]N5pt}#է oaǫSD:)mqZZQ|w7ӴYr(GE|aЦO܏9ᣝyJRvx*eyX+&ü KI/6޼!icc@ƚC[k/]u_5iSxV$ژ >~ + cc+w(Oz|.?3ߌAk Xc7㉔5NxFA1GtݜEhLm>"#3㶍)B+lۜbӿ?6oE<@^u" cN{!Ɔө7"+F|.61?y hj[g/N 4!&Foԩaϧ@.Q>߲Ki:j4B&28qhN 067?Vc}H28a4QnqozPEbeci ?Ck֚iui+#5_ì7\Y"¶=w݈ +@L.̙ܣ>7_5>fk/O\?:&"Ƕ0Mw?#B7}I}%AYHkH;F}vM9E1 X۸RPK}&^gydijv Dr`mH}6ʋ\ۗZd]eBC"Ɛd)>R4S~I>[/ + `%' @ԿK>U|1uc.ۉ(!^ݡ?B/M\*pȪWN8<_tQ=hͪaz]Sr˽Gv&h!]dk;_lІ9c<$Qy(бMg0M,]Ÿoskv(jm3K4,]%Y6ql DSDZw˳cڮM<)bFԙ|#im%c%B[T냃z0u(cma\֌?0ƳT|$I3ooQxB(I͝_ G,籑|0mő8K\+F ?y ZRܑ0.91 tOhH1(<. *AӴqKf|NpO-pvx2cDr,m5.NP^ל>7: \6M5PDZSu^N6>R~˟>D@ Ab"b ^#V)ֶ?K-^ճỐ?ƕ s͍Ź(#;u1 +*TymiW0ayF%ksEV\ 6>'h;za}H5IFy[v\"#a=i=tjA}u +qM= 饣DVQ"&chO Q\CLCOBV  朜^yI9oQv^ҹtv SO36?lcEf{7u#8i=& maKh燺=;Zk1z9jcSP=D 53T/^5Q` ,:H^)BM1s }h|1c\[WX[3{g!:N%zjRjmՋ:8k.]-uȇ1}O0w1|E۩;x!{m .|8`y=[)}ٶdvFlK 4j1 {,sG6xR}c5rD!K9t~@&|5p-DC6qqHŞ"2J;6zǂ'б=k+Z8"P|=Køq߽T;}ܛqG0&f(Ø̸qФ,A}Uc)ǣPrm3S)t^\޽;V_[Mcb vVKKF!F|;ש֑]_񾖯u͙4P{f?xV#ZdZMFcN\/%"6&#vm8oJ/.b?ϳ\u'y|lz4l1Dž}D梍sX9gd1F+>at5a?@CM}im*<;K:ssV@vF}0+ @9Y4ҿDvyS\t!N}E<ýQx!.}Qͨd[hЃwiW'Щk/#pM\o l+1z?{ƽ}n6et'.~Ò~Or iJ 8b*\e ?Ư |[F~j=m _ts%Y"&Ew -pv;?!>_cW$E eꪷ'=BO=Ӥpso hA\+J#v +0箧^t(|zڬ!ZOߌwz~v=e]OKנ-2_(} .oԂWHm@S\Wc^2^Ȼf=OLִd3&:9h'zKߐ !kY+օ.Am!\':msԱr_Oob(!>v9DcNa/q-8NOU+t,XPcL%gI ^la3=L(7@C;pG6 vGj2—ANvήudže CݺցV]W;Eӳ)(}3Ӽk=X=?#+FQ, V2׍E}#f޿Yt{2_䈎wG8BP׃"3B;8H8Y- "{ht HV,Β?~M).Βq'qgwo7܎~^5X3X{Y"ȧfwQtY-hǙT;BG>*> tdt(2c{@yO/8qY&;C\h ;|d+⾢i;r@ї@ރTЅ~5tsE<]f)kѣ.S2MhC}OO{Yo/MqG00NgFc@usN.tJ'c:ܣNp?3?{J'A)8⏭>PGԑ^ ?ۜK]Ջ B2/z_=jn}r<{ ڍ *^rz8e frpq)/~>i&)1cQ]Ă1_?7|ڴQe?=K|q:[:[>m%Dyw ׿ }Jk@}N^.=5OJg2 ɸ6e|dF)e&˽ Lj/p/6Gxu3oc* s"jU/̊Gs}Tscy&GG!;ƻ-uǠLک #||g(םx28Y=Qg6q|Vk-,gLyxcj /C8?=pp]R?Y?5=Ɖs%@ x{psص8Y;AH%AL%ߢuեJ575xȌ_I3ZԧvhN:rR'ςU$w]?z>{gt_$/>sxl/c>\<_g?ɱ6=COXن|[wՙDga(7m]Լ +stg+rj/#Q/nS/W:]lz +2Ql2k뿽{nz=JsV,]w~6JuƟ~i1ց̯5 {{ѩg[x>|7Mi?9]gzsh3$1V]4rMvc 7^X`lsoFo{{yoQ<q޽4Z7'PLP'#p>՞F!34چKmߠ٬78qNS)>@B]Cd6ԌýF=eN4]پ#*`M0PF i3BDkc|zόz~4!ޒd0-/DgD9[oU[b 0>rX[}**oeo?,xk;ʯɿ_Bs}Ӛ V޾}C%y֩xW[lә㭭_C\{”ۙ㭭][嚱xk9[ Fעg{xK[x+n|'Ŗv}MsǟH@~w +gLC.M?kz~=j)k^^:wVA1> ?Pd0 DD{p;RYaw;h 3//qJ+ORc ۲-b4'5qߩA%þS'7a߉WgNn `> Vj(ۢw9ټ`ꡈiZ!öP;CI"b~ B|@3b3ǣ?^;;Fw}06[DS;Ϻ?տt8i*>tt?{#<7ȳ<72 sϳ~Du]~uO?dW1mjw/;ۇg@$czNuA\E[{)܇>BEuIq//**Ƣýڋ"ҟ6yy\C +@vCv#7:$"ѝgs;1i+H^̑6ASo;et-Gw?(W]DVyN{+qvzJ>[RDŽd!wK}t:TwPw tuml4Ȱw3;B=}uW|w AyɌݱy`=Q@A9/9/.(oxP">l5GF''>Y@d OlN>OezboSft~1R>,o>,վ=t˱XOvԳ֗V8|7>[$çy*;3}1~_X߿ /տmG ޻4>x)F_3i֑gi0%Yg_-d .|{-`y~Σn'rO8l~2_gj׺,:'E!;C=±ŔEong+t?ؾ;O4>.hp~}P$S;vuwk\K.#F!\;l=X=͝BG >ވC^>-޾cPHSxѾ0H9l_k2V yt{ö!OpGJ_оW\ &}/l_=.^/87xu|]O>[`k{?\m:..7ݐYi pϊ}gUq큿ez>!{NkQc#.ρʹH[>~| >^Gř3\{ȋ\υ5orf}ti>=)a/kGv9631.<3?Rυm/ܩ|Ys/;9 WW@g]|:iG=9NC/>x]=uLa{0F##oܮ /%KԂW̏"^:ڤ#(C^S a5_ocbaǹGA{j/Clma9aÒ3a)9s{(vuᤡw5 rmÈuz1q␡H.g~< +7׶;q;H;`_yO{^>߱᝸;|;<;J;dA^;}9Nißꏾ6lݟ!϶-U4 +;Ҹζ7C֨f*E?YgKش$YE +5?Vs@+'~Ŀny>ȗSEgqka<ϡEy_[~|G!:ⷱcRf{?0OؒRּ{ڛu79G׳xy;*6c(V?U㳋E"#y`[ua;(ʹB w%؅?xrΤ;pm|7O ;c^vI=}P:zlc6X6Sy(="4#8C'w>m([B=w xW}Eϣ{gWpg~i?oGZ[CYs>ߕ?a<ne<d0_~߂néNb>b@[n +ga C O{x`ZiCKSLycס\ #~/4J ~:K;7>BvtSXočg\GM-'3ѿU'17c~1/#c31/>7fӭ̾Yg%MqXcBy_| +I}~ YZ?j{w#7vwDlO>l[M=(q#(s|j޿-(~4e>p5 ;,E=&QǼܵޘH̸=GϾǔ;ԁ?ʜ}9ro}ӾbaQan|;>s=y:+A66%GJzB>Ww>+c{b9{(ɶe˶/ig.{_.>kS!-p],>ENC*+N/;y}s#ݦNmx]7}=s1q\{x GWAlx.n=b 6O&coyKg 7K߿|K /7 GƯݙjhQʀa`< +9>3Djq;[̳xs#m[mycXvx`s-5hO5M9lO4A/#mbynF毿y$wiǼd|B_1.3`q#cBg;{uş)Vų9w·#{]Էb!#>E!e"(0:?:~MՏhk=[7%_'ARAN&e-xGy~MӲ߉_WkіV<dz#?qNMRg-2 +sF#eזJ}}9/&~6&ڟ^o{/ ~IXZv˝X]DҜ E ;mY!~ME Z#6L/E,{a +ꦉ}{nѿ3,} ԉxʍ8\>y<.Hv19ǪBt?v{<[l|¾f%t-ey' yа[9ǡݚ߹|[7ag_yS=Dww"xN|>/ײYVzK}b[W2Cvv,WwVrop%5ߍ\뼣#y7mO gߥɘԍyRB ĿXmyz\m['7`oa?3Sg9AȒ1w!c7ϣp_is_? t>_ְ݂};z߰'y۪GV}׾ijv-"r@ iP#<9"I].Tlm/&+TGG+} ~MU|ߌ^y>JZPcq}j9q[|/e3_ҼmbGvÜ9E\Ĝ Ǒ\ 0,_0N%o^뷯.rڸ7 P:#8 Vȉ qsbѾbaG¹bghq]\M B+%՘Bgh}G\L+ z;b#m|"Dbۇ]vm3jx1н!Ws01WEBw5:{7KGq7SMo}l^ K<-rXlk3QFK%oDS)slù%o⇸g"δ+0]o/%]ϰf$Fck.-zNhY\YW/|cl3Q >ȃZ\#ָEVqjLVڤ> o9w<^Wzɳ[OC>]ƼO{}pjh=C5y`v0G(4agv[ ?{8-BWg5|G>h<'^^_DOߑN[eoi; cべЏ9o@雬)x颿_K_>s#U+9i|-bg5' #'r{:aCI;~:!C6Xc~ê䮟M6tw}I @koYU7 ]k̖l3esT{0 QymGo-,mq9CqZϵ=%дC!h*E{3З7W=/t$-fN7筃-]A#ZTCՈ1g`yƀ|8偞?t[{ U[W9V/ +c+iϣvJ]c7ϧ/"۠ǃCHG҆!h.D޺9r.D>Ij><(mP\goe kK\WaFF=l1(3dKjT;uݢu>6B_~D=Ф1Q^(o_o7z>cS鎴7?]tt d=Н[~&Bܗx'U? q{C[~%"GXɘ7`C\b(cv _H_mB^ +ca~uGw_e Qn=g\@awuƊ^9태# _1W^h=_:W|V=y#||hSBG(1wC#77@7l݄oӍ(Ē <dʀ}55oiA6`kCь>ݍ1ٷ/bU9vtذ@| +[!?8c]'H/D!V}kl`<vWى>Zo0_DYĴ޿ ok>K1V7ߓY棿k\WgosϦȑ.}Z>1}dkG#fh +R# ޅ`V3|uY_V{{2-9Ц P~!ݣs_g&oy6ricAӷ qky}]$,HR>u]7A?ߊ6̃/tuwyQ}=_Uq~KRcI.駇_|6-N/mF 93f z#g 1%Z7R;ĥ}z^uM6;N}%eJG^5,꫆N.NȯK|fUָJ|5e믿U᫚VV媙ST]@oRBL__tKVTTϪ.k*k|7͚V3}8\זϪ[Em}u]^Q6vk峦j| +]ʙܴ+攕\T^_Q5dne3+N]S>_Mye|h,E˦]Ob׷WV(*(L +-S `^W&;|3n^bYT=wVIx.U,lVMGtJQB***-(+N,ˊfVU+t}K)5|Z 7M/)͙U4oztp+)Yb1.z3QfT͝]s R3ưhhYa=T6H>(T*~pl|Uh*\`kkfL[KyzLoz$xU;:E}+FGޯUte|iWU +W>KVjWZs͕h3TQyfWN+.GঢʪȜWYU3Iw$:*dMLgO)?sv3_sLeUMu:jV!%Ke+|P>Ygͤҹ|XTBRؾʒZ_El'Df5lnVK%Uy|W-0-:JTMΒ^V>mz%?̪>Gܦ_^S2j/>G@ r*!U.*-+fzw_ĪrWA[i,v9~¤[ &L,=h¢1!. e(/3K+}fXUky +\gM϶d\.[R[QSDa֣/ Mzvrk +>F_+/h_Wy%> )3gܴɀW-)^k]T]2V,KiERu-EkD]5ͤ y!zH$ʮ|o_ie3crjaDrWUT*'},(2f>T~|*)W)ոUӣ4+BE"%2_aE/M_"8BVNUW*d?hv&EKx=S|Jf# +@?1x-)q(=aTY)Z"QkxOe4?φmM-gPnLꪢ[`s dp՞QԵ:;OM :ﲪ0K_Xi̼?FS;ʁ"LV(Q.U_Q.uktUUeՄ]J]5 ~5 >/T% q]T+5J5z*spXcPy6(V\NN9US\ut&@yc5WG<&∵9Ro,5ȺؒaD $ܯ)ӴF*uUNE﭅X4Wf:[+7kKfpU$T e9b'B7*۱*)KǎØ0_T ̪Vujij*k*˫+&aAS&x֫6bohf\)SuK7s˨.Hwjie;֢ /*d +D{K"QP/.%RB_W|fTLΉII阌eeЖYe&_GŐuiO^0 X,dUn7\-4Ljcك&iK\ot/XDq&|,IBZ -1C(ZNBD>.M~~_F*ZwnΉ+K\S-Dѣh'咢&̪򑇙ބ[oYх51EU*صXD+0C\@ryr 7}[UqE)t<}9Ljek|Fo C{L}&2lZ).:cc|'3ZnYU /òl虳k/];sRV_9Tpjy$v^6ìa-cJ)\((j_އϐ,8k@ʥЃ/շgAUS(Zfb2M;DK,1u?J-OOTŤ.9\lSyZQ,ʪݖVK+UuEEcxM%*IST͡O[& t,Qk*tVBySiL}6_JKU: amZ 'z"W&c-S\j2QOyML7~7kdhq8D2-N+>_U'(3MؗJ'&,YncfsfyLDUJB79 fjk#Q哘w125{ +Qrz\v7!u*E}2a!JuX>MT\H +XU'RR8a +BҌBqd/FזU!Tfa:1fQ=c>s?AWVɛ:Yz/G1-Ņֆgf5W]nh>O/T 4Umu^jE Gkݪ+Htb/#SٓU#I㚲B_71%7LaIYZ(wzHގM}tp4 6Ӊ LLu|+k暄c+*}5P?)RK%FY^~sY%.]D\KF92xrZu'oj,v3n@{O;ɗHCb\v|uBB3Sd%kϐjgKg+'N踺A8wJ3ݟy4C'NY6SXz?7c|2㱀;*y"ɷ$9Mr.:ii{ڑ^Ubh{1fYhjLTUU&ڠ +x"!CMoVTQ1㨪\ز@gvjT}_4sj%:/-/).ђFUYIeU+SW^OĬ'G\~uW4v#k/+f>U $eKR1cGԄL-qHXpS#U,uq߹C|{S\]4LG(;):;&W[V+.sF)W[".Xk}ƝQjd*T̵ArxQY5OB\ Yt>s97[{8z|hE}kNgInEKzio[[ƀs*PP;wҷ&*IWU>KT>*|鐙-NiA})sQ~!7!J3\yFƌҔ,/7Ln96sD Msx)!9yWϚ[,f3Y`f4ƒ̕ۑ~" %PbYV2Y>a|\JY8v&24 BfFKju'Uwoӿ +ju4źu7.#0[ 1UF2Eo*8YrB*a<\cJ8_3. /UjV.vqlv 5S+gjYIt;P}nt"xzT9ՁWlDKtIߜc=WЛpU[.wn4uE5h%"/zr}CP: p0)"n?~xʗ!]tI7\{ #אt7wYaHȗgH^t(R7H+7CH+1tRWwGz3H }8cHGdн0j"mGzDވI ҡ 飷Ɛ{a܁tG06"wa$Dwo0#ꅼ b nD>"ԏt\axqӑ>t'.AiHM3#?d" ÐGF*IHw#"/څ4Q4X yOÑtR ]t}:A=w2cC1钇qwڇԵFEB!Zl/!)^?][fAd1tcB0֟CHg/]C c T0#mFVA+?Ez3א"ݍtR*/CH_C:{a C'A钧5sZ"}vtӆQvD+G:i6Y= ~z^;pzt+ǐ&z=gw#ݽ |/CHv+h͆,Hg\#}/eozg}T"lL9ʑ57>؍sύ.R]O:r-OxmX'Lǩ=c-ߛțl_6^Mfi+>I({ dw( ,/E6ӳ@7҅q;KKwy W @DϘyP60/dz'薷4G*Jݗ%{Vۧ}c%/>fN[AvV<0^wM!O#ϳIlEwuqQ2I7Kmb}?lsқdS,U3oY ة +ڱ:ߖe=s//Mk-.\| QGY( GM.;(ҹʑn.۳wnV>c-Ki(W}p?TIu9;+l'M:Sb‹"w|X*=;03޴kE0߭*@wmm7b/?i=9,{y+WkabӥoZH[O^7 +$obvԱPٛ_ted糏I4K0)bCeOo7#fKWKП;,!Ud͟/& u>/^GX[}=o6tvdx8B-b;SdOy۶xrEkV'lUwzB'hbR!b=_J*[]]^];wU%A; XҥYƒ&64_{aSRWnʎݿʤK{?X,:Xl:`Iv> l۾gw=,!IПW! m77Ly==uND=='Bb}`wסؿK9+źn* DRר%g nkEǝ;GC^ ,n5v>9nſd;ǓK>7O5|χCVL1P^s^:}$O~!𲤂zny++cٵӳ}4*eH1Ξ3U3 8-R\f2M;cMFpYIA^Pfau2̩ݺÍ:%><9eb%*ݯ/-z蠿4p߾C5Qm> Qn)7|w^m !#> }2 Kɔ;9k݆I(m9$`VsYt>61OkFU0_Iό鈽s'H'N7/MVQAR*hKU__rWPgӪX9*LنKewdE9w`;&3О*FG};yҔmn6:JJ(7+M8\;~I)1_:oz Kٿ3Y'mzKU@2;ՉwS> w +0g=u6YwW2nП0tIKQ%y +ul}\P.9Q 0 `,tVPx힝5NV:YxxXYe=V/oo9z&~u ƾr:3e/(KRQ0o>2X)u~]y˒F3_iݽ+oAhG>eNf;gWXYtm;\Z+}h!*V?vӁݸ"~Cq^??m@ݥL$?=V-X_?b^9Oؙk izB9p^~nڮMsqbʻwlg$ Iɏ=-7W}/$M)[w)z +!'/q3],7ws{r nޮ TIUsʤUWZ휸ox}]n|)s<.iӳM{*yalz%urMr=a/y׳o/hOLUNno䱬 x|,а Ds]fi~ 7EVf+߈7|k|yq`#5ŰcZAY'(3嶼:me'i uR߃qRpӌ0e^*r QA◆!3ʏO.Dco/̛(Ӌ]/Dm*$sbcNcwF#TjIMSYhKͳ4.`eU.K_VwSy4xKcLv/bZ$'dHvaıSY>TI0]v/cLu7QXޱlKv:_FB=v%}'=_Sdz2ճ'eXaw8]oz|e]zOM2zX?g]΂uIv&_9 ˵.]*˝.=gh]ֱ3kSݕtəz+tPJ}# y"Y.;n7qy;aNq w~rmW%?1rI.J&7ps*.RȲ}qzGmˣPꝌ5+Dҙd$(@"Ae*QSUcQ3HtZYWS3&a=j3L6L*g8NQo#NҴ0bnwowﱻ;5w?Ww zyu[ppga;ȏ_f; +O8f\(Wh5d"6Gٴ .kb'i>Qmb6jGv}bvή_(bv}e.p=]C1҄bdZ/*|DE Sf^/MfsEF4}Ζ5]`!:gąogYf+=s>ƶMnh#c^g^-y7,ٔO2lַ἟!YnÜ-pTr㤟Gr~RgcW km}l w@`L.l\ ?KZX5SJ.@'1ScElBa,ήVȖp46*Kԡ71|kKW\+_UpH?W]Ģ:S/%(^45}fGlOfO/ذnٴ6->eyإt7t-h7[ڂE©]DjEN,oҡ9-@VS|.N>SZ Q5]"i9 4X1rJxY݀ Y-zX[./ PMP7h{^VuvaVf|2%l +t^(Km®]@;\*١,˵)~>'*B믖g +x>Ya_,lerx~Mgˡ!99W1f*KcxQh-~)vY;Yu?GsM5͔DžM r%ifk{[ݟx.m8^q.˘3MpsƇX>y[q[42\9udPpQKSnziy̙/.nC8͋9#Q`D9DkD38p2>"P1L + +^?NٓJ1\WH#L4fȅI|ـ[VR&#?(aB^oq{bUx_*SJG"E* _Sf-S?~ǏUo&v+S2|7~$@ë28GY.OQNUN \~O#wpĹT鏳D8eo@Ĝ}L)O11UK_b2JTC8DVv o,Q>*/J({^s"|u*GWq>) rb,?|_Kj TjZ_Ƒ97H>@Q}"hi:D.d +AY +jG}CTmvZxzm8f("3/,M}4஫cćGjø_D`'u4IVO~ue@ЪUޭb׵xoĮ[EtA <^L^bH=d:ڻڍV|\(MPp$F\LXqr(;+8ZpA5[9߅>x#hdRՌo N۷ػfK#{jׅ>.BFmѲ"*Q^$~u8Ž`y{ړax ŵW miф7hf9Wk%{[.- |OL5r_/J>;&[( ]1\L5T>uZjz#O:>|L^g*j0sV(7[XN3( ǃ/}3C5_`Se?bia}-?TQ8?;䅲K0qY% A^H{eIZ\_U8}OT:M!e#E V-'geN ;_S0  8a0#uQiG;V jWf<7: ƃmF:83vƃ]^qK $h"i#ҽ!p8D{e0e28.y 2!͡#=`o /%\|0m{%UVӸndd Nay*=+ :7nW{P ub[`A#FFD$3ja c`z|L5%~H'#Ich(7|]X]6m{F= ͸؁xH<[D-y+<*m{,tEnz5Y)ӽ;µݮE-Lg LX2`g +j<4|Kew*|T*xW|Z JYp^,ø*H_{mXt+ Qc׊5CH<׆`=c}}IY$##Qe.lSQQ+#bÀ\,%cfMN#G"8TB 6ˇeP{##Q{"8hvr#=Zб%ĕq(rDp + 0XW|TwV8ъ|F[}6D3^͆n_ /+דS+sΠvzՊGO}c?-ΊXzcjJu(%2B7_?B_*|gPp ~/qm>ROOf̐M}/a$;EeiIvSDW$KoR|}iayYN8Dq有 +sO7w0Kd 3yFYi/5s¬6qיxt_cSM|AڛL[l536%iomaFox|~"le(&JI%S9e3Y\'|_ Q2uLpN&\'|p^,9\Ay W |p5ep5渜ɥppetNA 8Bp5O8[D89(!\SnS˩)\9( ~ co$|MO~+7>ImO^C4[! %|+s'|p9@8=O FN— ?@8{&3N.'s72;J& M᭄O$| %|sCkpᴿM?Hx+"PM{!Zy{02'nI+ᵠ-N,?SdI ,8ܹs]}?}=sw0Eҫ)R|I׎Q|Io~Kz ŗ_P|I?K%uT?O%5ŗ_/S|IKU/?QY /P|IK(ŗ_Q|IL%EFu/ŗ)/_ҟS|IP|IH%nGu>ZIEmI=.C^ҕwI$=uk)Q=KJ/(E%=KKڢsG _ )oK_wR|IMsz_=qTO%m/(Ka/_k)SyG_)B%4ŗ3_R|I׍)_ҿ~KeoO]y5L灡VY+xSo/'1|y^*w% SDCA-3y:7wNOEm1Vökɇ./щ)Oeb16SB#_ϑg]0ih=ضNcb^0΍cY܇uH5Ƌ#gwC]8Y/k_0{aZ ;Yx,/0^./q_#u7H}4cǫ\~%^쉣|9Q>ܥlOr]>'G`5?] $|⵨Qy1zGts'kWy+t*>u{K:/冿3F}]H/ټVkQy6ȟʫy)SyW<#KOMy%:/u+ET!*&?g,kET"c :ȟgv뼶1P)~X!Sy[uYn?΋ʟ[RpOPcxi\絍)Rxaga?D煊 ⵨u^~OkylHʛB"*oKgET:m"*Fa8W!*ټ (Sy꼶bȟ;X "yX d  ?潢&4?+Q +LS]ZQ>QFߛpbԸxȧd)|Mz28wy28{VT1Mntscj37J@C;m=Kж]v>Uh]:3nB[v+V6݁&hD2K@kh}2FоѮ@{J'ѮBۇv 3hqO6bèc7ހz&71x0RW|ͺfa½?1)o-V ˧ W͏ Sn+~jlK&1$\@:ڟMLdp{Şg|$B* HM1p?Ȏ5`L1g-ŴcM]6K*mzU<XcnmI}3 > .};HݹyJ'ʘW:%.Oⵛ4y7f|kd#Cx㫉iNk=n&2~2_A7Mދ5z'@ό1޺}t7:L~/$x ,?)g& cbE >+}RPA0u/X-&^1y>c0޳q |%X).e+e9ԧ&w5`NL{)c{s)`>;J! +Ɗw4>vZ Cq3K-6j7y'>wn` Utlc;M\d(ٶfLv?>ἴAOL'8>Aoq/ )|Dϸ8+S+;F{hW1x_P&ڄy^a񳤗ހz?#u * ;zIS[)]kЯm +|m]0&>Ķ\pߓ(IP~).#7Ӛ1 +ފg&&R->gSu>'LE|$GbYT8@>;vBQ(r`7-okض\)ly^oKx+ղ#'ܾݞ{?6;2SgܞrsZ#7<`to2]c*[p:/N.z_ 1u1\[cj%kb 08xn;zYXKyQZ:mfА?K;+I,q{~SXll LmL6ݴ݅mݛS^C]vEf2xG }ֹ+V\9c&sp4n{Yk8и7LWwՉyԧxɎCkſ*ƕ +Wc1oHKkeNj3WZ2]>k-nq\i-W[|j\i*i~јp @Igʃܫ,>|+k,OZeq7i\h ϵE̓X +&CMm;->@3Z߶qݢ5+OlC,Z>upݢ5֫n -ZREp]5)ŏ(\hiýkOx!]{O[m+yZGL-Nmם.'Qwˡ]΋콜A*<ʝ{t{wJܻǜk߻nwk{wwod9tҵ^-_A{}FN9vbApmߜȶ=m92lD?+wO7mC3)tL|;|פchi +*Ol剅čV&~>$jOV ϳy4ƌg7ZHK/_^y}|ST_FfےG^zȈZ?bF6I}Ր}l+Oh[o|vd..@{ +6suևè9~>Nn[/[z +e_.~_D :.yyx_yt^tyT?yF9S[u^"* ,~ʟ[ +8OSy?y +&^{\Jx l^X癕px l7ݬ ?xw}F@)K}O0Sg&³Wrۈ}OP*H<{R( +.U6Sڼ _>oɍv7݉vvFA=v?>[ўAmNhAmA37-Bm ACہ]?kh]v FmA{WqЦ.F{e\vM ڌ<&QFس0L+<,f7MJL_´uSձ%ign>E\K;Hک~WjG w3nϧ/A6ei dv2>B:_cձ꩎k^Gp:hpQ&QVb@h&JݕMLUB\f %Ez(T&A3].D2 +TR!̼߳3 K{μ9ys,F&%WO?kCZMr +3/>/yA>V>z7b紅BcAcX{O +C&?uzl-{X/=O }ޡ&ݯZ_{XV=%ޤ=="vgRSa=%H >T{X{XBe""jju,:|x'am6{X sDwU=z# ucj}t ^Zt֏jk:7VR}~Jf՛XmcP nP{X\{X۽=Ρ=1){C'9QZ~ꍎX\FX=UF=H7ғ5X@^ܼj;'3{XYYa MbkGb+y=,'ݰqqmaݕ-bacܿ:`{Xupq=CP,Kc6a7qM*_Ybr}^XIHѸ[͵o􏼿Bk wrwJ] lO!ӷTw5(k +?qV}+SW~ң~/z&KXGyjxLOz?g=x}P׃u^֫Z:7xw{2}<^/Q{4Z_{D[y>sotׯ{W)7:4)~ xU]loFo5|!W Iߣk8F5}Mot,{tܾ,*K E_E?5`ܻޅD_=7c |Y|̧}7z:w-uSL]P>{zH]>+%g|݇>}8?i*;iy/OYpgkk9Uv|ز2ݖAS*o>Uԯ*w4K @y{#ҧխ?rY̒pzb݈|(;%GԳ}=}V\Gbe>Sv3es}zO}pwC#45W}+K}TŊ{Erɽȹf#qi NAݐ{IOAOuvFӐwutr?{6y+2E}c,#mߜ pi_˽3\sspWYAK%&IǹCNxhW3,^G틲{FY#YL.ݝf"-xmBO_Stˬ1&rCk~= !_E'֦[g\KO]*?i'J"?F,N'Ǻ:t!?hrݣW\30ttG{f{5hq FHN:_9d~erfoZU.kЉ8݊KuY=mte֗t4KnQq*]k3AAFu5h^(6Ug+J tT{&^hvf"OOq:gwu"mv0&6n©Vo\KOLl`r-=T~V'k ~ַ-LɰG{N77_0ZzT~7k ~SRyX[O'ݔ/3ɵ ZXO']j&?wY*`WR.Nf5H%Z*5SEY-gT~H/_T~gVH^xԣW|4_3>7'*oTk D~r-=ob*@/ZzߕZ{Yϓ\KO<;-ɵ!|YJOm&_J=:ϝϝmB/_n*?_3d~SE;9Ss[3_ ǚ&q:OZ?K''ך$ǵRs 9;E~ebJȳT{&Znku˕krW[,werϦ[y'LmB~էE~.$=؎_+ +lM?(~`+bCgׂ@~󛾡ןzBg-+lF?y@As?&'zF]Z፞={7_"s#3wР';UZp>kyoԻs+LQg5)t=(s73Vt hN5/Qi|iNkz +Xþ"a5/2tmMr̓{9IOطPc 5g\b¾ &o?뿀q (H.Q.a-">X9|^/ ߄rl> +xê&W26^ |ÚE|+p[ |Úg?V8uapȢh#z4ok}Ӭwy}51-Lu#4;Q`m&ͧh#߾ i۷K +WI3 |09;Yy}3W'k=ݻ{YOu!Yap}K8ĪɠY(=u9<\j$]lW]t1Y{#B]"{'+9qm+GɵQ=rv @LLNVO~C֥GU? -nAJ^w'|(P>кԾFY{jי6fɽNh-h tX+JV8sz~*?zprun/|}7Qy}+̺3QַCt(?^YM^+-^GyQWZWifWƱ \푾No '^{rz'ڗJx'oDx}r^Ew5yxݿHihg^_k2Uj觎B]cSGNS'.NOti|=-i >'WD~^L^~<@`]T$J#|;~!G +s#89t94Kq6Wd쏌yF_J,$r5v^b`Y̰(rc&W*M5.2r8g[cWJj:5%TdjO\ -gh|¯^O^Yph|,WᣁO꬞p86Nc-.] + YU=9k^bjܑFGH\#~&^I/0"Sx?s!Wx6q}#% ><xoUoIHWQM-^ᇀwNJ|X%9 G{%>JG_S;ĽC[x!ƽNß%j|qw_g7oUxqytqyG,vx#ߧ.=7 +/cA24Bx@gjd%9UnhOU})x6FNIL9%,g3z&TF~p-#] +?xD:i{r$9*|o ުC-}S +|i3Oo_E_ƽ} +_ l'TxF~>R? y#?V7Jq6$(ă +/Oi~/%F~ +%%>F~W_`O'gOTF~W#n'~ +#eF~I_O<+`x;S + F~➁|8CIלR-ؙ%3e~7 gI |;|I<iFn +g&ĝO5|ă(l@7|~x'Ç8G P?x!ƽ=ICиxD;|oS ^o_-Hh|Wx_P/xDM7^$Oqo^a|T[ԋxDO\ǿWd*-c#?/~GŹÀ1G%s>IU6"PSBҸE9 x Ux_{8x=*.{h|VXT|K-\w.-,W?qG$]x!V|ƽ^ۀq?7H _]7(%[5B|_Wk'ǀ?cw\? Oܭч/7*>S0ashC碨[yb3ggzv7T6딹/&%s뒧s]M]:o?s'鼹)yvBC[ݿ5|9aG2sLu0}6pyINg[kبGR%3˽Ц}.GX8  +[,.<]][tpltUI>MDWqRF#@6>;bnCv'ݝ$eχzX|Rns9WF>/^ m՜p +~"ȶh؛]gyκyvݝ/K[ yߙ_ęgqKY׶?!(isyУc8%tHɏ }Wm'$7-ކٮҎ{'Kx yF )<#Jr/FvX&ͳqqvXd:"-5ݝ'zTw:4)nݽUqlS` J/{.Y^r4 zl/܎ɏs=?#챣feGw\CnKmw;ko8)u4oR{a}R)]T_gwD@L;^<""WH1 tMJ ~'g~w4>(">=_S=`tM,u\/̺ $,.EzGhtMhA%9"#ojq5ڷ) oC|b7uׇH=ek@k_s q/;>Wk:v>>x |(v%;x5䌂U-[mg sjP}akv~w+Ra5J}di}t>'j ;hc~Toȳ|G?z-B ʳ6Iy/ec! p@]t]ώ >p3l5HSyY<m|a,..Nj9y[[v:01c@B1Ww:[gLh~ +Nڡ;S(6XD꼣uޯ;ʼ=:>9MbZ~ri9Yj9߳|"ENUNv,ʸ"|O|mm/2bPW"ecYvT囖"ecMv=B:ଏ@Oapkĺ]bUK9aƎcGPcww*mգrgt'd'̭ܣ9Y[I*xvC;W# MbS8}˻WϿGwŘ{3\ |!E(/Gd/!ʳs|ev5zo΁>3>ڪN^bMG~Hbn[r}GSncO^ u8|y.q\)uЙIDZ^XU`*J"o#{2!vfHhJlɆvV.tБ!~+2?ۊ` {3<-#>2{ 1Q-Րs]~u>:z纝˫yӳgee-fgM b+F>y@-B<\\\][[za^ssxَq" O\}mk68 uEDX2h["#ov4u(& 4oNdD~|i"٢?&w&fb\/0gN!kz8$6RbLg}Bw:ۃyèc!xX뷱aUg%!?3 R;{Zx`1v&S;ms|>c qv߂DhL"Zp+TpWZQP"O8ğ;ĺ\~LS /Os]kn=;vOG +h \֊o:SYi5/\g^5t`83BMߨ#Z'XF gGʼr}qkk,O ,Ʈ&nb$ts(LQ/_xsO[,΀s{0{DsOК|+`:sZ.Cߝ-wnO]YSP&=/»#\U01K:^ xk7|%72{=].~M:~"C]e|\OPY8jƵ()P< +@%=rlhM)N DC,B;]E#>D)]]cQ>۳-s36&J͢?gLl[ZcK9^v+Rnk;`]괮/f{ !iŐ8CW1$C~Y%tI0rlq.Ty>JSe{'{K`gϺ3Q_3&O [/\3.wKS~Gqx4euJ|<ކ[ոr{YǺ})5ަxk&?Gzԡ@θ +c^2dcWdRjL|8q)b1s2s2։ck!ۏ}!XV +1m]xZ2رҍ`]C:tAx7qYkg÷Է1'XC{\j. +R O|0+oq .K+<|Z1ih՛ Y3w%\“ag1g _lӬW@`|4p'wFpcwg5.C.HnD^ל5s upM[57ܗY J:ď[c#\wD +>>縲ҍ|:'\.\(%źE&&[SbNޝyjllBvsոD~aNQ&F쏕o3EA0m +20>h=kEٵTV!X[]?Ÿ~qm[?Jg դЎn[_袟1?w-rk1/Y\'L!86=J==Jm]޵99 ebxZCG)]*#;6`crX[3#Wl.>݃}B_܂y XG։wÏ.ݴ:^Ͽp~'Ҏ~PGcj'T#øN0G@'hz0ƷU2~%ݝX7\uuo棘rL<߈WM{I=0Vyr^~a>o9h_VB\xuaG\Dz=a];KE;A=[2bu0W޹a1ͷq>iUGk45Nu +VCC +W߽ ,67꛰WӾ+0xわboQZTߢwyNk{8~Yq9^P Y96w 74q+%g: ˎ{7m"yq{uvWj?ƽ%70yc٬3^ ?5k\ߥ؉؏p܁M\>p;֫bpu'z׆7O5bHgcI}},pŵlu#rfY ޻چIpGZ<êuPMWLE xk (-cʹMJ,|_"Vku? s-ui9+K fL  yH@_Jl le?b_ z:Ƚñ&Cm}A_O5㻆5~<b}<(/ g߿8`hdbwvVv}37>ET[¾S7l?לUq\4 `q/`zik=3w6@`n4ħƯƁyYC2Gfl)ۣ^ wV}~'ڳ}~:qVe,Z3.&)}`4t>HņB|Qӳ]=n&+?D5I]>k,n!c#V enIo9L6X䃱rݛiF awT;[FI堭v$ih(ǴzÍ_=uF: #Dڿ_ +ݍV Rwupq^\oFNBw>}c lGJמt́,)8";eb=kȷݑeQGg"6މ@zXigWПৢs%BX&η|[~`< _ȳ ೟(DE56Ěלn q~Av|bT#.gb<[%(.6q/pRB_ MExa`Gx +vqC F ./'I^?5"- AwT%K#۹\qbn<'1 >Q-'|-x YKX~L<]Et +=(ܟ'=Ρu+DA3xEXsC,^p i&M}? =7`}9)=յ ׋p5yR1ߞM Y]E .uF~&h DFLi!\ e"/BOO׾ߺ3ӵ}wo[3]oEe~i2bef_c؇o[tJҏH?F!X~5Uoy1σ(/x|ꠟB}A??[{C mu9s{'燾S|ۻNю΀m,cnthu 䅝;p𖓳o!ۂ6v(ۚ%mەgqL䞼vڶCQmvwON#N_;fN9')iW.:.n} .oCwǠ}@ߓ[T;kܮヾo湪 Iޑ#n=\@ׁ ]?u)kt]/zZׁ~GǺ94ٿ]ݿ:OlmK蚿yӳ61ݺ76e?˳{veF;?~{_ޢM% 9x /u]YӱA<1<'\+a%xwo['S7>ƶ|uG17b[;LjXmBɎDZL=Q9dJ;_/xrÇxxM$N"^)8z5^K7j;qT;luxegL}hljmP۸cqgE>j93R`Wg7L<ȳy t,.3a.cVOTN?=C9,Ttk ?כ8Ds`\rRn|[n +98G͹1(2<|Iz?Pg_p뎳mpپ>uKfM`3~g-MoU;߿a>ɵ\7ߺmLh3G\oQռp7!uT7ڲޙ':HXL]`2`Xbͩk\o @?zp]2OT}6tIWR&r~šwD Dkrkm +Αch/z6*sjh/?g7sM}n\s5k ȶ(ݶ̺ݾhofstCl݁IVnޯoN ql,UgMu +}ob&3Udzܩq72@ kFLd\wwƝc;a-y'z+\ٌY5=8pqfOΊ3߂z6Lg΀͛uROy}T1|1+-Cr}BG6PFpjy6։2V<ͣY%Ҳm''2}sf\C kv!Z!C]8f֕R>.|P[ƅI |Qƕ:.D/GyMs>|_9(w<)(6h>5p)}0~d7N-}yF%#FUm1xgh~_); +SxYIeRMX T]X?(ծ/_;hdg (?K =ͼwdA:&{G|(7;sd20|yr9JgoXgrE+/#H{$")M[L36QWoR]5dA$>P~z&տo+Yzk/kP*8y-hSDTh*,cEM%Bڤ]z[NjuƮGvu< y}CL~9Hƍbߣܵ')ޭ~sr9In圦 j>C3@}8 !΢k2\v\#_M(Fcm{>zC}z#wyC-Lj[1_<419^d,>9Ze}~}:̿[1Ypkp@oreCƆ>sǩÔxΎaۖψ[tqZ m2RrgY)e} +O '/GS1R}y+;և6kT[a tzţbKۤM6-ֆ["oْ~-\*z{ΦNo5li'7 Zo͸{m99^݁'߻'vMPn__X={U:?=[O6Vz;~XVC*c[O2Zo=ؓߊ[R-/O&=[OR_hSmdB]D|O:qK@yAnK.9}omym1Oaʾǯ<"@:́v γ ߜK39;h"z!ƦY1fq@jMX߿AlxL t.~wFz跰sj mi'?k?—CM=H:JCES'^,=%TZ"௮}&;Ezq +אAݡ"zLHD43ߗ#Ml̑|#EAa8q@#ڀ Fw>WYD\u;~{J=H[D !ߣ]]=u:H7D lu|3t"zy126fLpw{%*ڠW|߅yɈ͉y=Q+A5:Kr>^;Q_b؈yD߫4?M\Ԓrn<8/KFmpK;aRe?;k>B/g/xS +N9E ֋2R gYP~0RjSʾ9M&*Q` qϙLg@gc#G=xSEM;^I=|?gQ*='t\j"l069 ]0I;q_4q=[3қ|1Nf"/!G?aT[9r9^!ǕǗ̈,&Υ%9!ߛѲaRb'NPr[4(/F)ř(;H;wzۤ= W`c(YXN>¹!z"G +eԳW冿yCO6xe=zPpl"bйvM[Z?V"fE}dzs{v e.YϬm~#CGt{hKjG7cvJ{ܣ#-=PwgxOėy ̱WT՝sl<f,]|?b_Gty >Nj̳OC8޽oSfmo7ƶTGښBέ ܚm}DS/׫\wk(sY?2$Wo |8s\_L^{.D[LAW(/W,9ϛ6}MyU'ZӰQXL,oS, #/CEC;{vn` .[ vּKۈl˼3}1˾^IZ }OoA_isu se苇`;1+xEQ7 Qv eyQW['^V91Ns6율 ,ou0o)~*s 'dg}ÿ!'w}~/?[?@jGߨo?wzu:.)}fo7?)='P/Tfnƚwo@='#=(?KBwOt+;)Y_~'tܔVCNRuZuF|gyz'uR*>=ai>oTdo5?wbYLͅim*lߝƋuG:ΏG9%'=Q/<Ǒ,9ו}}q$邲~q7M}9|ꃶ6z G4q?mkh.Oi~幑<rZD?@﴿V!?/Jh7nޑvzB ߷ׄxE>h}+~AX}SӼm}[6s.qx|\w[ ʪOWzBSПۈ' ]9gRV~k1yTwWyv6󄲇 +e9[Pc>x:x!1S~OEh.Alq¯6DI?xTMh)!ynVss}^qVZ-}ro +W ߧf>,xq;x^pa߂H>®?0+$eS.[2 +[$/OpNmw"?K[Bߠ?&i$g4=csIQSih?b=.0Ҳ3ez wno}2c EgA939)ϒq>Slb^SmNHSr;NWqc,nb3<+˩b.#ey[jjbgQ(f׿y]Nh(i iV]<(aOyዏ=}7OjK<=?וiQ~gͱ=u!7A;ǜ}ft%_sD}Ո46~߉X7y~(6%WWo 3Eg7ک?b Ecv]V8v[*Zp@pe%fnc5yͱ~낿zG ܃g=-1>[wo::n'awoK(N~w\?costg>nQu˗u[J;֮7u_Dc%MS=!-틸e_S,>D};US6߉پm<;os MΜM{ 䈦m4!y:?e Wί=jR|?BrDrqutwFo^s?C鰾F܉>V5_zsz[܌ks~Azv8_ |{'1Зq ܹ=.nbL?ǒO5 ( ]ux6곘sDgQBqn8|d(ѓX7}~/_g릔wA?OwX8׋P~V;sj<uiE][oLSkyO@sj #ؖ qz7c7op43N-"m`;6 +@uw3k{ }0S3]m@|э֭:\%F\s|NzhK}yp%/׌u,iX~Á{GiibN~HA'_0NpdlXVp./u9rot0.0e?ߨlFp. +y5J6~]RǿכXi-'7@QEȍ1Aw;ӒJu~ Kp0椰Qڞ{ә1إ-bwo~Ebۆۯ.-~q zgMp. +nVcN΃ kJ3hgԹno~l~ +ߗi[&ZYcji "k3ېG3J%ESYg=Qp'~> [v9!هr~_}סq q~b4uͥEImv|Əv7; ϛlGBʠ^kwؿdY0)0w&_'-&xEx7(٭\E!)c^O,sr}ÚOfh=B5ENkN0W4Oο's(vT|? /kr.|X-^\GDO̶S[eMloi~ߘ-c` r\UVM8rt 2~gkJmS-#bpwΞ0uB՚u†c&!i^'{Am ~1Fòc?~Ёew~~^,3Q7Q_3_YFמ*ゴ5ECg3c۟ރ7bΤݷk[T<%e{ ͈nkOH1ߐ|C!U#svQg ֠-9nlBOhE1nq;᜔&㼕W|$oB-ls!mL휮9Gc>5l[/ ۜp iٲ s-E_n +=-Ž-=?tY[L{>gkO-#]W.Jц[mclgύ7+um11QQЕowoz>cFa9lW&^:.ΥE2.^]}pQ凝6> +%}!Gi 1nɟ Ps4rmёqe/ykoX@^ˢƶ,hc=ц>翲.Vr3]bUYDG]{A[4~/߽(4j`W|&iᮢQ(9bϯ +mk襟w ֽ$smqk dmu[l3[:}.F!tܞ s5oiA6`׆^#6݁1ٶ+:v}+ + IEkʀt|?b7dž_W;&޳=*fE4X _|9"f-U|lh)dcD{}o>ڛ|uEy6{6l-h ؾljz lgGygx{? ) HGz3қ.ъ̓g̓3׊W#hcd~?B/pm]-^aLF3s|o]?9_>+U?w>̕'SmOw|; {N[仦gEm|?o+o5]G=_q)}I;|-?i{o^pzwo9⦠?W_?knGj/cG.+{aÝ6NzGglw/} M?]US? Ō3[>SA =3f ǚz7_)eA:֔fO]lgQ9B qֵ}.q6SEnͼC߼;_\w_]V>{ʈ.L|хsR'2ٕ5rMfʥV^VSY鯚V^宙[Z]qG\B(K/-Ygά,+]]^UTg^S>{Z W⺶bvKm}u]1|\,Ik%3+fO+|?*gVK?|Veռsj*fUᯩL&UfٵNeWOJj:q=JH\PY5jtmeWhrU~_5PyJ!syeRemk3*&֔O)- %WN9E߯:,/U9|&ZqT.r?Y 9USA=feU\ +XB VGXW3UUc +ZƯc`?br|12W<~Xښ95 Ɩ**bv,zU=㥷]#.WrՔj^ Y^Zi xMb,T]WƯ)TW̚/)S:gfh}umUN<ת}ϝM dMBL* 7qլ93 N+*nӡPS"ϮT}DUFeq9 _HS-_[SYuKCc*ˮ7mU5VRPakK\t4Y-VUVIf^t)wrԩUk,TNwqX[ Ӧѭ){ۤ+jʦW4BrI +t4kN#Ŀ9S'N3ހV>ϤMc~yո ו?z̤IcJJp0I?g49+/GyAޟ5efd6kUZQ=g_Vm׵s-$ήYSV,촥RRu-UkT]=Ћ zH_avfwUX^N$GyUJ`+5D͌яZN7u?}TW)ոcsiv=J'TT*'mK'/@D! GUBsUW +Av(GLJo%x}&Ɂ+(L)(s^5DENXCWN6&pcMFQwTt +552$~v˫7a0_Rijf-Q]Ʈ+&w~r7Q}S~rZ7~TUUV}F3 +?wMN7{6|T-!R>}Ɣ2]B<ڗo7%oǾ +%+'jJXaD>D3c W9Sjv&թV3ܯ)׼̞⮜:Z k(otwEuv>S<$pWgTm) }ή3rJ1qݎs슚 +@+3*Puc\A+vsJy7Ț|YB549U5jh|QԠݡ\kgy]7v [?yhSSϥy4}74;S doѤrB"%x ҥx'r9_||6zhar&'%w@<I=R9\$%{D2o^Q&LUz6H[ϩдd͵#Z5:iL4mr4|\5ZX>c C}O blBv-j'R=Ӓeq5BE~. Nvlo~_FBjUoΙ+SmDucs%G@MI(,jou\71EH&S(kvLڼ[KܕsluUɵ0UnW/f%eקB2U>Yݟ]+k{3~C-oKc¸=ncЉ ƫ겫0Ot$햞j]%ѵs:sXVE5f98bk+gOQ5ZQeDϡ0%v,ȫaʕSm 6mHSz\}{6KNn5ډEh2K"4ovX`~[աI[T+8r7R?٨ZQ^Dm-O]_^Z rz&B55% UKK#Ӑ-pOmA(06s?eCWΜ^7G̖SjL;+p'ұփ+ZL1v.m +kx!)wRǁ8>\ynſ Wo)ƌ*%"xjgMncsVE,UjBW::Ԋ +֝DWv߾^!SS*eqIAd8-1˹#8_˱t(\h=[U`R$)0iF!9'igc٘NLZHg r̯Fǯ7E:Qzd +[qgG^jgEJ~O/wYiN븼sՊǡIćpI,:/H&Jl*‘ӤcrMyzFyz+jDZϺPRCvbBLAg:Q1!Nȸͩg'gV״@BK\.{5Jp2s.")ʥ f~\$ Sf3m}ߧlj3-q3i@3{ƧХjG7Y +/YΔ8tl dzCD&y:?Cʫ]fbK+tt\] xj:Rxa~'~܉;>gKO%V'K4)Rmo|ܒY:5Ԏ^:s2i{~ͬ,j Alijz*g]A2<Ρ?z*ިqTU.l[==.^WM3SKEgKu^Z_R]=ȣ')zՍʪNvEM2SO=\RN.'qWpkێ,|Jm|80tU)yKR cǸՄL-qHYpS#U"us_]|{u<] dOi#Z;!>; ?-1XT-bE>85WfγArxQ\jNQNr_w·oswIӲI/)a_ޫ&L0/N}{km9j̕+J OE'U>[L>dtȐ%Wsd瑓$"pҩ^9cm+nd̸MyM r~io~\TCI.3gΊ/.%vS {fjbf_ĨP9~C-?vLuVLeeJah2kg1(Gf"7 $1*]V[UEwQÞZ[L\w2c2~ՐIzc=SMM9Ub2:R$ W/E7*Z+N6U3$wBt>T:m2*^v\vj_Dssc=WЛpӫXhJk*݇ΕJсn>ڟ5AB{l54!+9.%>Cz%~=xk,V}E">7">5#ͿtH!}Gb;p}#/NG*E>2bӑE#eX=~>H?Cگ3<鳣b ϐD9@zY ]t}!MccH?2{נ]B?b H?C@1!یmb,6UEX>FGچL෠ H4X> ?Fs2bH! +bLA{ q>A@/H?-% }zH_B: HE64^tЌXHD@N tn C#ՠ|݆C=3@> q4!!݌TA(`7Hz !_c>/6 @CHׁ@! sꐮEARc<'kzb!} >b7Z?Ӝ'HwlC~#G@R>d==݅Q/! } U,A:Y7"nA +iϐ^孎Evt/BH{ 4H"G-G=k?}7ANၷp}=?t1Q=ѷ{ bȡ;m.Ә zfH{U9ÿm$hMMw.GS$h=?0#+ӵ% h%S-%wzւ݁-3K7:LLx]F/ɨ CtY`Cy"EK;?k1OU I Cϐ2%Jc:>:^L($z[%YunnGK?x_G]orZO{K~$Ѽ1Kse彜Zu^ Ҵ'%'~ ?3)Q4uXd^lG?X*]&뺸}M0u "!VKm!k ;v⼪1S0{vy;$lCGBΆ:** ZE-RD[kUV&YR ފv]O> vf*Wss>sJ؋1UHj>l;Mo aoK25M`㏙b; y %SX̠TphFc9EC8gbGbjjو]~$:+}iڵgѪ^(nbQqʦ~\2!:er1oPfXxOo}͢v +w% Q 4${>{2c^bgQkkU!I9iEqCO6x(ӿq e!%|W Kd/?<JM'8t}sӐ*䱩.85SZzGv? +K b.tNgK (F9TP24q6=S+AzpǭVP?K]2/FAnWA]wbҧsX<RlSȤ#{C{Kz..޵O1r bdD; rNs3_7yҜ8D$&*2#hQMq tMXwޙ^u{㼼}p\e{L#{#U)^Ǚ~ޗ`;z箏6{T<_%tRjȓy?w%;}@}]P(xZ$]~[3`:wE亪qyrT\QJG<ڍPv"yDU:"Y8J I(/4!S ?`\L}݆o2tDqDw:L>>*ԩ3xOMOJ<[s6PSy?K #S9\ʰ8aۆ +ܒy21ⷋDE(4Fgm#16=Ek0ܝO7z3ҋw?ѳ.?恩Z"5yrZ3'q vİ"?Wܛ~B(ϢJ6BN;ͪR;quh;DxUy0V?ßJ^Sܓz&6nN&@G#08IWD=\%Nj܎xu>G:_rr + +Q6'|uE=k;2=۬6Qcu]M%7؜"Fn+חP{m:wO7=M+/y$^(]OҺ4T2 uG%n{6W&Fp.!w.)jkϮ}/*J.nT)}SWzьaUUJ} "[G|vƫ{%ۡ;cc:r\_0qlm(nﳔ<9)%Aw"רv/x+'?,OѢ+pxXOn{cW?) b"Ѩ#Fxjmcu~~2`ퟌf}9o @hBBpDGe3#C4~QOhu =0 xfm`vyMe b[6˩w, J#l64-ٳ6dԍTN3ʨM)&㩠'lAqN Ă]|,%:o`/V>uly֞OWyϯX,` +\Yͱ~/ZF Uűyi!F[FV~Mn .l>?[2B?aocgƏg 8l;YAeH(>.'.*!4b+i/M_ qHmYW4Xڹ$'˪WIMuVr?7X6ύ$`q2D.ᐭn6{_LEVAl[6c +؈ڃ |`4fI~fW@W ]oly e 8mtJݗ0gg8$BE_qQ5~=Lyè]t+AõQ^A+U[e:H3F1Iy6a`f&nί٤Rr߭F-,*$i/gMcίBIO1|8žɀK~a1I +q0O_Ih%oƈR"{ 'Vu_e7eT^P./YP^%UjZ7q=ʲ[N*{?IUl)nxc- |A:tYs.S퍊]<[5Vtci+-󪭓ԃnEYQ[$Ӫ=yYjgU/~} +/Dbw[(<&ùTeeU=Wԟ ^)UW}'^5#ɺPː\CվRmm˪=u  +ߌ+*tEe\|_|*^δַ:r +r\ZE3۷ +(Z|-Ν99y]|W>c9͵-M-ϰsW3Ѫ=\jޖuKѯnTRƺ3e9-5m/ʡ˩nhҳg+y-GrMMߓsgR4`3K -infx):@#ïRRz7&ubM|qK +㐎 .㚮w#T5qQجB i|wt}G5z i㚮'Ǻ~uյVbߣ:nZyo`LD_ZźgY, F]Y,~U^l@ubŇD}ftx+wk.+(1\.T"(DPP5ׄaJדǩ)de5,,ӹ5/["}qxWWl)eYl&<' /8` ӹ02tQeB-^/TGzRFwEm@yVfDeRK eY)Y⦥elN->ْ>Nw_J]s]l! li!d^ ^ݱ~u'i d"ADO;F`ʀ=*B'㨄˗pD[gU0^ )}eҦ]G28.`[dj orj _;+^*< @}`CbTdؐO؆5<%H%nPtt*ohKv‰`hdЮDT/B&c[R]z+6ҀNd]0%B݉OlEA">Bk!}> d"4ݯמzꩧrT \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run.json b/Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run.json new file mode 100644 index 0000000..38aeef0 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/custom_opp_ubuntu_aarch64.run.json @@ -0,0 +1,26 @@ +{ + "componentGroups" : {}, + "components" : {}, + "errorOnAbsoluteInstallDestination" : false, + "formatVersionMajor" : 1, + "formatVersionMinor" : 0, + "installationTypes" : {}, + "packageDescriptionFile" : "/usr/share/cmake-3.22/Templates/CPack.GenericDescription.txt", + "packageDescriptionSummary" : "CPack opp project", + "packageName" : "opp", + "packageVersion" : "0.1.1", + "projects" : + [ + { + "component" : "ALL", + "components" : [], + "directory" : "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out", + "installationTypes" : [], + "projectName" : "opp", + "subDirectory" : "/" + } + ], + "setDestdir" : false, + "stripFiles" : false, + "warnOnAbsoluteInstallDestination" : false +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..4f6b313 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/progress.marks b/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/progress.marks new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/CMakeFiles/progress.marks @@ -0,0 +1 @@ +2 diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/Makefile b/Increase_Bedore_pipe/No_increase/build_out/framework/Makefile new file mode 100644 index 0000000..a26accb --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/Makefile @@ -0,0 +1,211 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework//CMakeFiles/progress.marks + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/cmake_install.cmake b/Increase_Bedore_pipe/No_increase/build_out/framework/cmake_install.cmake new file mode 100644 index 0000000..8859519 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/cmake_install.cmake @@ -0,0 +1,49 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/cmake_install.cmake") +endif() + diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..4f6b313 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake new file mode 100644 index 0000000..4be8017 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake @@ -0,0 +1,19 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc" "framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" "gcc" "framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make new file mode 100644 index 0000000..605a5f3 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make @@ -0,0 +1,110 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +# Include any dependencies generated for this target. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make + +# Include the progress variables for this target. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make + +# Include the compile flags for this target's objects. +include framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: ../framework/tf_plugin/tensorflow_add_custom_plugin.cc +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o -MF CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d -o CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc > CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc -o CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s + +# Object files for target cust_tf_parsers +cust_tf_parsers_OBJECTS = \ +"CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" + +# External object files for target cust_tf_parsers +cust_tf_parsers_EXTERNAL_OBJECTS = + +framework/tf_plugin/libcust_tf_parsers.so: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o +framework/tf_plugin/libcust_tf_parsers.so: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make +framework/tf_plugin/libcust_tf_parsers.so: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libcust_tf_parsers.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_tf_parsers.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build: framework/tf_plugin/libcust_tf_parsers.so +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin && $(CMAKE_COMMAND) -P CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/clean + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend + diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake new file mode 100644 index 0000000..2a9bb61 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o" + "CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d" + "libcust_tf_parsers.pdb" + "libcust_tf_parsers.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_tf_parsers.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal new file mode 100644 index 0000000..eb5cd85 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.internal @@ -0,0 +1,225 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc + /usr/include/stdc-predef.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register.h + /usr/include/c++/11/functional + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/initializer_list + /usr/include/c++/11/array + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/bits/std_function.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/c++/11/cstdio + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/cerrno + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/unordered_map + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_map.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/vector.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make new file mode 100644 index 0000000..6c28a2f --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.make @@ -0,0 +1,650 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: ../framework/tf_plugin/tensorflow_add_custom_plugin.cc \ + /usr/include/stdc-predef.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register.h \ + /usr/include/c++/11/functional \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/bits/std_function.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/c++/11/cstdio \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/cerrno \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/unordered_map \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_map.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/c++/11/bits/unordered_map.h: + +/usr/include/c++/11/bits/enable_special_members.h: + +/usr/include/c++/11/bits/hashtable_policy.h: + +/usr/include/c++/11/bits/basic_string.tcc: + +/usr/include/asm-generic/errno.h: + +/usr/include/aarch64-linux-gnu/bits/types/error_t.h: + +/usr/include/linux/errno.h: + +/usr/include/aarch64-linux-gnu/bits/stdio_lim.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h: + +/usr/include/stdio.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/stdlib.h: + +/usr/include/c++/11/bits/basic_string.h: + +/usr/include/c++/11/bits/ostream_insert.h: + +/usr/include/c++/11/unordered_map: + +/usr/include/aarch64-linux-gnu/asm/errno.h: + +/usr/include/c++/11/cctype: + +/usr/include/aarch64-linux-gnu/bits/locale.h: + +/usr/include/locale.h: + +/usr/include/c++/11/cerrno: + +/usr/include/aarch64-linux-gnu/bits/stdio.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h: + +/usr/include/c++/11/bits/localefwd.h: + +/usr/include/c++/11/cstdint: + +/usr/include/c++/11/string: + +/usr/include/c++/11/bits/stl_multiset.h: + +/usr/include/c++/11/bits/stl_set.h: + +/usr/include/c++/11/set: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/ext/string_conversions.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/endian.h: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +../framework/tf_plugin/tensorflow_add_custom_plugin.cc: + +/usr/include/c++/11/iosfwd: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/c++/11/bits/cxxabi_forced.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/include/c++/11/bits/invoke.h: + +/usr/include/c++/11/map: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/memory: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/c++/11/bits/stl_map.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/exception: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/pthread.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/errno.h: + +/usr/include/c++/11/utility: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/include/features-time64.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/include/c++/11/typeinfo: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/asm-generic/errno-base.h: + +/usr/include/c++/11/bits/char_traits.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/c++/11/functional: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/c++/11/array: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register.h: + +/usr/include/features.h: + +/usr/include/c++/11/bits/stl_multimap.h: + +/usr/include/aarch64-linux-gnu/bits/errno.h: + +/usr/include/aarch64-linux-gnu/bits/stdio2.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/c++/11/bits/stl_tree.h: + +/usr/include/c++/11/tuple: + +/usr/include/c++/11/type_traits: + +/usr/include/ctype.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/atomic: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/c++/11/vector: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/bit: + +/usr/include/alloca.h: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/c++/11/cstdio: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/cwchar: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/c++/11/bits/charconv.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +/usr/include/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/time.h: + +/usr/include/c++/11/initializer_list: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/include/c++/11/bits/std_function.h: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/c++/11/clocale: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/include/c++/11/bits/hashtable.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h: + +/usr/include/c++/11/bits/erase_if.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts new file mode 100644 index 0000000..ab564b3 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_tf_parsers. diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make new file mode 100644 index 0000000..e471fdc --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_tf_parsers. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make new file mode 100644 index 0000000..c535bf4 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_tf_parsers_EXPORTS -Dgoogle=ascend_private + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt new file mode 100644 index 0000000..062c631 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_tf_parsers.so -o libcust_tf_parsers.so CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lgraph diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make new file mode 100644 index 0000000..b700c2c --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 9 +CMAKE_PROGRESS_2 = 10 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o new file mode 100644 index 0000000000000000000000000000000000000000..b72c4be62481c8c358978f27edc091b5b2724300 GIT binary patch literal 10480 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d new file mode 100644 index 0000000..63edc0a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o.d @@ -0,0 +1,184 @@ +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o: \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc \ + /usr/include/stdc-predef.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register.h \ + /usr/include/c++/11/functional \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/array /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/bits/std_function.h /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/map /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/cctype \ + /usr/include/ctype.h /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h /usr/include/c++/11/cstdio \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h /usr/include/c++/11/cerrno \ + /usr/include/errno.h /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/unordered_map /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_map.h /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./tensor.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_fmk_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/register_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/CMakeFiles/progress.marks @@ -0,0 +1 @@ +2 diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/Makefile b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/Makefile new file mode 100644 index 0000000..cd67c6e --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/Makefile @@ -0,0 +1,253 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin//CMakeFiles/progress.marks + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule +.PHONY : framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule + +# Convenience name for target. +cust_tf_parsers: framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/rule +.PHONY : cust_tf_parsers + +# fast build rule for target. +cust_tf_parsers/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build +.PHONY : cust_tf_parsers/fast + +tensorflow_add_custom_plugin.o: tensorflow_add_custom_plugin.cc.o +.PHONY : tensorflow_add_custom_plugin.o + +# target to build an object file +tensorflow_add_custom_plugin.cc.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.o +.PHONY : tensorflow_add_custom_plugin.cc.o + +tensorflow_add_custom_plugin.i: tensorflow_add_custom_plugin.cc.i +.PHONY : tensorflow_add_custom_plugin.i + +# target to preprocess a source file +tensorflow_add_custom_plugin.cc.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.i +.PHONY : tensorflow_add_custom_plugin.cc.i + +tensorflow_add_custom_plugin.s: tensorflow_add_custom_plugin.cc.s +.PHONY : tensorflow_add_custom_plugin.s + +# target to generate assembly for a file +tensorflow_add_custom_plugin.cc.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/build.make framework/tf_plugin/CMakeFiles/cust_tf_parsers.dir/tensorflow_add_custom_plugin.cc.s +.PHONY : tensorflow_add_custom_plugin.cc.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... cust_tf_parsers" + @echo "... tensorflow_add_custom_plugin.o" + @echo "... tensorflow_add_custom_plugin.i" + @echo "... tensorflow_add_custom_plugin.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/cmake_install.cmake b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/cmake_install.cmake new file mode 100644 index 0000000..a5eafa0 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/cmake_install.cmake @@ -0,0 +1,67 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/framework/tf_plugin + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/libcust_tf_parsers.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + diff --git a/Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so b/Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/libcust_tf_parsers.so similarity index 76% rename from Increase_UB_case/Is_fill_UB/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so rename to Increase_Bedore_pipe/No_increase/build_out/framework/tf_plugin/libcust_tf_parsers.so index 5b560a882596ffbbc8311dabc96005caee719128..87e886ca87b5fb794d40c594a132a06e9113ac99 100644 GIT binary patch delta 80 zcmdnszrlY)E4!Y4X>pN$PJVJ?j=p1Ya%x_Rej=FCEy>T%$<8d%&q*vvEe2AVNoFQi bn>Vx173Gp;fB;$M&0eza7&m*!XK(-jogNxE delta 30 mcmdnszrlY)EBj<4VbjgK*r$nZPLO@UIJtmPV6%sO1_uDXTniom diff --git a/Increase_Bedore_pipe/No_increase/build_out/install_manifest.txt b/Increase_Bedore_pipe/No_increase/build_out/install_manifest.txt new file mode 100644 index 0000000..0ac03b9 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/install_manifest.txt @@ -0,0 +1,33 @@ +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/libcust_tf_parsers.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/inc/op_proto.h +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib/libcust_opapi.so +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/include/aclnn_add_custom.h +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310p/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310p/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/binary_info_config.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/./upgrade.sh +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/./install.sh +/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/version.info \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..4f6b313 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake new file mode 100644 index 0000000..0368345 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake @@ -0,0 +1,20 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc" "op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" "gcc" "op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d" + "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp" "op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" "gcc" "op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o new file mode 100644 index 0000000000000000000000000000000000000000..4a3beb18b4699ad9920afd1910077c009b44e433 GIT binary patch literal 62752 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 z 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d new file mode 100644 index 0000000..7096e5a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d @@ -0,0 +1,256 @@ +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp \ + /usr/include/stdc-predef.h \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom_tiling.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h \ + /usr/include/c++/11/vector /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/vector.tcc /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/array /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h /usr/include/c++/11/cstring \ + /usr/include/string.h /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/stdlib.h /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/include/c++/11/string /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/cctype \ + /usr/include/ctype.h /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdio \ + /usr/include/c++/11/cerrno /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc /usr/include/c++/11/functional \ + /usr/include/c++/11/bits/std_function.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h \ + /usr/include/c++/11/iostream /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h /usr/include/c++/11/cwctype \ + /usr/include/wctype.h /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/include/c++/11/set /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/./gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/././ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make new file mode 100644 index 0000000..5184faa --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/build.make @@ -0,0 +1,126 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +# Include any dependencies generated for this target. +include op_host/CMakeFiles/cust_op_proto.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make + +# Include the progress variables for this target. +include op_host/CMakeFiles/cust_op_proto.dir/progress.make + +# Include the compile flags for this target's objects. +include op_host/CMakeFiles/cust_op_proto.dir/flags.make + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: op_host/CMakeFiles/cust_op_proto.dir/flags.make +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: ../op_host/add_custom.cpp +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o -MF CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d -o CMakeFiles/cust_op_proto.dir/add_custom.cpp.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_op_proto.dir/add_custom.cpp.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp > CMakeFiles/cust_op_proto.dir/add_custom.cpp.i + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_op_proto.dir/add_custom.cpp.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp -o CMakeFiles/cust_op_proto.dir/add_custom.cpp.s + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: op_host/CMakeFiles/cust_op_proto.dir/flags.make +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: autogen/op_proto.cc +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o -MF CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d -o CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc > CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc -o CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s + +# Object files for target cust_op_proto +cust_op_proto_OBJECTS = \ +"CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" \ +"CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" + +# External object files for target cust_op_proto +cust_op_proto_EXTERNAL_OBJECTS = + +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/build.make +op_host/libcust_opsproto_rt2.0.so: op_host/CMakeFiles/cust_op_proto.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking CXX shared library libcust_opsproto_rt2.0.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_op_proto.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +op_host/CMakeFiles/cust_op_proto.dir/build: op_host/libcust_opsproto_rt2.0.so +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/build + +op_host/CMakeFiles/cust_op_proto.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/cust_op_proto.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/clean + +op_host/CMakeFiles/cust_op_proto.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/depend + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake new file mode 100644 index 0000000..76762a8 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/cmake_clean.cmake @@ -0,0 +1,13 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o" + "CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o.d" + "CMakeFiles/cust_op_proto.dir/add_custom.cpp.o" + "CMakeFiles/cust_op_proto.dir/add_custom.cpp.o.d" + "libcust_opsproto_rt2.0.pdb" + "libcust_opsproto_rt2.0.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_op_proto.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal new file mode 100644 index 0000000..f01527a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.internal @@ -0,0 +1,603 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.cc + /usr/include/stdc-predef.h + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h + /usr/include/c++/11/functional + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/initializer_list + /usr/include/c++/11/array + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/bits/std_function.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/memory + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/c++/11/cstdio + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/cerrno + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/vector.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h + /usr/include/c++/11/unordered_set + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_set.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h + /usr/include/string.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/include/c++/11/stdlib.h + /usr/include/c++/11/iostream + /usr/include/c++/11/ostream + /usr/include/c++/11/ios + /usr/include/c++/11/bits/ios_base.h + /usr/include/c++/11/bits/locale_classes.h + /usr/include/c++/11/bits/locale_classes.tcc + /usr/include/c++/11/system_error + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h + /usr/include/c++/11/stdexcept + /usr/include/c++/11/streambuf + /usr/include/c++/11/bits/streambuf.tcc + /usr/include/c++/11/bits/basic_ios.h + /usr/include/c++/11/bits/locale_facets.h + /usr/include/c++/11/cwctype + /usr/include/wctype.h + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h + /usr/include/c++/11/bits/streambuf_iterator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h + /usr/include/c++/11/bits/locale_facets.tcc + /usr/include/c++/11/bits/basic_ios.tcc + /usr/include/c++/11/bits/ostream.tcc + /usr/include/c++/11/istream + /usr/include/c++/11/bits/istream.tcc + /usr/include/c++/11/cstring + /usr/include/c++/11/limits + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h + /usr/include/c++/11/cstddef + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp + /usr/include/stdc-predef.h + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom_tiling.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/initializer_list + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/vector.tcc + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/array + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/cstring + /usr/include/string.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/stdlib.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdio + /usr/include/c++/11/cerrno + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/functional + /usr/include/c++/11/bits/std_function.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h + /usr/include/c++/11/iostream + /usr/include/c++/11/ostream + /usr/include/c++/11/ios + /usr/include/c++/11/bits/ios_base.h + /usr/include/c++/11/bits/locale_classes.h + /usr/include/c++/11/bits/locale_classes.tcc + /usr/include/c++/11/system_error + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h + /usr/include/c++/11/stdexcept + /usr/include/c++/11/streambuf + /usr/include/c++/11/bits/streambuf.tcc + /usr/include/c++/11/bits/basic_ios.h + /usr/include/c++/11/bits/locale_facets.h + /usr/include/c++/11/cwctype + /usr/include/wctype.h + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h + /usr/include/c++/11/bits/streambuf_iterator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h + /usr/include/c++/11/bits/locale_facets.tcc + /usr/include/c++/11/bits/basic_ios.tcc + /usr/include/c++/11/bits/ostream.tcc + /usr/include/c++/11/istream + /usr/include/c++/11/bits/istream.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h + /usr/include/c++/11/unordered_set + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_set.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/include/c++/11/limits + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h + /usr/include/c++/11/cstddef + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make new file mode 100644 index 0000000..7e34042 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.make @@ -0,0 +1,1167 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o: autogen/op_proto.cc \ + /usr/include/stdc-predef.h \ + autogen/op_proto.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/include/c++/11/functional \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/bits/std_function.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/c++/11/cstdio \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/cerrno \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/string.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/include/c++/11/stdlib.h \ + /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept \ + /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype \ + /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc \ + /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/include/c++/11/cstring \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + +op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o: ../op_host/add_custom.cpp \ + /usr/include/stdc-predef.h \ + ../op_host/add_custom_tiling.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/cstring \ + /usr/include/string.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/stdlib.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdio \ + /usr/include/c++/11/cerrno \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/functional \ + /usr/include/c++/11/bits/std_function.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h \ + /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept \ + /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype \ + /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc \ + /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/c++/11/bits/hashtable.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/c++/11/bits/ostream.tcc: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/c++/11/bits/streambuf_iterator.h: + +../op_host/add_custom_tiling.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/c++/11/iostream: + +/usr/include/wchar.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/cwchar: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/c++/11/cstdio: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/include/c++/11/initializer_list: + +/usr/include/c++/11/iosfwd: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/include/c++/11/bits/locale_facets.tcc: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h: + +/usr/include/c++/11/bit: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/vector: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/ostream: + +autogen/op_proto.cc: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/c++/11/bits/char_traits.h: + +/usr/include/asm-generic/errno-base.h: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/ctype.h: + +/usr/include/c++/11/type_traits: + +/usr/include/c++/11/bits/stl_tree.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/aarch64-linux-gnu/bits/stdio2.h: + +/usr/include/aarch64-linux-gnu/bits/errno.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/c++/11/streambuf: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +../op_host/add_custom.cpp: + +/usr/include/alloca.h: + +autogen/op_proto.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/c++/11/array: + +/usr/include/c++/11/cstddef: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/c++/11/system_error: + +/usr/include/c++/11/typeinfo: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/c++/11/exception: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/c++/11/limits: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/errno.h: + +/usr/include/features.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/features-time64.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h: + +/usr/include/c++/11/clocale: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/pthread.h: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/c++/11/atomic: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/cstring: + +/usr/include/c++/11/bits/erase_if.h: + +/usr/include/endian.h: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/c++/11/map: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h: + +/usr/include/c++/11/bits/std_function.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h: + +/usr/include/c++/11/memory: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/bits/cxxabi_forced.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/string_conversions.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h: + +/usr/include/c++/11/string: + +/usr/include/c++/11/cstdint: + +/usr/include/c++/11/bits/localefwd.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h: + +/usr/include/aarch64-linux-gnu/bits/stdio.h: + +/usr/include/c++/11/cerrno: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/locale.h: + +/usr/include/aarch64-linux-gnu/bits/locale.h: + +/usr/include/aarch64-linux-gnu/bits/string_fortified.h: + +/usr/include/c++/11/cctype: + +/usr/include/c++/11/bits/stl_multimap.h: + +/usr/include/aarch64-linux-gnu/asm/errno.h: + +/usr/include/c++/11/bits/ostream_insert.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/c++/11/bits/basic_string.h: + +/usr/include/stdlib.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/stdio.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/aarch64-linux-gnu/bits/strings_fortified.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/time.h: + +/usr/include/aarch64-linux-gnu/bits/wctype-wchar.h: + +/usr/include/aarch64-linux-gnu/bits/types/error_t.h: + +/usr/include/asm-generic/errno.h: + +/usr/include/c++/11/bits/basic_string.tcc: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h: + +/usr/include/c++/11/bits/stl_map.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h: + +/usr/include/c++/11/istream: + +/usr/include/c++/11/set: + +/usr/include/c++/11/bits/charconv.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securectype.h: + +/usr/include/c++/11/bits/ios_base.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/c++/11/bits/stl_set.h: + +/usr/include/aarch64-linux-gnu/bits/stdio_lim.h: + +/usr/include/c++/11/bits/stl_multiset.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h: + +/usr/include/c++/11/bits/basic_ios.tcc: + +/usr/include/c++/11/bits/enable_special_members.h: + +/usr/include/c++/11/bits/invoke.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h: + +/usr/include/c++/11/unordered_set: + +/usr/include/c++/11/bits/hashtable_policy.h: + +/usr/include/c++/11/bits/unordered_set.h: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h: + +/usr/include/c++/11/stdexcept: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h: + +/usr/include/c++/11/stdlib.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h: + +/usr/include/c++/11/tuple: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securec.h: + +/usr/include/c++/11/bits/streambuf.tcc: + +/usr/include/string.h: + +/usr/include/strings.h: + +/usr/include/c++/11/utility: + +/usr/include/c++/11/ios: + +/usr/include/c++/11/bits/locale_classes.h: + +/usr/include/c++/11/bits/locale_classes.tcc: + +/usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h: + +/usr/include/c++/11/bits/basic_ios.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/c++/11/bits/locale_facets.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/c++/11/cwctype: + +/usr/include/sched.h: + +/usr/include/wctype.h: + +/usr/include/c++/11/functional: + +/usr/include/linux/errno.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/c++/11/bits/istream.tcc: + +/usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h: diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts new file mode 100644 index 0000000..00aea2a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_op_proto. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make new file mode 100644 index 0000000..4379581 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_op_proto. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make new file mode 100644 index 0000000..500116b --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -DOP_PROTO_LIB -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_op_proto_EXPORTS + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fvisibility=hidden -fPIC -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt new file mode 100644 index 0000000..f1980c4 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_opsproto_rt2.0.so -o libcust_opsproto_rt2.0.so CMakeFiles/cust_op_proto.dir/add_custom.cpp.o CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lexe_graph -lregister -ltiling_api -Wl,--whole-archive -lrt2_registry -Wl,--no-whole-archive diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make new file mode 100644 index 0000000..4b14cc1 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_op_proto.dir/progress.make @@ -0,0 +1,4 @@ +CMAKE_PROGRESS_1 = 2 +CMAKE_PROGRESS_2 = 3 +CMAKE_PROGRESS_3 = 4 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake new file mode 100644 index 0000000..737bbb9 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake @@ -0,0 +1,19 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp" "op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" "gcc" "op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..6f7c1889d179b57235d243a0ef45c41d29c4ed6e GIT binary patch literal 12032 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 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d new file mode 100644 index 0000000..a1994ba --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d @@ -0,0 +1,142 @@ +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp \ + /usr/include/stdc-predef.h /usr/include/string.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/bits/move.h /usr/include/c++/11/type_traits \ + /usr/include/c++/11/memory /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/unique_ptr.h /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/initializer_list /usr/include/c++/11/tuple \ + /usr/include/c++/11/array /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/shared_ptr.h /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/backward/auto_ptr.h /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h \ + /usr/include/c++/11/cstdint /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make new file mode 100644 index 0000000..cd9466d --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/build.make @@ -0,0 +1,110 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +# Include any dependencies generated for this target. +include op_host/CMakeFiles/cust_opapi.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make + +# Include the progress variables for this target. +include op_host/CMakeFiles/cust_opapi.dir/progress.make + +# Include the compile flags for this target's objects. +include op_host/CMakeFiles/cust_opapi.dir/flags.make + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: op_host/CMakeFiles/cust_opapi.dir/flags.make +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: autogen/aclnn_add_custom.cpp +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o -MF CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d -o CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o -c /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp > CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp -o CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s + +# Object files for target cust_opapi +cust_opapi_OBJECTS = \ +"CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" + +# External object files for target cust_opapi +cust_opapi_EXTERNAL_OBJECTS = + +op_host/libcust_opapi.so: op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o +op_host/libcust_opapi.so: op_host/CMakeFiles/cust_opapi.dir/build.make +op_host/libcust_opapi.so: op_host/CMakeFiles/cust_opapi.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libcust_opapi.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_opapi.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +op_host/CMakeFiles/cust_opapi.dir/build: op_host/libcust_opapi.so +.PHONY : op_host/CMakeFiles/cust_opapi.dir/build + +op_host/CMakeFiles/cust_opapi.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/cust_opapi.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/cust_opapi.dir/clean + +op_host/CMakeFiles/cust_opapi.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/cust_opapi.dir/depend + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake new file mode 100644 index 0000000..9d876da --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o" + "CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o.d" + "libcust_opapi.pdb" + "libcust_opapi.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_opapi.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal new file mode 100644 index 0000000..3589e76 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.internal @@ -0,0 +1,170 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.cpp + /usr/include/stdc-predef.h + /usr/include/string.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/include/c++/11/atomic + /usr/include/c++/11/bits/atomic_base.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/initializer_list + /usr/include/c++/11/tuple + /usr/include/c++/11/array + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/vector.tcc + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.h + /usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make new file mode 100644 index 0000000..56ef6b6 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.make @@ -0,0 +1,499 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o: autogen/aclnn_add_custom.cpp \ + /usr/include/stdc-predef.h \ + /usr/include/string.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/vector.tcc \ + autogen/aclnn_add_custom.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/ge_error_codes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/acl/acl_base.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/stdlib.h: + +/usr/include/c++/11/cstdint: + +/usr/local/Ascend/ascend-toolkit/latest/include/aclnn/acl_meta.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/memory: + +/usr/include/c++/11/array: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/c++/11/iosfwd: + +/usr/include/endian.h: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/c++/11/exception: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/pthread.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/features.h: + +/usr/include/c++/11/utility: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/acl/error_codes/rt_error_codes.h: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/features-time64.h: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/c++/11/atomic: + +/usr/include/strings.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/aarch64-linux-gnu/bits/strings_fortified.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/aarch64-linux-gnu/bits/string_fortified.h: + +/usr/include/string.h: + +/usr/include/alloca.h: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/c++/11/typeinfo: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/c++/11/vector: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/bit: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/c++/11/type_traits: + +/usr/include/c++/11/tuple: + +/usr/include/c++/11/bits/invoke.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/cwchar: + +autogen/aclnn_add_custom.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +/usr/include/sched.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +autogen/aclnn_add_custom.cpp: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/time.h: + +/usr/include/c++/11/initializer_list: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts new file mode 100644 index 0000000..b3bb157 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_opapi. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make new file mode 100644 index 0000000..dae58d6 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_opapi. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make new file mode 100644 index 0000000..f4b2f4f --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_opapi_EXPORTS + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt new file mode 100644 index 0000000..5142fea --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_opapi.so -o libcust_opapi.so CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lascendcl -lnnopbase diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make new file mode 100644 index 0000000..3a86673 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_opapi.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 5 +CMAKE_PROGRESS_2 = 6 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake new file mode 100644 index 0000000..fcbfa53 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake @@ -0,0 +1,19 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp" "op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o" "gcc" "op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..4307ab8c4d25656c65fd137981ebc5eb3d8906e1 GIT binary patch literal 84056 zcmeIbaeP$OnKynj6EGqoN)S}uC4gro@eHn zGjj>py1)J7cVTkx{od#Kp65L0oadZ-?wvXJl$Os8WMl+A-ZH%JdKq$}_RA(E(2&7H z-Xq=)Bl}^Te-xkpjn86ys_?1CryidMeD1=Bv~%&9fzM1n&%-{SkEdf_z{j(&FXZFd z*nfnNZ^8anKAwYp2%j)MCHN435kAFyT#Ef%KAwmDd_FG2{$uzoz^9zCh1f6R;|lC6 z`S>>Mm*TUG&u_>64nAIv{a^9%C$W$4aSirSK3;)+jF0QEzZ0L8e7*|%MtoNDc@y@{ zeB6Tlr}(%P`!;;q`FsubYx($Y>^t~)9rmBbXFZ?a%lnPkZ{p+6@&0dke;@Xn`S|m^ z{{r?~`1pS8|CW!x$ontxzKi$WynlfATe0uKC$V)d?hQs>nwS%Okv{LN|K47dRo6Q~ zuX~ag8az{#vG+{S+n0mmz7KeVp4a)aZwI^s(C_-)CjxuNVt+0c+&d7==zcN~8XO0? zv%xX@YDR?y|MUF$hd+BwXs~TWXmDnY_tRGcV^3uSyz0JS_CDzMyzs~KPyX%`#e2`i z!h4AiHD>Vm2SS4x*cW>lr!tUM6!K@PiuS&<{-5`doqd7O>`;bRkkc7C7|8TKKDl$^ z!HFo2#&^zx_u75Og5wSM8|TlDo0Q}I6!u<2X`RD4*-N(4IX-5iv_6~R9SCG2P3*&7 z=&3+vXz;6^cOYYA#+Dr5AsnLtJ_Ro0tBt|V#l%MhWRoG{KOxBCFgt-;eT8MSsO*x? zbC73}m5cAJ|EIkHE{|f^dgcmma7@VSp5p~hb!K?gbS($=7U9}N_^c02JK%+8NA{qK z;yQSG$Ukj?o!k3RE@!R?4ZgGf2ga9Ukd}*4dQ|p-k)gem)`}qf03S@keiG8yjeTHb zU`rJ+#E}DSDD!&)8K)?%$+*5E;2GZ)pZ?4XlXAT7n#mqj!Jgo-&Y#s32fL32gZl#T zBVpuEZBLNOfw{N-@%#ZQ|C8`D*-7O|`~PCUL*HzF_WFA5|LppjF27^4LW6$o^IFwD zUvkJ-=MO|8w(e+n>bUY_xT+vuJiFy5>&A)R2uY zJvEatOjy3WB_r!ziXAm!_k9q4ubZyMOc9t(dtT}^zs2|rKG5%^e^j`$N#^5&?d@0zSszwqGKA0QfV& z2UnHs?F)|EcZO}EYv*w7NnE3Hqki$7^*=PRI$iluyFUXRDm(H4<&XMWI&OnMbZj++ zgFo+e`N#QD=3@|h+5+eU{`l%4bZA|>FtqH%xvrCBGhHK_bIzYH_$;oYukFIPteg6_ zV(f9PYfcvRzv%ZyX6&7^Az=D&(j`5Y6POuy(S9BM!A4^*+M;c-x~AIMdAatK&!^|* zwphSk$N36<4tYL*XZ=&j{V|V^sLo>SFxWrK8w{eKf_4v$qsYcdHV-{T-0%GkZK4x0 z=g$ZCo;PDEuje?h8*x26+Uq{s?{!l>K8E^ zb$=JmfG&-L##-I0hVAWVxxNo2+IZi@#Ic{9@w9yGwCQB;Bm2nCi?vbgI}Y27-g{&p z`H#|a?K?Y!56O2lMt!&Tkw2x(rH*RsQjbx_c5FN=d2IX@jPS#x# zt>M#kQ$Hwr@2vkv(^pAI`^$)(l7A8ZVb;O}UIkd%uTdag8|L>(HYZXvWG>^tIGCCzTb) zI{0-&;c|qQCo)Xlb-blGN_w5p_izu;8T1NjMueV%wZ@q>(5Y4Cj z*mJ5Y$e(8mgY${bw@16~kCE4( zJ^2Igr(x)Yp-1KMRp^GHdn|a}zGCF5_|4D*#hG4rab{pk@tYf7XbS{r8lVSr3}~O@ zOueJ=1dVf!F7oysQFTm@BhJ3D{##Oi2jJIi)ZsD63ynv}Z(i5E+r3P0OE%J=wv9C6 z^^(fxIQ-cUy^OBV-Z@^Tx$g^QhQ5&lj+{*I8=ZT`@!m}IWi!y1qW{l6gK}=i9D?+RVCspDDB4T+v?q2ybbaxzjoXi7 z9^v=!*@+BqhQw}?Gxxn;-MRgxZ`pfaYNOKbtWTaZZF5Wx`df^lCVFE`e#rmCM;z3i z#s))!*`q^)6z2%1`%vN{xpaJq+){l`3hqNfqzeB#}c;2brOs{$-xX<0-4K78V z&%g(k+m`9BjDcCUzqIF+KHV34!vYu^uS z-M;pko!fr_obD^!NCR!6>v4>ci@{Cf>lluY_0yOyd*6vIm+kGZvSY$d_`kCieb*mH zS=%tKL?j+0n|A)edy3@A24t#-IEn8`aJ3QN?ttO@-Ifu1&#X%DeKwHQ-FdHvIX>i- z`R2TxyBBe?oATd@`$gg>?m&j+*7pE4S>DX+AU7VL9QbZKY#fUifc_KrVq^DR3+yd$ zO~gDT)wN?mdylnZc+uXP;J_@Z`xFnRLBhVyLTCTt~I=09aXfK+9lac?RW<4 z@n8@7_fv?0)lqE^?EW#iPD) zJFmY7ZTZ+`JFiE7c~c+eT4&=L*+uQ1ICI7!4xlf}8RrdB-X7=toI(ERI$=A36`_q& zdq0kQBEr256RVD64ErXoiEUC=5~nb}xuWA>=JUh7SBBF7=biOmH}%(@kN({lZ}9B1 zwyx2<Wmz+ zF&p=2p+VxAg!)Lf)qrCnWG+Vx6%LW5zKLXZVJv6lMti^cppx@$3=QtW=+uK;4fYwt zi~X@+@$AX4F@U~t;skH-D;Q(-O%DyyJ>dBdC+2bb5a&X$mD0e+*5R)u*WqJkZWr^X zG|n7DbGk2@y4#2O^BRoVNtgO7>MLF_{wCkR?$6{Lp=(qxT;F?;MI1LWD2GwGD1i2< zM+4qTSj-!Zm%aCO{*20l#$soKS^KCggcC9TTc-XQyS?rxe6(wL#(>PrJczLgrJJzZ zj*o5MK<%6FO}MVXj*;V$`mLGEyhiNxc=s%|Q*FSx2WchmOga(7-|jCM+O_(qHq?(v4LYMZ=s`=nf+7l$8ZOibee593-r9-#b@ zZZIeG)aL@Br^tW5hF=Mz@qmm4ghTr);j7gCe;49K4mc^_w;>M`y=zyMq0j6@pGZC- z8$u{+X&D;*oZd!n+$L3_8Rn?i9X!=^atRPez+I%n&Z_##;O2#qe#ba zjNZE48@+Qo<%#?;#(>P(SV1$lF(g<36+r(w}@ejd25J9ua=J=`4<^e}#Gv%`f(%{Ett`Kp$k= zKaFdL*LdCMhkL)Nxyq})7W{p|;buOC#`2{1y3s=!2NAQWEd|GI85cym9D{qE8gDkL zS~ltZ5b@)O;M$FOwb#*)e|IwGXTUK9HXTR2D?wh1vWxca^v0~3j62=q!D0JWpq`x% zWS`oFVMHhDAj)u68Lp9D4dkO)G=7CV%Dx|YiLpHHiR1E9aXf&zoX)RO+_iIubPxX$ z?3s?a`g<@}f9!JGk5M0nJlQz$;p8|`bcI)K=LhUOBKeMDe(@j9KS^_zXOV|~oQK~! z|KzJUC;k_hKL^j$gcq@6cHd=QK`)-WW#E4D`~2K(inN@PO(txq>Zh%%%sgBj*YHFrP>qd z%{Vg5J0UX{GFMLe+3J3X#*LUr-1i5R&0B55_O@eo{2hG@I?7nZ``^fPxatF z>zujI$~N~I(&ppitG3ekTy{3%YYyi0Cwgcj=KjEz=W^U>+2tQ zX!|V~lhp*S{qZsQfSz?yK90c`bo{Hg&R5g@d>_h!IOzD7I39;RjlDeH=y{UFV~V*M zu!Ve0?cxtelb&VfVD5m*lJ3VS9<76ae+N5e!XA1?b`Z84HNF^+yj}-i*qB0oKs=wZ zOWF85d@MGeLJaQ3cyIuIrhBpDXxDwvhiT|ryqi4qOWzNS{c#`iHwR;}C!pJh{L%3i zjAf!(xMxG#qB=#fPJB$`S9w0J(_Vj*oTb2$DATv${(dk_k?smIKGqeHU89B zAK142Ubc;{lRaK=Y{K6dFG*gg?(7;qFw@-s!6xM0-2YKO^mFoeHsUwNJXIK*kPnOC zOB&P9Kw8)0L+=9o;DHCX)0j-s>P6nAY@bJL)M2WHywXXnqT{e{3wePa&fq>W`D zFO;W3CqGg?l%HLJ@$odszmmo()I+)_miH0t-0}5hoFe{(o!NAK5b2XGR2DSO6}#ws z2hQn!mX3{2a8KI{pF9X0`snYTO6l*&=CP=URObru{JVzwJ~L+S{MoCRw|nL#Z|{?T z#JyrL;}rD~R9~+{{6bLdnvFI?v4iUJ9XO^~aTV;GhyD&4)ET@XUcNUYCP?{iL97^u`;Q|?KNLjF$LmZr z8zTqNe_UO&apJ-60M9|Zqr7|@$Fp$!e~qnnzLES&*C@94@-sH6cZ5?MroG6}p61Wa z@0gS^?np*vZ_pda$UG9vI2=ST(1)q)AgW_xE2^yxuW4&sB|nuB&KiZ&=;%>1caHbFx@muB{yxV+)P6CPF%~)#3Vv zx;x8SI9)!kY^F)s#Py}kt*h!Hk-Y9p~mIH|5RvSLj`V=d`X zI(OcQxtqGk>gL+IM$9TV8aL2IY-AVf#G0G#Y@qkMXj6Liu~=gy*1Wm}Q$vJX6ER7| za`ko5+A3obuH}+VU|g+Zq-~$ zAub=otaluNe*N7G>edNBe60;@@i0SyPz8QxD_nXvN~3yRi_n>TMjIPew3^I^kyXnC zc{{&e(P99c!{se&+84nrDjQ`FT+mwA);6~>x{~-z{R0wfXhS&~_u70=y-da9n^-8=6d_R<3nT{LH3j++17U9EUA@Yx zLa(~GG}6+zW@SSYiln{X8UVbcWI<$YT`L)F{Z%LAmfx1|!e~b&7bF!m^sHZK3a~xl zSi)PX>KgGZscdyiBh@jJkiki=5w&w}b8FH?n@&CIlq6xwZ4H@JUDwps+-lkg5rL%0To=L?n1ar!JnK5pOls>;r|DuF=|vl2&8;+9%62y9%{4ioQ@Xxl&7F7FwQ}fD z^~g4hs?}&DVLWteG7Z9{OU)(BwQOl!!^--0;$e9-t2RUmH1!U?#_8N?QmwkXp*>bF z&4cu)$x?lVQ^g3X_r^SP-NaJ_qY}zFRYGjdEs@%~6>CR|1EhWTkLqI$o8wKh5>e|N0ifGd+ zRa=c85#L%Gqw6?+H8kBx@0l7tC9clbwA3OjnA{jSs%Hz=G`2U`NMkQRp5jq+>*{Dz z%*IA@0eBl#waCi4raHtixTn@eQ`^9C{jP@gcsL|GO#MK`Z@3dSHgr&hH|ZK2`AiN4 z3A@a7dc=2kr2fw793X_Rxn*gzp}jiZ10?WLR7b@6#3ix2t^<)DWu$6{^xaf>+v5=*)y|TJR&xR8Fol{B`lQxKEQ(x4YWX50(q2a; zkbK~}>4Wj~7WK&1T_Of<+w;8EXiI%O{1LuVBh+FsR*A>$hBh!E4o0H2ccI-z>hF%A zO~~i~@2R7NOuywLU@u}EVLA&GS~KdnjT~riZEe#2Z6atuQBw{a74RN72b0L%CN7!q zkd&V)({aVe0oFgYbuDOGYY?AgaWt5Rz=#@w6tJ21prQO zGrftbJ2stmR6!90n~4JCPm8yp8@{uF9+vY3Qo?pVoc&XJ_JToW7oIIW0I2Jo^`5!M zorL=cGe^67lzHaZk9&aM^^Y?58CyNCo90XCUIO;+?7df#nn%Pw!_Wm&su4Do&r~S41wg?3M*DW4T1V z>@)9sB=aquB636Ug+*=%zL>}j!M9Q5hTz*RazpSvD{@2d^^4pPe8H@X^q} zA?%BZ+z@;lMQ#Yb-6A&x-?Jh&1Yf_%4Z#<@{387)azpTiMQ#ZDVj?#L-$s!ef^WCT z4Z-)U$PK~QFLFch1xH+@|3q#GzOcv*VP8z-hTz*MazpU#7P%q#o)x(v`1(a|2)^JI z7wJEd8-gz^azoe`6S*PyHj3O3e7i+%2)<`UZV0}9ksE?9IPxO>CvrpZg+*=%`(h$D z1m8xH8-j1Q$PK~wtjG<)*DrEI@CC2DNdJl45PV^gOV~%xmT^;vFOi zOJgFR;HB~4Fe5(<@^;Md+6`8I*+!91@C&CN6E58?atU7H(sIk56}ch!`bBOCzWBIn z2)-#YJ{y8BEOJBe#YAohzKtR`1mA9v8-njyksE@qU*v}13(B~02tJHg?KpS{zW6xQ z@+}QtW$sVX)dkBpM7kRF5AS~sZ z;0wKlcc?xb7z|A;8Vp^9{fDq0gZ+oGABX*P>~Fw+DfVIPKY{%m?C-{YBKGUC{{Z&) zVE-ZPH)1~p`z_c{$9^mJ^RRyy`&+Qzf&BvPcVj;b`<>WVU?0K$6WD(b`=!`FgZ(P( ze}sJm`=4MR!~O;AS7QGQ?3=NF75g^q-@yKE>`!689{XQoe@|erXiCvwQ5DYL!udv= z--mPDuZPa#d`n<(!H1Ub4ac&(%TD2$XlxYjdyDXH@m1aPgT=THyLR8)D~j=4aBTcu zcGXmG@3|?Xx*KxvEb$lK;JlrI!MVEw=6;`^bJ4SE9lQF&R44G=H4|5Fh+pe}RqmBZ zXTrWSh+U$0W{x*F*l(}*Z@j9zkK-R*C!R@&yM4GPr2D@9H>})o+!yxmzN&lBq(jfW zA-nrZb5DQf7H_cs6wARz(v!64UUBf*tGbJ>LOwTA{KWSVV^?;c30{vm4*Sf#XnpbE zi78iN4q|k7U%##6XTn!@pZE!Qf9(yP8Iv*CH_pcXW2m$JsE^04`is40jiU(i&G32kZvd4cC8hm3TIM0LzPoU2%8dE&@dTey}i641`uTPw4o+BRHJ+ixh zBR=fp7Qd?xJzUgC{ZPfM>eK|HprfcaOp&yZcb5e-*sCyXc1E!T*Sj z?0&6(boXmt&)WO?*RD03$A1(WJT(P!=R<=uAM{!H^VGN5KhMIJAZ(dfJorZVYRpgI zUArk)cfV2L4W9TW(z=ZEiLuW~jFV2@m%aDRjaPT~#~_P&iT>#$_8xx*-!l&v+d451 z@5ArDy8HO|@Lu!oE4quSVACf&9NYBz7U28;8!?XhE^LnB`cnAd*{i!>k9dQ>nl;AS z`)xeuh8ci!*cNXvBg4)Y^?f3Q_pxzpcWCe{ z@D^0rL!o1LlyS>3TzIK(hYbD-;jbWU=75nwxV9`qU>nhBXdvm8U-!fI8%WO12Nm6i zSP&jTc`Zj zh~sA+nH`Xc0qLQ}??c|n>-JTc|+?qYt&fa)}^cb&s{EQoo!-(wuN ziT04AcdO4~P6_3iT{D?}Yhui)8obj%&+DU@oBIgfX^YTzZtz{5KD;BgtH8eVg{Sc! zpTh65mE(Oyn*Wsd%Y^3`zXvx4zNGIIM<-&4~UJl*|`RQljC(@@p(>_W%e2jBb zU!s#KpY%N#ozL<6qVKo1MsK3))F<2b_-+1>m$`|&Q2wGH<8#S}&KvU4hkQjBvCPX9 zGp^egy@ti?RnfM=OA~LEia0%eQ!bLFIeYC z?9cPcpU+ad;GM?lgrWZobn^Lp9?rjq^O=0U0O#Mu`A3-Z+t9xZ`v04+SK#_Las3WH zufqA)aefz{FU9%SaQ>J*kK6qT;JZ!P_QbIWu${>m#jL(7Z2tOUxc)G>);e4(fp1OL z>stlvOBU;E#_<;DeSvLi!})zUe~8cT<~Xx4;itY?khupkU$rtP)+08dEtq=u)oZ&0 znf6_v8&Idn{xguj9&LDi(8OKScBu|_sulYi^lPZV|m}xVix!CTPL5z zyW!)__X`N4`%$D#?b6(r7Q+sE-L@&hY0g^WgiXi3A1Ucs9{8DJ%q{kL1z~+OcI5Zz z`e;1K$1W#iIWAm)clvw8JLk{KYu_2B=S~w)_Sf#CcgQc~iwotQ#)$U4ziap5J@ynH zdJmi4BR2f;eM-5bUQ;_MPWm0ANvO~7tf%j<+V5-A`+@Qf9G>BI)BE$2)H}t?|Cs!a z@jSdsM(G|y8Jj*0WlQhj8_d+j@#?!1whl^vnoh^m5B}~qeK(gl-@=~0n?%P0*#DM~ z38U`?5Kb6=qzzo$M#{AFbD4AGVGAVcZW z_37y6Q?8>=rt8#(>GRxx`EL0aGg?ke^}LfG%se#P+x4OQQN^FWIdji!Z}VSn!!Y4M zUgoCRUgvZi-akF_?Lx0-dimKx@8tB%Hw(Sf(?`yR6-;=g(AzwN zkZm(Ej}&^lW=uF-==B-o^o-0yh2Fr7oW~2jr)QGPb2BHLp5>i2$GZwQBk}lF)t;9Z zS%~)+I`HyFTU}ZCqS=wi%BD4uSVu=*egrQu;r$QuB425KX=z+7egOU1k*XHFAF!$} zg4YRJ@p?u(-p2wylkiycnkIS??p=|`Q^9Y*wdYUQd@b#*^Z>pw8mlW?R7fvF(8~{b zxry&VmR3c}s`4VGmzpD$=zDQEFC6|z&eSC<;FdKxd3nBU}V$6sXJFmfWk%IJCcPNLc9_v>gQ>}GT1dANTt8(|@Ph}TB#Mi>p0 zXd7vFMweelGsgsz+y=g`b-U7Fk25CeqM~~T8Ec_^(Wsn9Gan0gqlgCicgJg^I_FTP}b>rp$F zcDWzNtdslb@WQGv~$m%R|u=p}A!HHq@+%XoCcV>is-dVSAz4~~Cm zT}*;4&r`jXE57^rpu?Sh96$&j*She1D*XOyLr? z@wt$7C@!*&DdRAeaq)uzYCxhvbCBaA@N73*I(f+$RiMWh&l%_rFAdTXjfWLnJZ$+>C;$yaTkXKtMc#s0ge|h-!VLLJ(2~t$~s~3*^+s}XT zN)c%n5l<0OP(0bg>7JYrFTbu4rH_6!=-HVOe(a7OUohmZK>zq<~ncE2r)a>JbVFzsJ_PYLzrH|Nt`40<0*2YW&9 zFMaT7KKO@IaH>k4mx_}+0t%;iMVpmRwdW(a7EpF_wvA5EL;-Uc|6_S_l5>c zZ8n)yoP>hrm&B9A%}LO^Jq5HpsW=G+y-%dbTRT&6E5AHN-twp7R-S&*JbAP7sW?dm z&B!C2d`&XQXF+d83U2vRaS{xAwJGv8zp1#DuS=1){HeH=x8GrKm4d4N$TiDTFQ-ZS zp!ucyB*>fuy;UioB#IF0jU3wrm+VSK-we_q7mdn=!cTlp`<<>bK1r{Y%r zei4iBt$ZqO<-Zu0lLITCid*?FiCBDZlyEL@SThwa`0yuKkVT6eG-%IQ3pTIc%Or353}+o9sDN7 zPdoTL#s?gHIpYYTN&akOJj=m1F)s74QZ5fOKHic42ICZ`X%qQFj8Ap&V~poIcn0Q3 zs9a?JNO-PiJmkpFV0^xVFJ!#Z!S7^znSXFSKjA7-5TTP^>OjLUqnqfri_&tmtcJQwH# z#CV^B4={ex!EYFC?L6(^MT`$Pcn#wo#vQsIZel#k!S^se+QI*Y@$n8mz<7>>PrlmP zIn}{S8P9d_dd3SK{C>tm4*nG5^BK>z+4D{@-r?XAuCey)ad1)#dRtjLv9tFnskoJY zC?Uv4R{mixJLL-TKb(TjfjwlAyDc?1cjD^ecMZ;ktMJ1Hmnf3B@GFC(6LYpJ#}I&^ z=xjF`96`w0Dh!Us?QC}$9F^4B9y9n@2lc$~8C*?XD2br=pgKz&CjTOt##8-6SA+PM zZVP&;ezWpi862gcJd{nrF}O>!1>?O(^2MN+>VJ|5dgz4HY{4|;LSn)An>@)%K`*sj ztUQ8Tnl0$1mY0=BBTlmgJv62?ThKF=E9FYiGliT6PuD6aU#azkl!M;2DI69b=Yz{# ze)8p@cU>~TXF(6YFp_2qdN-s&$sWIY`@ekT|H22K=!56@;FEmt$v*fLAN)oi{Cz(7 z`+e{a_~280@DKXnH>Kd`QFSH2Z0H z3Hji+8+=AwULwd-2A`FJPeGNP9GD%)B_eMIE@{Ot;^2!${+2k@!bg{*ihsp>AdZV} z0q{xQ=i<23_)6d+6TgUqr9ODX2e0?RKkI{U^}+Y~;LrQur+o0Yflm$;#j|vhk0v7H z>F{EMhg0O2``~L0UK*EQ&PRQ~)A{oaBR?-Lzl@JE5n?6>Qt?R!Ul5lseiI-40Qgq|UyS2Y4^JEXOL07xk0u}#rps?G;c2?rkNU`e%m@D@ z@X3M2@pPwh7rhqvq`=lVE_OcP!}E7O_&@pJCw=huBgCi6Z;cPW&IkXF4?gIFk46`g zF5Lw_c#{v_>4Sg9C%<2Ud^-Ps&EU7i{lA}&e&NG^+z0p21x^m6@)Q{S_Bj6&e6-Hs z%j39tFA-<|Y4F7J;sTZ^Kvz0BP!pFw!AE}wJe@yZGV&|p^5z{woUKOJn@;{w;FAM& zarqjqpa0+^e+Kwh0$p)=skgZ~gm=gBTs~R_JYBkf>x2IUcshID^pPKnAwoL-TY*mw ztny@Q;e$@#lLGe(Y~QWL*)K_6JulwF5_2%rn5>=)oA(ZJ?T3U1TH`!2Px)Km>FgQw z!N+6Bl1~06AG`qgWN%G8-TDlB_<0}sE+c<;T;9Ath_lNvB$^yp7sus!!b0Hb?77Pa z-{6CP!3Ww`b)ga5M+ zJ|08Qbo|9W_$nW~+XsKz2fu1+`gHSs@Q(wZq@J69m}}T3gKv!2H_6L)eRzIp zgdfzUA0Vb5=Pj*VRIn015uKl#1mh=e@#UiSQqr2<+|pK_pKrgTQ`uUFpU|y~|B$%o z=N0mG`h8ukZPK*l=GTYg3bRat2GjCY?S+xWD)E{Mew!Bn=5k`o>zyX#BfXLmP2_2@mX<`VTe4`uqKc)9B31K?D)E&xsg3!9FD_cNAOYud~uAdCjF}R^1?`@p_$I(smv~_u2@(Wj)cogixx#HE6U5lx5pF9pSiGfVa4Lx zBNdg^WedyhD5@^2NEOPhs>X$Igk@ch>7)#`(q*McW?>{ezpQj_q^vTL%8axUl@*Jt z6Ed^X%9NDeRu)e9EWf~!T3WGqLFwY8#Ac=!sVci8!ILKzEh<`A8d->95r0k3)9O{# zi%W|ZMyhUK6pp|_r4>sO7EjOBlBKtmE~-v1m_MVW3`AwcP%c3^EUBu7$;C^`%1h$O z=I1TM&s~>C7MGUWG6+{Jnp-w6em$>1^qdR%g>1$AaJW1Yu2@)ERu1-xxpT|Q7O4!Q z3{6%REm@c#&6{6ZR1&dQ5@=yjI8s@(xTw4w29+)7wxB z+bgRhl!-Vzt8_tRF06?Iv%{r}@oU~1%FCO-G_s)db_bnVxw!1MqUzE#mkQ=CMwwB$ zN2+gE%_%=GTvT3Gyg1=LhqIt;Q5B_MQR!TmiBgpx9FI_ih#Q%HCkA-EKx_2>eLMOW=Ro(hAyDI*)XmO)h1jWDO*@sp6t1NiXsp%M^lN+ ztw588NV0FI&qry*Q%!iUaPAUges$@hDkvs5^gR1x@=oX#BPkon^0P{AM-@P@qo1Eo zu3>ovMN6tHBBm6REz7H_2#XgJcIDqzwzzr;$|cDSv%?jOUE&#~%h0@$Ug;u~Q>m&M zxkY70Ub}d9d0xb3Ig!?k;w5wEQoFZtJW+-7b8QQbR4qh~>6B(Ep zMp#5gbq87q`Ahi#u^O$Wc*#7YqJ!e>s-oM_Y8IElYw$A_ii%3JlP@G2l{eE?3|d>j zE;W#_1)U5h=)}2%B{t|LR0xQj0O9 zODfTvoVJ)Z!?cHmOUkRulG{?=ObXH!ix(Cx3ZukyOwKPfEg>?mbWtfHJltJkd!l5q zyu6QNfA0`jHxP#eA6K=AUvH^oE-B9DlcHG@1?!>Ef**Fp4-Ug^Y3f>jAvDagM;ED(SFp0N zc?FhovWp5?PMQRo9lz}k&nU&52K6uR)i1o1%qU%J`Dd=hs#sY1su8~o(^y(67cj4s zH@ylo7Hit(MoD0uT&ZfG-d2Yx984X#Q$->YpG}b25t_Ns<{|* zOesRMc?zQLPPtUo?wAa3(GTmy=T%U0w7d~=vv@&OZiKR#)*$Gy4}3G^M~xXRaOXwv zC*LISo|RL+*!bT3(oadAa$aLCGiZp7ud4*%(J=g zt!FU6d_$T3tY>mK?>6%Q$LaKxOlcw3;570m^GlG$kH$r9rKIY*rlGYCm8iC@ zIf7*sYq6AQ#0Ve&bkK~tl19a@LzhT3%o!f!o8dvp(rK-AcTU4E({*%2uo_-lGuG9^ zW1PrZ^Du^VW>jD~!#l%Po_Q=bql^}6lVJwQ=H*tj&{A)!p)uPWm@d zTtZLZ_(|B@yZGr_UYdttaeG*KrYOfVR2kRzd3xti%)~qz*4nhe-gq<*out9YrQo+? znbHJtp7W$A&X|{^YI<5)=`uCbw(Tuxy1N0-krvmrt-)fjsTC$q6cdi-@gC~N1qV-v zy|I>cphQ2Mi^yHyij^Q6vA}41J)R1-Hn+wHs#1bNoOfYj7)c51pD( zbRtKIQQqvi4RwvRG$=6-`0#s&rFpZ^bDvn?n_J5&A!cfDNlQgFkM<<97fv%D{R@qX@I#NWRq^B$P2ySXpWzv1zI4tu zdyzFw4WC+5haalMU={Y8GR%voh%P+VT1N|L(qr8OOpkTV4^vV#(hqe192U;z;R9P( z-+;9}m6>L&$4{qe@kT5m883w@JcLb`jRq{xJXAIk-HQ4tOw@cc{EuHu^cnfH!nERJ zQDei(rlO|Wd38-@a68`&ZmB8JAd5PTxNcsWPAxBQ9>pW+W1RluU8^P%O&E-Bs-c|% zm&p>`I6MBBo?T6knOo~{+esbX3ZEj!-O}Q!3*0dIcffi1Rak(xy1CdaCyc?U8HO&1 zXEI@`@d}wrw|!0th0>(FXIE~-Cji4c7 z7*o1>b$qZ)qwSekxE1Y)ZWSTH7bDZP0UYiw?+Bj3^82O5zM2tJA?dBJ?#ZdTF zSbx1~l*KRx>$rDL+DvKCld}<`PwITZ9ocVoFDJMZ?-W43ZIW z(5NHvDIF?AW6PzE)JcyFdN+E>R?&S&TZ5lr@6ALPTmK%B<7-%En}zqVm+-sT1mNoe zW-D}X`5p|(-=^e4EKm4Sg_ko*cqIi}mo)Zd} z?-merR^hiR`Ao*IckIdX!5Q{kc|Tn9FHDmz`LjadBbkWutMMGhNxo9a<27Wnk-Wx3 zjFX=~uH>r~zF6V)3a?VQ*iY%|a?y5bT~ z)b_mTBcI7Was4pC2d8>Kn=3!w!Uo4zG2)x{zqTibCH_=@j%1!OuxlmTMv%1Qu?{YF zlDvG^isWpq5xRkFeuj@|(bYu(hfy-0ExbS50xzrPp7hLKg$={{;Wt>3r8n0IT zf2HJ?D|<9v&p7#im6C5!c%#Cl-in%ex=-BVO;Vnc%S0Y z`8}y{o!_?=uIel?!M zIPt7u8%XI!#dBGl1?xvB9*y6uc-AVO0)^kL@Iu8eZHP2xq3!y|aD4^O?rGvCsBjSi3CEj~Q$ zjJt8NgK_Ftmnc8%QapP6{Di_kt>h0Ve7(XCDO|V5BR=?m4=#S9`l;JXCHsT$dsMoc z87KeGre`9oe)! z8o!xkTt5&mZG>z8%NT=j?awZjC%=8vs+zw&jFaCqzKwC>(SD=0MjMSkH?jPe%AIJV0p6tb1L1#ibu<5u?*!)`Un!$<5(@9 z$vkd*9L+eDn{JO1&!}AHu?+2Q=3^=sjdw6k_Iv>!*<`#SJd$1~3kaUW=i)cv7kO!4 zf{Xn94o@zhcky221=sa?ld@C%FZM|L?{#xr%2C9}`u9;?a0W$I+R4#wZ$CQO9 z_}FcC`x$rJ-C4%nbUoEi>2$|4?%J=%OWF^5yrg+#d_wg>`&o}qw0~rLLiyGAgE9^g zd$<@qJr2=4G7h11_5GcULx@M?G7cg67(TMeIE3Ui-l_bi@B20@yixJo@Ay;rcR9G! zlP469?$=~|LiT9?_c}bnug5L-DSM7O@{;aZ2Nxb0&xrp;9zTL-HY%?#D*haW>;Ae> z;kus8SGXRhRV%z!@h?~SdWHM-MjmHcUi>-_5b zM~!=|>$YEsx2~OZP8->y=ijOouKgzQisZH5>XrO@J|^Dr^amTs>-sj;!e;!x71u`d zx$dtuuE#UlpS7$<{MrwV3fJ~@C|r+o%6;%Ig-h%u=rH3n{^`L-wo9!iI$sYfo=PU9 zd~H*>?ghEbr!bgW}Qo-LLGCHcR=HxJ~>TKdj_+yM9IC+f{x~D15!bYbX(H#4lqE zI)9q}U~};-)+JoGyJc29MZU)e_v4wW__aOKHeGv;D*4TPOi2zXT=U$@exUZgL&;xi zd!Ntwa_fo2AGh2k4!HGaIr9*%>%%6-DZjdYKB4eOmHkH)uG__c!gnh9(R@sH>h_z> zIN77|WsJN2mv&9KuAfgUd0jsbDV&O8G~0Jr;p_RBE*(+0q(%5E3fJwfPvKutJSP?Y zRfYSNyNqAl@uApDxag8S6X*{%*KdUuHqSfsc=A@piKk52Q=;TGztp#}j(iKtlm9=f zcs40qk3V-QT+1I&xR%%TO3R=0kw2?&-M@Qm8|62u?3D2g1`5 zay-iu{{wtX_ymPV3E(Y7gcKb3Jx_y6HzqPkV#f2Z&eA5;7Kn!+pjnCgkf zmorZCI&Rl9?)ssfapO|7;!{xa~KGajBo%nEyt`#s7j&RXp1MTNSSD zpYQOCPPxM`c%|YIjOtsh!Zm-3!{5vHw>$iT%eq0XfA06;mvw-|KZlwB5r<#!U5ZEB ze?Z~d{$9p~zmNH!bNB^6qSmtFSxAthJV_+_0Q;UCTXw>tcS%lbVof3**P4dcQu{dBFvFL=G;(f;3{ zaP6PX4u6R4zu(~(yi4(D{>K%r`S&~gG7dQ4@C$xW@o4_%6|VV@I{fu)|0@o^;C+fm z^Pg3?=9eXK#Q&YlpE*3a{s^AMxLdvx6t4NFGA{fw{rxmXG4>|k; z%>TT@FZf}_qxnxLT=SoH_+`9x*5Ma?K=Ek)k(b%}M)gYbk7r!!&v@>4ConGYP4FDW zqxlOIuK7a_zl`Tf9Dc#)D;~|iT;ZCZ)+eP+?4Qr}H#+=+w9@#qPMU+|NPNAtg}aLu2UmF)j* zZ2w5crTz#$nsGP2-KcQQpX>0;__e^{7rapMX#2|*uKAZa{D;|oS|64+v0v~S#iRM# z6|VU^9sWM%-{kNMzFF~Tep+XiHn;umarg(A{|Sd*@coKM^FOC>ZU141Ka0mzM;v~^ zk18I`|E9tz2FJ${~WL(Nu@TrPN+kdOV zwf*xQ{`t&b?(hp{bi^IQ+`P&_S!8;U>=D%Ozntz+aU(fuHIQ)X|Qaqaf zfWkF@ufyNL{LeZ3f*(>mn*SArYyOiCe;4z=>F^7FTJdQ9OkPURtv|F*F>O+R=`5 zAM@Yu@C)9hcr^dx3fKJm9sU94r}dg?6aNc-Q1NK~=M}E`k2?Hv|MrT*FL zuK8stN~u4&e4miXONWa6f@d-A# z{}qQ{@IJ+(`Ohj`^UIQ@Qog;+pE)wQ{tKSPcuM_IxaObAxbPol{+k_s!E+Ulw!cK- zn!nQFm;2{xhhOkzibwM|DqQn-IQ#=_{|1L&@J_{}`Fj+u`FA<|qxt^oafe^ta`?9~ ze~-g2_%_9(`S&Ya^FQtI?`QsAhhOmL6p!XVqHxXM=kOn9{u2(r;3pN2=6_q^nm>z| zSeE*8lKDq6F7-$7(TuzC?M8)b{#=LO6t4OAIQ*5&|AfOY_1pQa=T+Vcg|!ba;B1 zr^VqByxoUqv%_h`@W?#T zfWsqrCNHV(`gt_tQeIPe9wD1?DKEjt`|uR{;I%$@mk)lx2k-O2vv^5(H(%o!mwd@Q z*968TUxMH0!&B~qxBK8dKKMZ&{5i(O&SmWXLyU`^f*u7_~38);BWij zqqEcde>~&j|NWfb9LB}}g5T)FQ|N=w_raI>;PpOuhY!Aqak2jp+rOD{v0w1}eRv-6 z!S^`)ea!!a!!P)LAD&(x{ICyxQsKM#**KNpn~b~f<(^jfQYAmYcp)&2dt+^VAY8w% zyNq#ar^^&iJ>%qOp2{%F*V}d_ukjAX-FmxO;oAS(eDFO!_(321kPm*CaVg(U zsfUb9`3nAu56_!E_}f1C$Z_fG+XNr{W*So$+-Ag#$#_XE`An#z=!8;ho^=6Q~6?^ z@CZI~eENDansKqGi+Qpc7aqZLe0Xww@B)WFm**!79e%+}e0b(NJTl*2?(hh{%!jAm z2k-E~I~f=M?B{m9nQ`%t;P?CRJmP~NP`Hl62N`$ACr>L}k3*hg+#R1BQn((UWM7x4 z4|;qum2t|i9*5k_IOSL4xk_Hg^Fk%B@mrO=j^`mIukjMb-8esA@tE<3&5l>Dcr;$A zc~4srP|b9e-=Q9KVRo?3-#{(6W1F!MJ${DQYD9?jpW@Xx4p?^pO>pjqj2qqMulrX zbok&K7#BZy{JeP++ofgTlX~ z@J&AW{R;oIlJ8=C7O*7>?_r$A0~$Y~c&e5B2_O7Th3oI_$`@Rz9Cdz2^A}$U*ZCT+ zaBY8%!q+Q%3KXvSLq2$q!u5UY;|kaO2Nka6kNV(Jk1}9m3@4{qPUBDE8c)}IG8`xQ z@2Y%h`KNv4|3S$MAMqSi_{H%2qmtJ=-&44@^Pd#1RQSggF5kx?dloCafZsk+|5oAB z*66alzd$^DYjj#}N~*p~f~9Fhw6K)36#Rc*&30BIPIi2J zg|Vb{=F=IM@G=$v!@~6~(T3JCTETratx}4mpt06&tUV8_#$y$y(!|nbdAZ^GXlrGA zYj|~wSxXdGOE2toNTm0A!rC;8MW*q4Tt2b%SsJO-(ot&`quiS*dQ&W<^|fZl*H^?^ zbnpbl{k&;~PW4D9=}lW1i$&@>Vs$O;SigHkW1SzTPBSGY`YnOiNK4%1M$+4JsVwPj zy>ynOuH;=TWo7DaVzF9P771GtRqef8w00=J{`XknRI`h9!i84RO^ye8LCHTuJHOCs zleD1jdz<*5vK*zXm8+^;JeufOiRQRAeckXCPv5vMAfD8U;&SC;2CXnyD(iGR%V7_Z z)^NUNIxk)2o`D6x+Z(Vn^Na}Y z52&uwL`=N!ZBdjg1$^hUNMvP4M+9pHw>39m9p3hJk+rx*jWw@cUDt&9rl#ihx@q$k zE%{3{|JW*Ks;iIO*&1D4hgi_sjF9l>*q+2>HouymL>J<-sl5L(_M&ZMe>0fmT`W>tx3Hno6U#CycRWCOEf;9RYFF`+)Mt{>K=u=y9{r|a3 z(3f}IbpG$V1bun#ru{$e67<{IeyvZxGkmfBCttbw@3{p1t~B}&UV^^-{;#&5-cP$& z`=3aY{*Ft~muKI){OI@2FE;(>IDKtDwW*8MKf?N1wirB$pY&Y+V)b8PeQiJG>0R4RxBPO@t^j-d z7#T-)t6}{C0eCO%Szvlyi8w<7@P70Y_8^DIu~GZ|5I*9M@dRRfKRzVFuL}@lwq-8B zIMeZ&U6+nHU2)Mr%Fo|LLDHA=JRF$(bAAP{VZvJl;Jusw)js;WSYP}tG_L+pAN~ET zFYV7y{{>ty{&(!p{f5;LKa>9{uabYkOOW|=`S0cQU3=a0IZ#fQ{`@rQPfwFRwaIkp z%kSR}<-eFu`Za0Nr}tLe{J-Fne&0ow-@p2#-;pN$S!vRrk8(?we|fJ)?1ie?T>pom zpU(eXY0{q!2H}(PKj@RbA%%R4O*a15P5;|I>F?q6J6MzIAHDD6rvJa;=XCjR;evlW zp0Yh~)1M9fbotNuKUO}M^(lQ?Pt;9+olp8X95+s~zU37)ErC-VE=TPRbQTp^= zlbimpebOJz0ePtOf8~>Y%Qq=iyB-SdDg7dR-1Pq!j8Er(kKg+lD*f@$PnZ8a`zh7r z^usuJ(=YZ(|1_t++^{76xc>jBPx^g-Z*}IgD&@ZvA2yKahKle$$h0{OEij;qP@6F9Wz5kZ3{N;BD3ngLRyZNty zK1}dJhy!|?|80Ag%OIss@7KBMKj@QwCBH;El>fVY((mB(wf`5UN&kC3>C5i`Zesgo z=jQ)AKI!*z`kh>Ulz)0J(9QpGPCs7~;Jy5AUX_E3zEq1*h!g3`Pky&CGF ze!B7tJ!!R0!amx_{>Au6`r`@2M!)+_=?9$hKRC)<_U^K~_+PPGfZJH#&Hq&XeHZ@FgmW{+W!~OPgj12+5QgJB>Qj2$F;wS(|7%Um=of!mBiB*eewVAee9Rt z*O7S)A#m;gjgS5FpSBuZtVs4#Um)p=|JMLW=fAFNtYQJ{%g#-|1^Vgyca+nYbSV8# z;^U_OBcJr;cVcYH)vPZ&(HFC>L7Y!#zx+-{%@FbHO6aGve}L`p zLi?nR?61Q|(wB0b!Rfp4>of~+7$FL?iQRJE;A6jcot5Zt6x{Ns-^ER5|K{hcej)3V z{q^{`_J764e)(P>Hv>zCzm7THuYBy6@8`9|HSK|G|7$+>_x`h$?_zzje-%Ei{RLN8 zn_T~UG_ioqP0zLeORPWK>3>GE{vJyc|LgL70s86uU-?6;BK3sqZ^Fm5|81Z2dpZ4V z$6z=8b3WE1_=~qs&`m#=& z*x;uBN$98ZUmvI6%ZlW`yYX?;f5RvJ!&9uH%p)^RN_#l&lm4!Mu^KXuOzE$~$4x&E z0~B(xTYkOov-&sMUHmWQRd4sPz8n8fvi@HpKIl!-mtx()`W&X?qB*(t@GRG3x#0T$ zA?O?bivaJpJ#P=j-)i@i|Igqf=}WubEBUu#@xR#%?cvrqVh_Y_fqS8k|DMxLd3#u2 z(i3?(m;LvA?BAbdQxZGL{!V;EPw?l(ey5%9=kz};3G-g`1s;hGj#3Ib`hBeL`rFmN z4Eo0Zj{YIGpNrA-zZ;Q`=!^a3oW5KCPILMqC-#cIoVWPsXDzZ4?)cBuf6^!aA=V!% z{rx`qAK?7YXG5v{?!!mY7v4Yk*uRX^zn%4EC;D<;ivmhleg`ko{s{Ebm0##`TmQ8E zUr1yB3qI)|=JX52P~N-t|Eo{>n>qb1)+7JjkB{h!|H4;W%&os!6;@H?nI^6;=WB=1 z&lN%5yL?|8Lf@5l&;Mfx{h`wTAO?6;Qf~W^{KLITo11==^ CMakeFiles/cust_optiling.dir/add_custom.cpp.i + +op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cust_optiling.dir/add_custom.cpp.s" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp -o CMakeFiles/cust_optiling.dir/add_custom.cpp.s + +# Object files for target cust_optiling +cust_optiling_OBJECTS = \ +"CMakeFiles/cust_optiling.dir/add_custom.cpp.o" + +# External object files for target cust_optiling +cust_optiling_EXTERNAL_OBJECTS = + +op_host/libcust_opmaster_rt2.0.so: op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o +op_host/libcust_opmaster_rt2.0.so: op_host/CMakeFiles/cust_optiling.dir/build.make +op_host/libcust_opmaster_rt2.0.so: op_host/CMakeFiles/cust_optiling.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libcust_opmaster_rt2.0.so" + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cust_optiling.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +op_host/CMakeFiles/cust_optiling.dir/build: op_host/libcust_opmaster_rt2.0.so +.PHONY : op_host/CMakeFiles/cust_optiling.dir/build + +op_host/CMakeFiles/cust_optiling.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/cust_optiling.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/cust_optiling.dir/clean + +op_host/CMakeFiles/cust_optiling.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/cust_optiling.dir/depend + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake new file mode 100644 index 0000000..35e371c --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/cust_optiling.dir/add_custom.cpp.o" + "CMakeFiles/cust_optiling.dir/add_custom.cpp.o.d" + "libcust_opmaster_rt2.0.pdb" + "libcust_opmaster_rt2.0.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/cust_optiling.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal new file mode 100644 index 0000000..b9c63e6 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.internal @@ -0,0 +1,305 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp + /usr/include/stdc-predef.h + /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host/add_custom_tiling.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h + /usr/include/c++/11/vector + /usr/include/c++/11/bits/stl_algobase.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/aarch64-linux-gnu/bits/wordsize.h + /usr/include/aarch64-linux-gnu/bits/timesize.h + /usr/include/aarch64-linux-gnu/sys/cdefs.h + /usr/include/aarch64-linux-gnu/bits/long-double.h + /usr/include/aarch64-linux-gnu/gnu/stubs.h + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h + /usr/include/c++/11/bits/functexcept.h + /usr/include/c++/11/bits/exception_defines.h + /usr/include/c++/11/bits/cpp_type_traits.h + /usr/include/c++/11/ext/type_traits.h + /usr/include/c++/11/ext/numeric_traits.h + /usr/include/c++/11/bits/stl_pair.h + /usr/include/c++/11/bits/move.h + /usr/include/c++/11/type_traits + /usr/include/c++/11/bits/stl_iterator_base_types.h + /usr/include/c++/11/bits/stl_iterator_base_funcs.h + /usr/include/c++/11/bits/concept_check.h + /usr/include/c++/11/debug/assertions.h + /usr/include/c++/11/bits/stl_iterator.h + /usr/include/c++/11/bits/ptr_traits.h + /usr/include/c++/11/debug/debug.h + /usr/include/c++/11/bits/predefined_ops.h + /usr/include/c++/11/bits/allocator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h + /usr/include/c++/11/ext/new_allocator.h + /usr/include/c++/11/new + /usr/include/c++/11/bits/exception.h + /usr/include/c++/11/bits/memoryfwd.h + /usr/include/c++/11/bits/stl_construct.h + /usr/include/c++/11/bits/stl_uninitialized.h + /usr/include/c++/11/ext/alloc_traits.h + /usr/include/c++/11/bits/alloc_traits.h + /usr/include/c++/11/bits/stl_vector.h + /usr/include/c++/11/initializer_list + /usr/include/c++/11/bits/stl_bvector.h + /usr/include/c++/11/bits/functional_hash.h + /usr/include/c++/11/bits/hash_bytes.h + /usr/include/c++/11/bits/range_access.h + /usr/include/c++/11/bits/vector.tcc + /usr/include/c++/11/map + /usr/include/c++/11/bits/stl_tree.h + /usr/include/c++/11/bits/stl_function.h + /usr/include/c++/11/backward/binders.h + /usr/include/c++/11/ext/aligned_buffer.h + /usr/include/c++/11/bits/stl_map.h + /usr/include/c++/11/tuple + /usr/include/c++/11/utility + /usr/include/c++/11/bits/stl_relops.h + /usr/include/c++/11/array + /usr/include/c++/11/bits/uses_allocator.h + /usr/include/c++/11/bits/invoke.h + /usr/include/c++/11/bits/stl_multimap.h + /usr/include/c++/11/bits/erase_if.h + /usr/include/c++/11/memory + /usr/include/c++/11/bits/stl_tempbuf.h + /usr/include/c++/11/bits/stl_raw_storage_iter.h + /usr/include/c++/11/bits/align.h + /usr/include/c++/11/bit + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h + /usr/include/stdint.h + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h + /usr/include/aarch64-linux-gnu/bits/types.h + /usr/include/aarch64-linux-gnu/bits/typesizes.h + /usr/include/aarch64-linux-gnu/bits/time64.h + /usr/include/aarch64-linux-gnu/bits/wchar.h + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h + /usr/include/c++/11/bits/unique_ptr.h + /usr/include/c++/11/bits/shared_ptr.h + /usr/include/c++/11/iosfwd + /usr/include/c++/11/bits/stringfwd.h + /usr/include/c++/11/bits/postypes.h + /usr/include/c++/11/cwchar + /usr/include/wchar.h + /usr/include/aarch64-linux-gnu/bits/floatn.h + /usr/include/aarch64-linux-gnu/bits/floatn-common.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h + /usr/include/aarch64-linux-gnu/bits/types/FILE.h + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h + /usr/include/aarch64-linux-gnu/bits/wchar2.h + /usr/include/c++/11/bits/shared_ptr_base.h + /usr/include/c++/11/typeinfo + /usr/include/c++/11/bits/allocated_ptr.h + /usr/include/c++/11/bits/refwrap.h + /usr/include/c++/11/ext/atomicity.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h + /usr/include/pthread.h + /usr/include/sched.h + /usr/include/aarch64-linux-gnu/bits/types/time_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h + /usr/include/aarch64-linux-gnu/bits/endian.h + /usr/include/aarch64-linux-gnu/bits/endianness.h + /usr/include/aarch64-linux-gnu/bits/sched.h + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h + /usr/include/aarch64-linux-gnu/bits/cpu-set.h + /usr/include/time.h + /usr/include/aarch64-linux-gnu/bits/time.h + /usr/include/aarch64-linux-gnu/bits/timex.h + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h + /usr/include/aarch64-linux-gnu/bits/setjmp.h + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h + /usr/include/aarch64-linux-gnu/sys/single_threaded.h + /usr/include/c++/11/ext/concurrence.h + /usr/include/c++/11/exception + /usr/include/c++/11/bits/exception_ptr.h + /usr/include/c++/11/bits/cxxabi_init_exception.h + /usr/include/c++/11/bits/nested_exception.h + /usr/include/c++/11/bits/shared_ptr_atomic.h + /usr/include/c++/11/bits/atomic_base.h + /usr/include/c++/11/bits/atomic_lockfree_defines.h + /usr/include/c++/11/backward/auto_ptr.h + /usr/include/c++/11/cstring + /usr/include/string.h + /usr/include/strings.h + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h + /usr/include/aarch64-linux-gnu/bits/string_fortified.h + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h + /usr/include/stdio.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h + /usr/include/aarch64-linux-gnu/bits/stdio.h + /usr/include/aarch64-linux-gnu/bits/stdio2.h + /usr/include/c++/11/stdlib.h + /usr/include/c++/11/cstdlib + /usr/include/stdlib.h + /usr/include/aarch64-linux-gnu/bits/waitflags.h + /usr/include/aarch64-linux-gnu/bits/waitstatus.h + /usr/include/aarch64-linux-gnu/sys/types.h + /usr/include/endian.h + /usr/include/aarch64-linux-gnu/bits/byteswap.h + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h + /usr/include/aarch64-linux-gnu/sys/select.h + /usr/include/aarch64-linux-gnu/bits/select.h + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h + /usr/include/aarch64-linux-gnu/bits/select2.h + /usr/include/alloca.h + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h + /usr/include/aarch64-linux-gnu/bits/stdlib.h + /usr/include/c++/11/bits/std_abs.h + /usr/include/errno.h + /usr/include/aarch64-linux-gnu/bits/errno.h + /usr/include/linux/errno.h + /usr/include/aarch64-linux-gnu/asm/errno.h + /usr/include/asm-generic/errno.h + /usr/include/asm-generic/errno-base.h + /usr/include/aarch64-linux-gnu/bits/types/error_t.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/include/c++/11/string + /usr/include/c++/11/bits/char_traits.h + /usr/include/c++/11/cstdint + /usr/include/c++/11/bits/localefwd.h + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h + /usr/include/c++/11/clocale + /usr/include/locale.h + /usr/include/aarch64-linux-gnu/bits/locale.h + /usr/include/c++/11/cctype + /usr/include/ctype.h + /usr/include/c++/11/bits/ostream_insert.h + /usr/include/c++/11/bits/cxxabi_forced.h + /usr/include/c++/11/bits/basic_string.h + /usr/include/c++/11/ext/string_conversions.h + /usr/include/c++/11/cstdio + /usr/include/c++/11/cerrno + /usr/include/c++/11/bits/charconv.h + /usr/include/c++/11/bits/basic_string.tcc + /usr/include/c++/11/functional + /usr/include/c++/11/bits/std_function.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/include/c++/11/atomic + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h + /usr/include/c++/11/iostream + /usr/include/c++/11/ostream + /usr/include/c++/11/ios + /usr/include/c++/11/bits/ios_base.h + /usr/include/c++/11/bits/locale_classes.h + /usr/include/c++/11/bits/locale_classes.tcc + /usr/include/c++/11/system_error + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h + /usr/include/c++/11/stdexcept + /usr/include/c++/11/streambuf + /usr/include/c++/11/bits/streambuf.tcc + /usr/include/c++/11/bits/basic_ios.h + /usr/include/c++/11/bits/locale_facets.h + /usr/include/c++/11/cwctype + /usr/include/wctype.h + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h + /usr/include/c++/11/bits/streambuf_iterator.h + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h + /usr/include/c++/11/bits/locale_facets.tcc + /usr/include/c++/11/bits/basic_ios.tcc + /usr/include/c++/11/bits/ostream.tcc + /usr/include/c++/11/istream + /usr/include/c++/11/bits/istream.tcc + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h + /usr/include/c++/11/unordered_set + /usr/include/c++/11/bits/hashtable.h + /usr/include/c++/11/bits/hashtable_policy.h + /usr/include/c++/11/bits/enable_special_members.h + /usr/include/c++/11/bits/unordered_set.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/include/c++/11/limits + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h + /usr/include/c++/11/cstddef + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h + /usr/include/c++/11/set + /usr/include/c++/11/bits/stl_set.h + /usr/include/c++/11/bits/stl_multiset.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make new file mode 100644 index 0000000..5567d98 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.make @@ -0,0 +1,866 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o: ../op_host/add_custom.cpp \ + /usr/include/stdc-predef.h \ + ../op_host/add_custom_tiling.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h \ + /usr/include/c++/11/vector \ + /usr/include/c++/11/bits/stl_algobase.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/aarch64-linux-gnu/bits/wordsize.h \ + /usr/include/aarch64-linux-gnu/bits/timesize.h \ + /usr/include/aarch64-linux-gnu/sys/cdefs.h \ + /usr/include/aarch64-linux-gnu/bits/long-double.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs.h \ + /usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \ + /usr/include/c++/11/bits/functexcept.h \ + /usr/include/c++/11/bits/exception_defines.h \ + /usr/include/c++/11/bits/cpp_type_traits.h \ + /usr/include/c++/11/ext/type_traits.h \ + /usr/include/c++/11/ext/numeric_traits.h \ + /usr/include/c++/11/bits/stl_pair.h \ + /usr/include/c++/11/bits/move.h \ + /usr/include/c++/11/type_traits \ + /usr/include/c++/11/bits/stl_iterator_base_types.h \ + /usr/include/c++/11/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/11/bits/concept_check.h \ + /usr/include/c++/11/debug/assertions.h \ + /usr/include/c++/11/bits/stl_iterator.h \ + /usr/include/c++/11/bits/ptr_traits.h \ + /usr/include/c++/11/debug/debug.h \ + /usr/include/c++/11/bits/predefined_ops.h \ + /usr/include/c++/11/bits/allocator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \ + /usr/include/c++/11/ext/new_allocator.h \ + /usr/include/c++/11/new \ + /usr/include/c++/11/bits/exception.h \ + /usr/include/c++/11/bits/memoryfwd.h \ + /usr/include/c++/11/bits/stl_construct.h \ + /usr/include/c++/11/bits/stl_uninitialized.h \ + /usr/include/c++/11/ext/alloc_traits.h \ + /usr/include/c++/11/bits/alloc_traits.h \ + /usr/include/c++/11/bits/stl_vector.h \ + /usr/include/c++/11/initializer_list \ + /usr/include/c++/11/bits/stl_bvector.h \ + /usr/include/c++/11/bits/functional_hash.h \ + /usr/include/c++/11/bits/hash_bytes.h \ + /usr/include/c++/11/bits/range_access.h \ + /usr/include/c++/11/bits/vector.tcc \ + /usr/include/c++/11/map \ + /usr/include/c++/11/bits/stl_tree.h \ + /usr/include/c++/11/bits/stl_function.h \ + /usr/include/c++/11/backward/binders.h \ + /usr/include/c++/11/ext/aligned_buffer.h \ + /usr/include/c++/11/bits/stl_map.h \ + /usr/include/c++/11/tuple \ + /usr/include/c++/11/utility \ + /usr/include/c++/11/bits/stl_relops.h \ + /usr/include/c++/11/array \ + /usr/include/c++/11/bits/uses_allocator.h \ + /usr/include/c++/11/bits/invoke.h \ + /usr/include/c++/11/bits/stl_multimap.h \ + /usr/include/c++/11/bits/erase_if.h \ + /usr/include/c++/11/memory \ + /usr/include/c++/11/bits/stl_tempbuf.h \ + /usr/include/c++/11/bits/stl_raw_storage_iter.h \ + /usr/include/c++/11/bits/align.h \ + /usr/include/c++/11/bit \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/aarch64-linux-gnu/bits/libc-header-start.h \ + /usr/include/aarch64-linux-gnu/bits/types.h \ + /usr/include/aarch64-linux-gnu/bits/typesizes.h \ + /usr/include/aarch64-linux-gnu/bits/time64.h \ + /usr/include/aarch64-linux-gnu/bits/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-intn.h \ + /usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/c++/11/bits/unique_ptr.h \ + /usr/include/c++/11/bits/shared_ptr.h \ + /usr/include/c++/11/iosfwd \ + /usr/include/c++/11/bits/stringfwd.h \ + /usr/include/c++/11/bits/postypes.h \ + /usr/include/c++/11/cwchar \ + /usr/include/wchar.h \ + /usr/include/aarch64-linux-gnu/bits/floatn.h \ + /usr/include/aarch64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /usr/include/aarch64-linux-gnu/bits/types/wint_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/aarch64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/11/bits/shared_ptr_base.h \ + /usr/include/c++/11/typeinfo \ + /usr/include/c++/11/bits/allocated_ptr.h \ + /usr/include/c++/11/bits/refwrap.h \ + /usr/include/c++/11/ext/atomicity.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \ + /usr/include/pthread.h \ + /usr/include/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/time_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/aarch64-linux-gnu/bits/endian.h \ + /usr/include/aarch64-linux-gnu/bits/endianness.h \ + /usr/include/aarch64-linux-gnu/bits/sched.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/aarch64-linux-gnu/bits/cpu-set.h \ + /usr/include/time.h \ + /usr/include/aarch64-linux-gnu/bits/time.h \ + /usr/include/aarch64-linux-gnu/bits/timex.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/aarch64-linux-gnu/bits/types/clock_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/aarch64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/timer_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/aarch64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/aarch64-linux-gnu/bits/struct_mutex.h \ + /usr/include/aarch64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/aarch64-linux-gnu/bits/setjmp.h \ + /usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \ + /usr/include/aarch64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/11/ext/concurrence.h \ + /usr/include/c++/11/exception \ + /usr/include/c++/11/bits/exception_ptr.h \ + /usr/include/c++/11/bits/cxxabi_init_exception.h \ + /usr/include/c++/11/bits/nested_exception.h \ + /usr/include/c++/11/bits/shared_ptr_atomic.h \ + /usr/include/c++/11/bits/atomic_base.h \ + /usr/include/c++/11/bits/atomic_lockfree_defines.h \ + /usr/include/c++/11/backward/auto_ptr.h \ + /usr/include/c++/11/cstring \ + /usr/include/string.h \ + /usr/include/strings.h \ + /usr/include/aarch64-linux-gnu/bits/strings_fortified.h \ + /usr/include/aarch64-linux-gnu/bits/string_fortified.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securec.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/securectype.h \ + /usr/include/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/aarch64-linux-gnu/bits/stdio_lim.h \ + /usr/include/aarch64-linux-gnu/bits/stdio.h \ + /usr/include/aarch64-linux-gnu/bits/stdio2.h \ + /usr/include/c++/11/stdlib.h \ + /usr/include/c++/11/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/aarch64-linux-gnu/bits/waitflags.h \ + /usr/include/aarch64-linux-gnu/bits/waitstatus.h \ + /usr/include/aarch64-linux-gnu/sys/types.h \ + /usr/include/endian.h \ + /usr/include/aarch64-linux-gnu/bits/byteswap.h \ + /usr/include/aarch64-linux-gnu/bits/uintn-identity.h \ + /usr/include/aarch64-linux-gnu/sys/select.h \ + /usr/include/aarch64-linux-gnu/bits/select.h \ + /usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/aarch64-linux-gnu/bits/select2.h \ + /usr/include/alloca.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ + /usr/include/aarch64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/11/bits/std_abs.h \ + /usr/include/errno.h \ + /usr/include/aarch64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h \ + /usr/include/aarch64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h \ + /usr/include/asm-generic/errno-base.h \ + /usr/include/aarch64-linux-gnu/bits/types/error_t.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/include/c++/11/string \ + /usr/include/c++/11/bits/char_traits.h \ + /usr/include/c++/11/cstdint \ + /usr/include/c++/11/bits/localefwd.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \ + /usr/include/c++/11/clocale \ + /usr/include/locale.h \ + /usr/include/aarch64-linux-gnu/bits/locale.h \ + /usr/include/c++/11/cctype \ + /usr/include/ctype.h \ + /usr/include/c++/11/bits/ostream_insert.h \ + /usr/include/c++/11/bits/cxxabi_forced.h \ + /usr/include/c++/11/bits/basic_string.h \ + /usr/include/c++/11/ext/string_conversions.h \ + /usr/include/c++/11/cstdio \ + /usr/include/c++/11/cerrno \ + /usr/include/c++/11/bits/charconv.h \ + /usr/include/c++/11/bits/basic_string.tcc \ + /usr/include/c++/11/functional \ + /usr/include/c++/11/bits/std_function.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/include/c++/11/atomic \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h \ + /usr/include/c++/11/iostream \ + /usr/include/c++/11/ostream \ + /usr/include/c++/11/ios \ + /usr/include/c++/11/bits/ios_base.h \ + /usr/include/c++/11/bits/locale_classes.h \ + /usr/include/c++/11/bits/locale_classes.tcc \ + /usr/include/c++/11/system_error \ + /usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h \ + /usr/include/c++/11/stdexcept \ + /usr/include/c++/11/streambuf \ + /usr/include/c++/11/bits/streambuf.tcc \ + /usr/include/c++/11/bits/basic_ios.h \ + /usr/include/c++/11/bits/locale_facets.h \ + /usr/include/c++/11/cwctype \ + /usr/include/wctype.h \ + /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \ + /usr/include/c++/11/bits/streambuf_iterator.h \ + /usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \ + /usr/include/c++/11/bits/locale_facets.tcc \ + /usr/include/c++/11/bits/basic_ios.tcc \ + /usr/include/c++/11/bits/ostream.tcc \ + /usr/include/c++/11/istream \ + /usr/include/c++/11/bits/istream.tcc \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h \ + /usr/include/c++/11/unordered_set \ + /usr/include/c++/11/bits/hashtable.h \ + /usr/include/c++/11/bits/hashtable_policy.h \ + /usr/include/c++/11/bits/enable_special_members.h \ + /usr/include/c++/11/bits/unordered_set.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/include/c++/11/limits \ + /usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h \ + /usr/include/c++/11/cstddef \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h \ + /usr/include/c++/11/set \ + /usr/include/c++/11/bits/stl_set.h \ + /usr/include/c++/11/bits/stl_multiset.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h \ + /usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h + + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_factory.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_reg.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_datatype_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/op_execute_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/range.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_range_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/inference_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_run_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/kernel_context.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/tensor.h: + +/usr/include/c++/11/set: + +/usr/include/aarch64-linux-gnu/bits/struct_mutex.h: + +/usr/include/aarch64-linux-gnu/bits/types.h: + +/usr/include/aarch64-linux-gnu/bits/setjmp.h: + +/usr/include/c++/11/bits/hashtable.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/compute_node_info.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator_factory.h: + +/usr/include/aarch64-linux-gnu/bits/types/timer_t.h: + +/usr/include/c++/11/bits/ostream.tcc: + +/usr/include/aarch64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/c++/11/bits/allocator.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h: + +/usr/include/aarch64-linux-gnu/bits/endian.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tiling_data.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor_data.h: + +/usr/include/c++/11/bits/stl_set.h: + +/usr/include/aarch64-linux-gnu/bits/types/time_t.h: + +/usr/include/c++/11/bits/streambuf_iterator.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_error_codes.h: + +/usr/include/c++/11/bits/refwrap.h: + +/usr/include/c++/11/bits/allocated_ptr.h: + +/usr/include/aarch64-linux-gnu/bits/floatn-common.h: + +/usr/include/aarch64-linux-gnu/bits/wchar2.h: + +/usr/include/aarch64-linux-gnu/bits/wchar.h: + +/usr/include/aarch64-linux-gnu/bits/types/FILE.h: + +/usr/include/aarch64-linux-gnu/bits/types/__FILE.h: + +/usr/include/aarch64-linux-gnu/bits/cpu-set.h: + +/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h: + +/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/expand_dims_type.h: + +/usr/include/c++/11/backward/binders.h: + +/usr/include/c++/11/iostream: + +/usr/include/wchar.h: + +/usr/include/c++/11/bits/cxxabi_init_exception.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_tm.h: + +/usr/include/c++/11/cwchar: + +/usr/include/c++/11/bits/stl_algobase.h: + +/usr/include/c++/11/bits/postypes.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/c++/11/cstdio: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/extended_kernel_context.h: + +/usr/include/c++/11/bit: + +/usr/include/c++/11/bits/stl_iterator_base_types.h: + +/usr/include/c++/11/cstdlib: + +/usr/include/c++/11/typeinfo: + +/usr/include/c++/11/bits/stl_raw_storage_iter.h: + +/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/shape.h: + +/usr/include/aarch64-linux-gnu/bits/types/__sigset_t.h: + +/usr/include/features.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/c++/11/bits/uses_allocator.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/ge/ge_allocator.h: + +/usr/include/c++/11/clocale: + +/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h: + +/usr/include/c++/11/ext/type_traits.h: + +/usr/include/c++/11/bits/exception_defines.h: + +/usr/include/c++/11/atomic: + +/usr/include/c++/11/debug/assertions.h: + +/usr/include/aarch64-linux-gnu/bits/endianness.h: + +/usr/include/ctype.h: + +/usr/include/c++/11/type_traits: + +/usr/include/c++/11/bits/stl_tree.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h: + +/usr/include/aarch64-linux-gnu/bits/stdio2.h: + +/usr/include/aarch64-linux-gnu/bits/errno.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_itimerspec.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h: + +../op_host/add_custom_tiling.h: + +/usr/include/c++/11/debug/debug.h: + +/usr/include/features-time64.h: + +/usr/include/aarch64-linux-gnu/sys/cdefs.h: + +/usr/include/c++/11/exception: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def.h: + +/usr/include/c++/11/bits/std_function.h: + +/usr/include/c++/11/bits/stl_tempbuf.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/tilingdata_base.h: + +/usr/include/c++/11/new: + +/usr/include/c++/11/bits/stl_iterator.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_timeval.h: + +/usr/include/c++/11/bits/stl_bvector.h: + +/usr/include/aarch64-linux-gnu/bits/timesize.h: + +/usr/include/c++/11/bits/align.h: + +/usr/include/c++/11/vector: + +/usr/include/pthread.h: + +/usr/include/aarch64-linux-gnu/bits/wordsize.h: + +/usr/include/asm-generic/errno-base.h: + +/usr/include/c++/11/bits/char_traits.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/resource_context.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs.h: + +/usr/include/aarch64-linux-gnu/bits/stdint-intn.h: + +/usr/include/c++/11/bits/locale_facets.tcc: + +/usr/include/c++/11/bits/functexcept.h: + +/usr/include/aarch64-linux-gnu/bits/time.h: + +/usr/include/aarch64-linux-gnu/bits/select2.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-float.h: + +/usr/include/c++/11/streambuf: + +/usr/include/c++/11/array: + +/usr/include/c++/11/ext/atomicity.h: + +/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/include/c++/11/bits/stl_pair.h: + +/usr/include/c++/11/bits/memoryfwd.h: + +/usr/include/c++/11/bits/stl_function.h: + +/usr/include/aarch64-linux-gnu/bits/libc-header-start.h: + +/usr/include/c++/11/cstring: + +/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/c++/11/bits/concept_check.h: + +/usr/include/aarch64-linux-gnu/bits/byteswap.h: + +/usr/include/aarch64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/aarch64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h: + +/usr/include/c++/11/limits: + +/usr/include/c++/11/bits/predefined_ops.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/gnode.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/graph.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h: + +/usr/include/aarch64-linux-gnu/bits/pthreadtypes.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/compiler_def.h: + +/usr/include/c++/11/memory: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib.h: + +/usr/include/c++/11/system_error: + +/usr/include/aarch64-linux-gnu/sys/types.h: + +/usr/include/c++/11/bits/vector.tcc: + +/usr/include/aarch64-linux-gnu/bits/types/clock_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/locale_t.h: + +/usr/include/c++/11/bits/functional_hash.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/operator.h: + +/usr/include/c++/11/ext/numeric_traits.h: + +/usr/include/c++/11/bits/atomic_base.h: + +/usr/include/errno.h: + +/usr/include/c++/11/bits/shared_ptr.h: + +/usr/include/c++/11/bits/stl_construct.h: + +/usr/include/c++/11/bits/cpp_type_traits.h: + +/usr/include/c++/11/bits/stl_iterator_base_funcs.h: + +/usr/include/c++/11/ext/new_allocator.h: + +/usr/include/c++/11/bits/stl_uninitialized.h: + +/usr/include/c++/11/backward/auto_ptr.h: + +/usr/include/c++/11/ext/alloc_traits.h: + +/usr/include/aarch64-linux-gnu/bits/floatn.h: + +/usr/include/c++/11/bits/cxxabi_forced.h: + +/usr/include/stdc-predef.h: + +/usr/include/c++/11/bits/alloc_traits.h: + +/usr/include/aarch64-linux-gnu/bits/time64.h: + +../op_host/add_custom.cpp: + +/usr/include/alloca.h: + +/usr/include/c++/11/bits/range_access.h: + +/usr/include/c++/11/map: + +/usr/include/c++/11/bits/stl_vector.h: + +/usr/include/c++/11/cstddef: + +/usr/include/c++/11/initializer_list: + +/usr/include/c++/11/iosfwd: + +/usr/include/c++/11/bits/erase_if.h: + +/usr/include/c++/11/bits/ptr_traits.h: + +/usr/include/stdint.h: + +/usr/include/endian.h: + +/usr/include/c++/11/bits/stl_map.h: + +/usr/include/c++/11/bits/unique_ptr.h: + +/usr/include/c++/11/ostream: + +/usr/include/c++/11/bits/hash_bytes.h: + +/usr/include/c++/11/bits/move.h: + +/usr/include/c++/11/bits/stl_relops.h: + +/usr/include/aarch64-linux-gnu/bits/struct_rwlock.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_api_types.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct___jmp_buf_tag.h: + +/usr/include/aarch64-linux-gnu/sys/single_threaded.h: + +/usr/include/c++/11/ext/concurrence.h: + +/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/runtime_attrs.h: + +/usr/include/c++/11/bits/exception_ptr.h: + +/usr/include/c++/11/ext/string_conversions.h: + +/usr/include/c++/11/bits/nested_exception.h: + +/usr/include/c++/11/bits/shared_ptr_atomic.h: + +/usr/include/aarch64-linux-gnu/bits/typesizes.h: + +/usr/include/c++/11/bits/atomic_lockfree_defines.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h: + +/usr/include/c++/11/bits/streambuf.tcc: + +/usr/include/string.h: + +/usr/include/strings.h: + +/usr/include/aarch64-linux-gnu/bits/string_fortified.h: + +/usr/include/aarch64-linux-gnu/bits/locale.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/context_extend.h: + +/usr/include/c++/11/tuple: + +/usr/include/aarch64-linux-gnu/bits/select.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securec.h: + +/usr/include/c++/11/bits/charconv.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/securectype.h: + +/usr/include/c++/11/bits/ios_base.h: + +/usr/include/stdio.h: + +/usr/include/c++/11/bits/stringfwd.h: + +/usr/include/aarch64-linux-gnu/bits/strings_fortified.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ge_error_codes.h: + +/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/time.h: + +/usr/include/aarch64-linux-gnu/bits/wctype-wchar.h: + +/usr/include/c++/11/bits/stl_multiset.h: + +/usr/include/aarch64-linux-gnu/bits/stdio_lim.h: + +/usr/include/aarch64-linux-gnu/bits/stdio.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h: + +/usr/include/c++/11/cerrno: + +/usr/include/c++/11/stdlib.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/infer_shape_context.h: + +/usr/include/stdlib.h: + +/usr/include/aarch64-linux-gnu/bits/waitflags.h: + +/usr/include/aarch64-linux-gnu/bits/waitstatus.h: + +/usr/include/aarch64-linux-gnu/bits/uintn-identity.h: + +/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h: + +/usr/include/aarch64-linux-gnu/sys/select.h: + +/usr/include/aarch64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/aarch64-linux-gnu/bits/long-double.h: + +/usr/include/c++/11/bits/std_abs.h: + +/usr/include/aarch64-linux-gnu/bits/types/error_t.h: + +/usr/include/c++/11/bits/stl_multimap.h: + +/usr/include/aarch64-linux-gnu/asm/errno.h: + +/usr/include/c++/11/cctype: + +/usr/include/asm-generic/errno.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/ascend_string.h: + +/usr/include/c++/11/string: + +/usr/include/c++/11/cstdint: + +/usr/include/c++/11/bits/localefwd.h: + +/usr/include/aarch64-linux-gnu/bits/types/wint_t.h: + +/usr/include/locale.h: + +/usr/include/c++/11/bits/ostream_insert.h: + +/usr/include/c++/11/bits/shared_ptr_base.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/graph/types.h: + +/usr/include/c++/11/bits/basic_string.h: + +/usr/include/c++/11/bits/basic_string.tcc: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_def_registry.h: + +/usr/include/c++/11/utility: + +/usr/include/c++/11/ios: + +/usr/include/c++/11/bits/locale_classes.h: + +/usr/include/c++/11/bits/locale_classes.tcc: + +/usr/include/aarch64-linux-gnu/c++/11/bits/error_constants.h: + +/usr/include/c++/11/stdexcept: + +/usr/include/c++/11/ext/aligned_buffer.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/base_type.h: + +/usr/include/c++/11/bits/basic_ios.h: + +/usr/include/c++/11/bits/exception.h: + +/usr/include/c++/11/bits/locale_facets.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h: + +/usr/include/c++/11/cwctype: + +/usr/include/sched.h: + +/usr/include/wctype.h: + +/usr/include/c++/11/functional: + +/usr/include/linux/errno.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h: + +/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h: + +/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h: + +/usr/include/c++/11/istream: + +/usr/include/aarch64-linux-gnu/bits/sched.h: + +/usr/include/c++/11/bits/istream.tcc: + +/usr/include/c++/11/bits/invoke.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_registry.h: + +/usr/include/aarch64-linux-gnu/bits/timex.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/register/op_impl_kernel_registry.h: + +/usr/include/c++/11/unordered_set: + +/usr/include/c++/11/bits/hashtable_policy.h: + +/usr/include/c++/11/bits/basic_ios.tcc: + +/usr/include/c++/11/bits/enable_special_members.h: + +/usr/include/c++/11/bits/unordered_set.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/utils/extern_math_util.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/tensor.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_shape.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/storage_format.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/exe_graph/runtime/continuous_vector.h: + +/usr/local/Ascend/ascend-toolkit/latest/include/external/ge_common/ge_error_codes.h: diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts new file mode 100644 index 0000000..74472e3 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for cust_optiling. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make new file mode 100644 index 0000000..fe68c7f --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for cust_optiling. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make new file mode 100644 index 0000000..6d98162 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -DOP_TILING_LIB -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -Dcust_optiling_EXPORTS + +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/include + +CXX_FLAGS = -fPIC -fvisibility=hidden -fPIC -fvisibility-inlines-hidden -O2 -std=c++11 -fstack-protector-strong + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt new file mode 100644 index 0000000..5406749 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -s -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -shared -Wl,-soname,libcust_opmaster_rt2.0.so -o libcust_opmaster_rt2.0.so CMakeFiles/cust_optiling.dir/add_custom.cpp.o -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64: -lexe_graph -lregister -ltiling_api -Wl,--whole-archive -lrt2_registry -Wl,--no-whole-archive diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make new file mode 100644 index 0000000..72bb7dd --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/cust_optiling.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 7 +CMAKE_PROGRESS_2 = 8 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake new file mode 100644 index 0000000..dc55e44 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake @@ -0,0 +1,18 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make new file mode 100644 index 0000000..29d9cbd --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/build.make @@ -0,0 +1,87 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +# Utility rule file for optiling_compat. + +# Include any custom commands dependencies for this target. +include op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make + +# Include the progress variables for this target. +include op_host/CMakeFiles/optiling_compat.dir/progress.make + +op_host/CMakeFiles/optiling_compat: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && ln -sf lib/linux/aarch64/libcust_opmaster_rt2.0.so /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/liboptiling.so + +optiling_compat: op_host/CMakeFiles/optiling_compat +optiling_compat: op_host/CMakeFiles/optiling_compat.dir/build.make +.PHONY : optiling_compat + +# Rule to build all files generated by this target. +op_host/CMakeFiles/optiling_compat.dir/build: optiling_compat +.PHONY : op_host/CMakeFiles/optiling_compat.dir/build + +op_host/CMakeFiles/optiling_compat.dir/clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host && $(CMAKE_COMMAND) -P CMakeFiles/optiling_compat.dir/cmake_clean.cmake +.PHONY : op_host/CMakeFiles/optiling_compat.dir/clean + +op_host/CMakeFiles/optiling_compat.dir/depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : op_host/CMakeFiles/optiling_compat.dir/depend + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake new file mode 100644 index 0000000..d6c6218 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/cmake_clean.cmake @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/optiling_compat" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/optiling_compat.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make new file mode 100644 index 0000000..f6005bc --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for optiling_compat. +# This may be replaced when dependencies are built. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts new file mode 100644 index 0000000..218ad6e --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for optiling_compat. diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/optiling_compat.dir/progress.make @@ -0,0 +1 @@ + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/progress.marks b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/progress.marks new file mode 100644 index 0000000..7f8f011 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/CMakeFiles/progress.marks @@ -0,0 +1 @@ +7 diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/Makefile b/Increase_Bedore_pipe/No_increase/build_out/op_host/Makefile new file mode 100644 index 0000000..8be60d6 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/Makefile @@ -0,0 +1,355 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && /usr/bin/cpack --config ./CPackSourceConfig.cmake /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host//CMakeFiles/progress.marks + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/all + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +op_host/CMakeFiles/cust_op_proto.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_op_proto.dir/rule +.PHONY : op_host/CMakeFiles/cust_op_proto.dir/rule + +# Convenience name for target. +cust_op_proto: op_host/CMakeFiles/cust_op_proto.dir/rule +.PHONY : cust_op_proto + +# fast build rule for target. +cust_op_proto/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/build +.PHONY : cust_op_proto/fast + +# Convenience name for target. +op_host/CMakeFiles/cust_optiling.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_optiling.dir/rule +.PHONY : op_host/CMakeFiles/cust_optiling.dir/rule + +# Convenience name for target. +cust_optiling: op_host/CMakeFiles/cust_optiling.dir/rule +.PHONY : cust_optiling + +# fast build rule for target. +cust_optiling/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/build +.PHONY : cust_optiling/fast + +# Convenience name for target. +op_host/CMakeFiles/cust_opapi.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/cust_opapi.dir/rule +.PHONY : op_host/CMakeFiles/cust_opapi.dir/rule + +# Convenience name for target. +cust_opapi: op_host/CMakeFiles/cust_opapi.dir/rule +.PHONY : cust_opapi + +# fast build rule for target. +cust_opapi/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/build +.PHONY : cust_opapi/fast + +# Convenience name for target. +op_host/CMakeFiles/optiling_compat.dir/rule: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 op_host/CMakeFiles/optiling_compat.dir/rule +.PHONY : op_host/CMakeFiles/optiling_compat.dir/rule + +# Convenience name for target. +optiling_compat: op_host/CMakeFiles/optiling_compat.dir/rule +.PHONY : optiling_compat + +# fast build rule for target. +optiling_compat/fast: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/optiling_compat.dir/build.make op_host/CMakeFiles/optiling_compat.dir/build +.PHONY : optiling_compat/fast + +__/autogen/aclnn_add_custom.o: __/autogen/aclnn_add_custom.cpp.o +.PHONY : __/autogen/aclnn_add_custom.o + +# target to build an object file +__/autogen/aclnn_add_custom.cpp.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.o +.PHONY : __/autogen/aclnn_add_custom.cpp.o + +__/autogen/aclnn_add_custom.i: __/autogen/aclnn_add_custom.cpp.i +.PHONY : __/autogen/aclnn_add_custom.i + +# target to preprocess a source file +__/autogen/aclnn_add_custom.cpp.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.i +.PHONY : __/autogen/aclnn_add_custom.cpp.i + +__/autogen/aclnn_add_custom.s: __/autogen/aclnn_add_custom.cpp.s +.PHONY : __/autogen/aclnn_add_custom.s + +# target to generate assembly for a file +__/autogen/aclnn_add_custom.cpp.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_opapi.dir/build.make op_host/CMakeFiles/cust_opapi.dir/__/autogen/aclnn_add_custom.cpp.s +.PHONY : __/autogen/aclnn_add_custom.cpp.s + +__/autogen/op_proto.o: __/autogen/op_proto.cc.o +.PHONY : __/autogen/op_proto.o + +# target to build an object file +__/autogen/op_proto.cc.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.o +.PHONY : __/autogen/op_proto.cc.o + +__/autogen/op_proto.i: __/autogen/op_proto.cc.i +.PHONY : __/autogen/op_proto.i + +# target to preprocess a source file +__/autogen/op_proto.cc.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.i +.PHONY : __/autogen/op_proto.cc.i + +__/autogen/op_proto.s: __/autogen/op_proto.cc.s +.PHONY : __/autogen/op_proto.s + +# target to generate assembly for a file +__/autogen/op_proto.cc.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/__/autogen/op_proto.cc.s +.PHONY : __/autogen/op_proto.cc.s + +add_custom.o: add_custom.cpp.o +.PHONY : add_custom.o + +# target to build an object file +add_custom.cpp.o: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.o + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.o +.PHONY : add_custom.cpp.o + +add_custom.i: add_custom.cpp.i +.PHONY : add_custom.i + +# target to preprocess a source file +add_custom.cpp.i: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.i + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.i +.PHONY : add_custom.cpp.i + +add_custom.s: add_custom.cpp.s +.PHONY : add_custom.s + +# target to generate assembly for a file +add_custom.cpp.s: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_op_proto.dir/build.make op_host/CMakeFiles/cust_op_proto.dir/add_custom.cpp.s + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(MAKE) $(MAKESILENT) -f op_host/CMakeFiles/cust_optiling.dir/build.make op_host/CMakeFiles/cust_optiling.dir/add_custom.cpp.s +.PHONY : add_custom.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... optiling_compat" + @echo "... cust_op_proto" + @echo "... cust_opapi" + @echo "... cust_optiling" + @echo "... __/autogen/aclnn_add_custom.o" + @echo "... __/autogen/aclnn_add_custom.i" + @echo "... __/autogen/aclnn_add_custom.s" + @echo "... __/autogen/op_proto.o" + @echo "... __/autogen/op_proto.i" + @echo "... __/autogen/op_proto.s" + @echo "... add_custom.o" + @echo "... add_custom.i" + @echo "... add_custom.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_host/cmake_install.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_host/cmake_install.cmake new file mode 100644 index 0000000..8c5cce8 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_host/cmake_install.cmake @@ -0,0 +1,125 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_host + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opsproto_rt2.0.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_proto/inc" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/op_proto.h") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opmaster_rt2.0.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/lib/linux/aarch64/libcust_opmaster_rt2.0.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/liboptiling.so") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib" TYPE SHARED_LIBRARY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opapi.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so" + OLD_RPATH "/usr/local/Ascend/ascend-toolkit/latest/lib64:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/lib/libcust_opapi.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_api/include" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/autogen/aclnn_add_custom.h") +endif() + diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib/libcust_opapi.so b/Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opapi.so similarity index 86% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_api/lib/libcust_opapi.so rename to Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opapi.so index b49919b0e8ae7dd623b5eb673ee9cf1721bae62c..41fa718f34536d8db08a00262f00d08b9801448a 100644 GIT binary patch delta 79 zcmewn@FQSD5WAj!X>pN$PJVJ?j=p1Ya%x_Rej=FCEy>T%$<8d%&q*vvEe2AVNoFQi Zn;Y0Sh;qs@KtR)GP1*O1n>FMEI02($8i4=+ delta 30 mcmewn@FQSD5c}jN3A4=|>?=e!JIKCZoLs;tuvtSsfD-`BlM7q` diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so b/Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opmaster_rt2.0.so similarity index 98% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/op_tiling/liboptiling.so rename to Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opmaster_rt2.0.so index 8c4fb0fb026848917aa6ff32fe5efee5b5280949..52d0a964cb3ec39449fab04e5eeda916c67e9b95 100644 GIT binary patch delta 87 zcmX@{p7q3g)(x9v^z=)Mi}Z8ylM{3F9gCAw^HTH^!IW-Eetu4NW{G}IVo7Q-kjhLl iGqGxZAhZ2}4C4h~PFV&BxU_v`7UO%y?JIH^6}SQLVITDX delta 39 xcmV+?0NDS??*+*31+cOlmy%@xHiPIKx9A)J$W6DvY60j0lW+kLx2S9ZAPal;5b6K` diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so b/Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opsproto_rt2.0.so similarity index 98% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_proto/lib/linux/aarch64/libcust_opsproto_rt2.0.so rename to Increase_Bedore_pipe/No_increase/build_out/op_host/libcust_opsproto_rt2.0.so index 5b7376c2dfc3b2433fdc1b90e6dcc1458c86381c..549af7e629616cd18c7d87e12c47b84a7818ecd5 100644 GIT binary patch delta 87 zcmX@Hp6$eXwha~1ditfsMfy4U$%#4oj>XBTc`5pdU`n?nKR+isvqV29u_Uz^NM$CO inOHS1lit2eno%g9Q7zwP?_NJPY!cVGaRYS%S*~BrdPCgtBW_GhYllc_5Y(?-61VXq z_9kkIAa_eDTwB^2)TE)HU@C!vRG|oopBVS1SPl)QE|2y{6s;pJL zYCs@y<=yYQXTCY-%sI1jug@On>7s;yz9{Un?%x3jHQJ4yNOG*aJH7ak0rSUgZTLx&+;AMn%n8j-J6(nEkAeH z2C0)A0_8OO{=W6`!daUKQFHEY5@LV+h3Ou|rGRI+(~MdWyiB=_gJ>$W*Fq+AmtY@s|dMuEdaOP zib$J-Hi<%EufhR^6AE30a|-7bUQxKH@Lh#@g?AJJ<|pI0jlW*ckqlu>%-=m4q;AJ` zO8;^`B2vqg-aa33M@rGQLSK}&%rcGTuQ9kCpkObvD}KP7$90ig-;HF27fAV011_7i zdhL70qQA<>e2vNIG9`ciLj*poq2xOzxc)W9=uH~xx`BPYz_PDZ0Qo&`qWtSvn`$1q z@Bw^O_zHLP)zlO>7+HHiGVlM6!Q2J*YTyk4vc`*ZjA0+mxf|>v+OqEjp?YnWxo1kT z=V4CggJ#MPvEzQokmD{q#a(!XU-o~?#{Gx^Un-^WLXeV)Fy@Cfc)_CKZvwdO7J0dG z1ukU)?iOs3Z7&7XvjXm+Y&(RFfv}M~39toh0rsNdo}u(jzuYwH-ijIn)Nr>@>cENt zRVxzNW#2GypP54g5OFKp1B`mqJ=Yts=n93c?R0j+1Dn1}9r_*(Rjt4k|Ee*YSph7B z020QWi+PXvm4rF{*|fRFpE=Q-Fg3-2J#^+v!3jmK7)uSc@R%pYYolv0gOc(4zFmCj_j5TkIqFv&J)`fO(Z;|2h6{4cvP&_f2>nl)`2n#Pc8wHjltg zz6I)d6n67U_zbTChkpVZ_-1J0F?f_e1PQ(kl6)()@@m}U+p%XgP{D1e!c%T5#;M`i zya8ocD|gGow3B&)KwRKvj>x>oof;F8pQRS|6+Wz`Ki$>_at(h)Jy^9yxSYU0aKC=E z{ZqyQ<{!ne)&{b!`6Ox7%vC8<8(G7WvcCAI5nN=jI+Ia1pTg^%#4P)MJiMAy%k-Uy^gsCiDHdp0n8#KSSP%IrO02RNAj24=676 zKhgS4p7^nhfotkUd+sp;rzEO1{y^*cJn?<$w~4^xIL?%>G2~&iNuRH3E$;tsOP`-3 za6pdlCoqHk$>F`!&1fC<#J7-_DPPY>t*Td6Ysx+G4dgkDaTLdMszztj_}jZZaT+;Q zKE5b5s`nFG6Y#_+@-W7KQjV)$9#`WAtVYwwL(0cNsZo2TU;Dsbd|CR~OP~YC!>T?< z)Ocr|Ck`VoQ9kxdjmqOm?E~xb1o9l#BO%9C9$k7I>(QZjXV4Qu+p$Ocwfzg8NNW2o zPwdqk>(rz*Xs=h?uvVjSZLjiVoy2ZEX0Jvc(LA;q-Klk^Cw6FF=7}1`->&e)HqE1+ zh-nS>AgZ`gw;HX`cFPlC(zbpd%L~9f z<+-5Gr=F3q=hBl&yQinqu5XSz@n&dn8k+Vvd-pgkha2jX_*cL8(@rAkIQH;~!LeiZ z>Gb5($oQC+!}?W)-vzuF9{ue3{?ccPW~f%ELBHP}4qwD$>Azk0B>A_OT=vH=sl+G# zJ)@2jN6QZRwAq5&!nHvKzw+7bTmDNB$XaIb*%rZlY^sah!36UKQ%To zHiGu4GozWoA;jZTnaLt6BDAGa9jB%;ocX{RZjcA5u=np*0Ihnok}EyIne=HZrf zI?>YX4D~y3tbgjv)RFPY=cXnGhtr4BQ|Zam=@gnXy(1Ip-pr&<{QpE*8Tr}xF0J3k zb-i?$`xPr%o&ceFs^2kO1OV}o6HLLs~*U6`v3Hdi9|2 zX*FN^fAG?AwXF^b)i)2IoG&~am+Su5T?cSm#cx+S4IASp|HJ&<>i?x) KJyGGt`Tqn5)`s5z literal 0 HcmV?d00001 diff --git a/Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/binary_info_config.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin/binary_info_config.json similarity index 100% rename from Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b/binary_info_config.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin/binary_info_config.json diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom-add_custom-0.sh b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom-add_custom-0.sh new file mode 100644 index 0000000..8a258fc --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom-add_custom-0.sh @@ -0,0 +1,14 @@ +#!/bin/bash +echo "[Ascend310B1] Generating AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b ..." +opc $1 --main_func=add_custom --input_param=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json --soc_version=Ascend310B1 --output=$2 --impl_mode="" --simplified_key_mode=0 --op_mode=dynamic + +if ! test -f $2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json ; then + echo "$2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json not generated!" + exit 1 +fi + +if ! test -f $2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o ; then + echo "$2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o not generated!" + exit 1 +fi +echo "[Ascend310B1] Generating AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b Done" diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json new file mode 100644 index 0000000..834fc7a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json @@ -0,0 +1,42 @@ +{ + "op_type": "AddCustom", + "op_list": [ + { + "bin_filename": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "inputs": [ + { + "name": "x", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + }, + { + "name": "y", + "index": 1, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "outputs": [ + { + "name": "z", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/AddCustom.py similarity index 100% rename from Increase_double_bufer/No_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/AddCustom.py diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt new file mode 100644 index 0000000..0d31a44 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/CMakeLists.txt @@ -0,0 +1,61 @@ +# set custom compile options +if ("${CMAKE_BUILD_TYPE}x" STREQUAL "Debugx") + add_ops_compile_options(ALL OPTIONS -g -O0) +endif() + +foreach(compute_unit ${ASCEND_COMPUTE_UNIT}) + + # generate aic-${compute_unit}-ops-info.json + add_ops_info_target(TARGET ops_info_gen_${compute_unit} + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core/${compute_unit}/aic-${compute_unit}-ops-info.json + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/config/${compute_unit} + ) + + # generate ascendc impl py once + if (NOT TARGET ascendc_impl_gen) + add_ops_impl_target(TARGET ascendc_impl_gen + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl + ) + endif() + + # dynamic shape binary compile + if (${ENABLE_BINARY_PACKAGE}) + add_bin_compile_target(TARGET ascendc_bin_${compute_unit} + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + ADP_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/dynamic + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/binary/${compute_unit} + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/kernel + COMPUTE_UNIT ${compute_unit} + ) + add_dependencies(ascendc_bin_${compute_unit} ascendc_impl_gen) + endif() + +endforeach() + +# generate npu_supported_ops.json +add_npu_support_target(TARGET npu_supported_ops + OPS_INFO_DIR ${ASCEND_AUTOGEN_PATH} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core + INSTALL_DIR packages/vendors/${vendor_name}/framework/${ASCEND_FRAMEWORK_TYPE} +) + +if(ENABLE_TEST AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/testcases) + add_subdirectory(testcases) +endif() + +# install kernel file +if (${ENABLE_SOURCE_PACKAGE}) + file(GLOB KERNEL_FILES + ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/*.h + ${CMAKE_CURRENT_SOURCE_DIR}/*.py + ) + install(FILES ${KERNEL_FILES} + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl/dynamic + ) +endif() diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/__pycache__/AddCustom.cpython-39.pyc b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/__pycache__/AddCustom.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2c9f21096d68766ffd61b4ff429634062876ea3c GIT binary patch literal 5347 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 QhYF@SY2q4{U&ti?3tzv;00000 literal 0 HcmV?d00001 diff --git a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp similarity index 63% rename from Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp index a25b246..6a148f9 100644 --- a/Increase_DataCopy_case/Is_increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.cpp +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/src/add_custom.cpp @@ -15,31 +15,30 @@ public: __aicore__ inline KernelAdd() {} __aicore__ inline void Init(GM_ADDR x, GM_ADDR y, GM_ADDR z, uint32_t totalLength, uint32_t tileNum) { - xGm.SetGlobalBuffer((__gm__ half *)x , 32768); - - pipe.InitBuffer(inQueueX, 1, 32768 * sizeof(half)); + xGm.SetGlobalBuffer((__gm__ half *)x , 131072); + pipe.InitBuffer(inQueueX, 1, 65536 * sizeof(half)); + pipe.InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; } __aicore__ inline void Process() { AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); - AscendC::DataCopyParams copyParams; - copyParams.blockCount = 16; - copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float - copyParams.srcStride = 0; // 表示两次搬运src之间的间隔,单位为DataBlock - copyParams.dstStride = 0; - - AscendC::DataCopy(xLocal, xGm, copyParams); - + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); inQueueX.FreeTensor(xLocal); - - } + private: AscendC::TPipe pipe; - AscendC::TQue inQueueX, inQueueY; - + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; AscendC::GlobalTensor xGm; }; diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/add_custom.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/add_custom.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom.json diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json new file mode 100644 index 0000000..55ca087 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json @@ -0,0 +1,79 @@ +{ + "binFileName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "binFileSuffix": ".o", + "blockDim": -1, + "coreType": "AiCore", + "globalworkspace_spec_workspace": { + "size": 32, + "type": 0 + }, + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "magic": "RT_DEV_BINARY_MAGIC_ELF", + "memoryStamping": [], + "opParaSize": 8, + "parameters": [], + "sha256": "39cce6693e65253a021a9fbf98e4ecd02845b19652815637d2795b411690f97d", + "workspace": { + "num": 1, + "size": [ + -1 + ], + "type": [ + 0 + ] + }, + "kernelList": [ + { + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_0" + } + ], + "optionalInputMode": "gen_placeholder", + "compileInfo": {}, + "supportInfo": { + "implMode": "", + "int64Mode": false, + "simplifiedKeyMode": 0, + "simplifiedKey": [ + "AddCustom/d=0,p=0/1,2/1,2/1,2", + "AddCustom/d=1,p=0/1,2/1,2/1,2" + ], + "staticKey": "24db4d78a3a31c0287aa11345320c199348443901fef8fe630f68f86fd5dc348", + "inputs": [ + { + "name": "x", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + }, + { + "name": "y", + "index": 1, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "outputs": [ + { + "name": "z", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "opMode": "dynamic", + "optionalInputMode": "gen_placeholder", + "deterministic": "ignore" + } +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o new file mode 100644 index 0000000000000000000000000000000000000000..9a7e8d3309128f47c11f9fc42f0d1cf7626a2c27 GIT binary patch literal 5200 zcmeHLZEO@p7=CwV*qu8{Z;PcAG`e77L_@PJt+e%P>hV#u!4ptXqi}6ctlE$C4r2X? zThvf3Dv602jS2e4ME_u-F_FZaD`{&rwTVc85N!zpY7Y6wKkBo0GhonYjQ>n0xBEQv z%=5mp^X}Z&KD)YY4YMpVjnOjqVvk7afz*8CcnMk~ahxUD6nW?1IBkY6!Ahqj7$mpU zkK$|`r*+@x24%^HIds#$yMD@bMsfePVLpcxa{?kJDCr!&Dlf3QAc&4eV)Q@@d-K+2 z$8EXEp_mQNQ;wi#oTY@AR$>-nhy>zS<*0f}k(cMv3%To!@M>?2)8rRIPJSue$x%@~ z`4w_Y#IM7gap}S9VSL}@Xbe71sS&|E+YKs^%iXKU&8sM9(8w67;tbv#GFoJVGsnfe zlZEGyk2!rOccC0{=lskaPLPT-ntngA`Q*!T&<|sKPGRiCsYJvB@Cf@fZq=C5s5JT- zJ&mqL(s&m0MR}$)PHN0++^2D`#ytid)XZf}Dq9XtaoTK4hx|}XP4AL{lFT|DBbqvu zU_X7DU?)FK>;zg<`xBO*kCC!n|IDZ$+jeGV);iX&=MrZNUx~r?k(kjKjXJGZxAoh( zL{SfH*F{|dLS1Os+5Ph_!BEG8g|(s;c>>>NgVPSV$a^ij*snhGHR>97=>9ThrQ(wA zFK1RC#a~=HPCpjr3cj{Ua%J~euRpcoMxYsQXZVp}{ z4+e+@m7zK@{f6Wz;=VhB;rXV~5!A zmlNc(gKT*F1kJ?}@U|SirI_@~q_=h4vI3G8<~dTZM5CMM0Uu{-Q=Wl~YmN^}rsAm2 zni$?YlH#rG^Q5Afm!~5I&W{yZgyrs(K{{`tFM|6RHm~5%+wY+s4E0Dl(q$55!$$Q~ z8P-HDYO_qhXY)pPj0a8FT!)H7!+!Eg*F{@f4i+3v zKE>btWo6<+=y%(t{f>Ai+V9a?qjgGwwYZds{G}QqO|xV*OOY0}iE_SOT&v(S9u@c4 z`KxSR=I4twtH4;L=2w6()Vvma5%|4`uf}ye2wVh=@|~C|%{|0IH4Q!ozD3X(a5*r# z?oB`ocz01R#U0Xda$cyu15dzzJ;vw3w;osyyc3uJM)Qmte>_y9;1d32&~1#j0v+Hw zpw#})wSP#4YCre_=&LYZ1^fh?WTEzbZ1UpzKLY2_Z-!3*ZvoEHz7LGg4%PeMF7zgh zUj}RjR%+i~?HigOs&~L+&>Jv57kC4(O#5CpzVcAL2EG`2Eyl0ZolCa^AIawWORR*{(%G5Zp3U`kZ>i1r^_h&{kZ!MUs_p1# zNN1WlR&+LWG-Wc4O$~ng7N53l$qr=i?d^Xo+n4UhY{+CY{W~(9kaMZ7zDz3D58B(e zaUh$^bZ^++lYDqvX+i(-9Mvy6>`U^T)_qe?Gkme4B?Uiji}BnT^m8NgoXOPJ3}2|L z7Ut=A|AL`J&gwkLOZ4bkqh_!Q{7-X0TY*1wQPXKk9h^;^5te}9uK%eu>i8%0h*_tZ kt6J;JfEU*Ohb;Sa{EdImB6{ikE1>;V{I5Db{SWcK1ANdTcK`qY literal 0 HcmV?d00001 diff --git a/Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/binary_info_config.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/binary_info_config.json similarity index 100% rename from Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p/binary_info_config.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/binary_info_config.json diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom-add_custom-0.sh b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom-add_custom-0.sh new file mode 100644 index 0000000..d024a80 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom-add_custom-0.sh @@ -0,0 +1,14 @@ +#!/bin/bash +echo "[Ascend310P3] Generating AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b ..." +opc $1 --main_func=add_custom --input_param=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json --soc_version=Ascend310P3 --output=$2 --impl_mode="" --simplified_key_mode=0 --op_mode=dynamic + +if ! test -f $2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json ; then + echo "$2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json not generated!" + exit 1 +fi + +if ! test -f $2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o ; then + echo "$2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o not generated!" + exit 1 +fi +echo "[Ascend310P3] Generating AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b Done" diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json new file mode 100644 index 0000000..834fc7a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json @@ -0,0 +1,42 @@ +{ + "op_type": "AddCustom", + "op_list": [ + { + "bin_filename": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "inputs": [ + { + "name": "x", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + }, + { + "name": "y", + "index": 1, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "outputs": [ + { + "name": "z", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/AddCustom.py similarity index 100% rename from Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic/add_custom.py rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/AddCustom.py diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/CMakeLists.txt new file mode 100644 index 0000000..0d31a44 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/CMakeLists.txt @@ -0,0 +1,61 @@ +# set custom compile options +if ("${CMAKE_BUILD_TYPE}x" STREQUAL "Debugx") + add_ops_compile_options(ALL OPTIONS -g -O0) +endif() + +foreach(compute_unit ${ASCEND_COMPUTE_UNIT}) + + # generate aic-${compute_unit}-ops-info.json + add_ops_info_target(TARGET ops_info_gen_${compute_unit} + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core/${compute_unit}/aic-${compute_unit}-ops-info.json + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/config/${compute_unit} + ) + + # generate ascendc impl py once + if (NOT TARGET ascendc_impl_gen) + add_ops_impl_target(TARGET ascendc_impl_gen + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl + ) + endif() + + # dynamic shape binary compile + if (${ENABLE_BINARY_PACKAGE}) + add_bin_compile_target(TARGET ascendc_bin_${compute_unit} + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + ADP_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/dynamic + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/binary/${compute_unit} + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/kernel + COMPUTE_UNIT ${compute_unit} + ) + add_dependencies(ascendc_bin_${compute_unit} ascendc_impl_gen) + endif() + +endforeach() + +# generate npu_supported_ops.json +add_npu_support_target(TARGET npu_supported_ops + OPS_INFO_DIR ${ASCEND_AUTOGEN_PATH} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core + INSTALL_DIR packages/vendors/${vendor_name}/framework/${ASCEND_FRAMEWORK_TYPE} +) + +if(ENABLE_TEST AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/testcases) + add_subdirectory(testcases) +endif() + +# install kernel file +if (${ENABLE_SOURCE_PACKAGE}) + file(GLOB KERNEL_FILES + ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/*.h + ${CMAKE_CURRENT_SOURCE_DIR}/*.py + ) + install(FILES ${KERNEL_FILES} + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl/dynamic + ) +endif() diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/__pycache__/AddCustom.cpython-39.pyc b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/src/__pycache__/AddCustom.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5056150b320cec2cf1cefc929c5e846db50b471f GIT binary patch literal 5347 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.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; } __aicore__ inline void Process() { AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); - - for (int32_t i = 0; i < 16; i++) { - AscendC::DataCopy(xLocal, xGm[i*2048], 2048); - } + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); inQueueX.FreeTensor(xLocal); - - } + private: AscendC::TPipe pipe; - AscendC::TQue inQueueX, inQueueY; - + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; AscendC::GlobalTensor xGm; }; diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/add_custom.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910/add_custom.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom.json diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json new file mode 100644 index 0000000..91c5b33 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json @@ -0,0 +1,79 @@ +{ + "binFileName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "binFileSuffix": ".o", + "blockDim": -1, + "coreType": "AiCore", + "globalworkspace_spec_workspace": { + "size": 32, + "type": 0 + }, + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "magic": "RT_DEV_BINARY_MAGIC_ELF", + "memoryStamping": [], + "opParaSize": 8, + "parameters": [], + "sha256": "f9de3677d8dca0c6ff359d18fe5140230cde447d0ecdbe9ca745daa539a1125a", + "workspace": { + "num": 1, + "size": [ + -1 + ], + "type": [ + 0 + ] + }, + "kernelList": [ + { + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_0" + } + ], + "optionalInputMode": "gen_placeholder", + "compileInfo": {}, + "supportInfo": { + "implMode": "", + "int64Mode": false, + "simplifiedKeyMode": 0, + "simplifiedKey": [ + "AddCustom/d=0,p=0/1,2/1,2/1,2", + "AddCustom/d=1,p=0/1,2/1,2/1,2" + ], + "staticKey": "24db4d78a3a31c0287aa11345320c199348443901fef8fe630f68f86fd5dc348", + "inputs": [ + { + "name": "x", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + }, + { + "name": "y", + "index": 1, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "outputs": [ + { + "name": "z", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "opMode": "dynamic", + "optionalInputMode": "gen_placeholder", + "deterministic": "ignore" + } +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o new file mode 100644 index 0000000000000000000000000000000000000000..dfeac69101b2809b93681033ed0d23f2c47ce29b GIT binary patch literal 2904 zcmbtWeQX@X6@NQ3cXM`}%i>HbH z1Pjqhto*z8=FRWTd-LARdLP@;b1SnfG7qD5_N5V#3MXEyGmNKTOB2JdqzGwl1UO`- z7s={LNS&=I9nDV);j`5^A&Z%-##47IzyYeTIth_HA z%o7RtMX}ZvSy~e%2b^T(J?>OaYd$B}7dB$(^}XK9)=thTFU^o+R8ll9snutjpjWHg z7Iaz}W$F2|qT9k8?4{3_p)9tvX{-FU+9zj%vqJlMp3St+K=8DvR^<|SF5FQrxU&kB#8N4&U9&OalZ`IBNT-~u#vQp5loNCFP97I1+ypnz_m7x*PG z01N|p;6cCxCV}UG7l9ez0B{I643vQrKn3_1m;=59E&%@q2sy+6TjPrL?Dqiv3$S zBYMx%u#*=PNph6;I?784)a-6qnn}=P!dEyLl4g!^%L9)R+;wKT_j-cStFsI`dQdOM zf;Aku@dLpQelY0gZwB}Bw}M~sJ;6PEBv{U4INUa^K>b%CW&%h8S7E#w(vcQhgIpVk z{&OD_Y?fg?L0|ov+3X*T-u(p=1Ha)8`;<+6JxeY-&zAgQmZp9`OJ3xzVvHIkol>mS z+DO)ZoZIIr)<_^l+9`97A7`qy%%BSom&%LoS8O0E_5_`Lcd(UP*e%s>W*tq6>hfh8 z2_ne3Q+UspE!HIT7zGjhl_q^b9qfUWKEvKR!3554$z?Pd^>N31u6b$uIM;J@-EmgM zeZpA#3mpsZ6!?nT{c;c(J{HDS3e~y&R(2q`gLkAr!TJY-pYytw6ZB@#hdOTKf}LTz zgWH6SzS8a<#GXXGPopLkw&aB~sL2OxN%jm)4V@wCIyK?iC%D&jimB}<7#Pe&mu%nx*CgPSoQ5!2@^ItKgA7T!ZR2cAi_cSg!?w3F>V(4!ay_V>49eTV3Jx`#|%h2bg)Fk6{o%{)1FR!Gvayk7} zuAraEmDDVgAdYUj~}(@UpV96UenHxd}uAqVSDPx-)j0Q=pE;4dP>_rv1kYUbGMeTYromhFTd1RA8EgjExJL^L*5A)|GP!o zw8U8RPZ@r_uin@Ezgo0T^C7!6Z`PvQw8U8RkA(aSF<<==`ZV^kSzu(BprxXcKtTkR6&I=6lfaqP}`f^H8&l<{{5^EyKFaguDxlzIqw@H1cZG>tOyS z%?oS&Tf>X{>IKb1T~nI(SuOwRa6XUxr;Kj!;j1T&9cw&p>ptj|oKyOa^o)$% zpPOiRdU`fHskUafxs6)fme%#|hV^b{drPVvf2j>OxaoG+b%yo~j_q>x<|Yaw<70+S zKlteH5WLYYa?JNeGc0R}U$o=xvG8ocueO`9k*`kA8t^fA>39qT#SmU5o6d@v_59_J@iVrop)fPJOdbmT2SS_P ppY}EVONRDqAun}3G(y7MPG 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.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/add_custom.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom.json diff --git a/Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json similarity index 71% rename from Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json index bf27024..765248d 100644 --- a/Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.json +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json @@ -1,16 +1,16 @@ { - "binFileName": "AddCustom_402e355eb717124771cfc7dbebfe946c", + "binFileName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", "binFileSuffix": ".o", "blockDim": -1, "coreType": "VectorCore", "core_type": "AIV", "intercoreSync": 0, - "kernelName": "AddCustom_402e355eb717124771cfc7dbebfe946c", + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", "magic": "RT_DEV_BINARY_MAGIC_ELF_AIVEC", "memoryStamping": [], - "opParaSize": 32, + "opParaSize": 8, "parameters": [], - "sha256": "d5eff7675d488902e38a90b5adc4e6c1cbddfaaa9d90c2771d3e39cbd7b4afd3", + "sha256": "b616b79a42bc3ebb64c3fe267842061da598091eb9c6b7a5fd421248d04d4b15", "workspace": { "num": 1, "size": [ @@ -22,7 +22,7 @@ }, "kernelList": [ { - "kernelName": "AddCustom_402e355eb717124771cfc7dbebfe946c_0" + "kernelName": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_0" } ], "optionalInputMode": "gen_placeholder", @@ -32,15 +32,15 @@ "int64Mode": false, "simplifiedKeyMode": 0, "simplifiedKey": [ - "AddCustom/d=0,p=0/3,2/3,2/3,2", - "AddCustom/d=1,p=0/3,2/3,2/3,2" + "AddCustom/d=0,p=0/1,2/1,2/1,2", + "AddCustom/d=1,p=0/1,2/1,2/1,2" ], - "staticKey": "75047c2edb77e42c0c726fa5413a1b9940aca6072fa87126160fc09d3d307b1a", + "staticKey": "24db4d78a3a31c0287aa11345320c199348443901fef8fe630f68f86fd5dc348", "inputs": [ { "name": "x", "index": 0, - "dtype": "int32", + "dtype": "float16", "format": "ND", "paramType": "required", "shape": [ @@ -50,7 +50,7 @@ { "name": "y", "index": 1, - "dtype": "int32", + "dtype": "float16", "format": "ND", "paramType": "required", "shape": [ @@ -62,7 +62,7 @@ { "name": "z", "index": 0, - "dtype": "int32", + "dtype": "float16", "format": "ND", "paramType": "required", "shape": [ diff --git a/Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.o b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o similarity index 30% rename from Increase_the_number_of_aicore/AddCustom/build_out/_CPack_Packages/Linux/External/custom_opp_hce_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b/add_custom/AddCustom_402e355eb717124771cfc7dbebfe946c.o rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o index 02d516253e86af9418f8401e765603bc9b10a3b2..4c6227ba198b86a9469791e329368a402ebad4cb 100644 GIT binary patch delta 1107 zcmah|PiS049RAI3#`osEZ1#=KV%JjTQ9Kx0;cc?3*`P4_LtF#m$|4j&vQ4_6IVC51 z5O%gr+Qd!UjeGJI>dm8}cq{UZOIX)*D^P;>Jtc# zRmJC{RiTb*5`O!{gXl+(;jUu{FCDE)`2FA*vopI+nfi*<7mvqS6Au1^WfA0BJV(1E zc1Pg;ZO`;-5)W>Bm#Mw=bIxPGe(qh0z7#bK9m>Fd+^r#QT-;KTzti0!dNhkwv+TGqY`S)Q>{`AXrvY)gKY?7;leJ=9EQglziViH+7 zAz@J=GvGQ?9T2#OFGYjGloW&NN}*OtK&=ExUM(vgN82ajN$_>!=!(3FlXL_jN`=y_ zD+IN}w^E_zW#r25@{Qid(mag_sV)*0jozl5FN61D^b99=+*~a>=Bx8gHhPO^q9IP_ zsAD4r(j@c*l@yhy2%oa60Haa{?i?kndGt@zSF+^&Mz1|gx#e^_w#$n*v zjEuplX}ohrS7BX;kcpn)*=S0b<&ZIdMG_X~J%OksU$bseDyx*rG^MhGeXU*T3yG9g zf}DZB!%ye4V0HaB?-A={4IVp4%O61~bBR;cNw9&=e>Nf<9+Eac8)RYM&A`a}yh zdUZ);iu0O;(yRj`GmcOXt@ME}9!|dJ;bJ3v>zX0g`Ek1xj%& z**ixw|ILdo+qlH|Ax^{a>`H701n>Lc{?+&OV{iL`Yg^lD@PO0rBsTw0?_=6(EBTxP;na_Py>PEoc@g5n+0lNnuMi>8p z&{iUQ;Y}OhGKb~?fj)Quo+Xvn4j?UEuTjEAiy`gIUP*NDDw(7ecv+fTa>vmrbUDygRn5l^;-E{-GC+Ry{M~XU^-S~yeKKiB0^1pKR%n{Ub5cSMa)X`Fsui^gFQP{t~44^TLY04I~ zMrhrN`+h?Sdi@wae4Y|8l@fEnS2Ou8nc8sJj!YdAE`Um-BHK+klRqR=iB3C`Btt!u zBH#hsFC4(VrZ%cUPWAAPQxb&o3>atdY6CPm^6v#{#U~GOXj-WXg^d=#8x4p#6qv$Fsl(rz?ILm|5q(3F*nV#P*TrC4yt6 z?(erjB7OR?(i75$khL=4T*pJ$U3CQ@T7ocsKnlEyY*9%P#%}g-Xf4G;VT;99lwv&i zooJ*8p}AK;?_t6AhCw!WijK#%`$|i%9W`=`cG=z%KrbxexiAVMY-&*$;Mr0%7)^xH z8oVQ*&0xGBSfT`E8{KQyZq-wSVdST@E4<`?1GLda2ssu!>!G<+C~T&nJnSrjbqmn{ z3)XFiJV(L~2N`B5kO4H{EFqzi8pC9^n`Hr7L&)Zb&^S%g<9-rQ*+2fdtCI^M46P1g zT)CDPl5B;8@IZ)wE+aH`id2`pSiP zr;trrFa^-DMZ04+Q$l(mKg;ivFt@{A88D&eX=I?CWOV9)*vWj=JKiN33tK(dNWJP< zOn$@4jUJM{qkYoFD`dRclCp<-*t0UD`y>NFB&aGtrM7@{4+-!!n<)8Q#ZAFK$1lw4=xcw86$7%EWP|S{%BCmnOz0^>q{UPOz^w$7P5G? zgypYd_alD+B zL#Z@%r&WOW0oU&iqxx(JNfwxiiP~Tr-%1?Ow_{X}G6}D5$MtUzKZpliYX%`z76q~q zGJ9QYp_&@P89R~%WCyuEXX-zQBvZRA5L*dvwZWqjuuSp`Km%42%p+&pgx)jASoSyt zHIIUb@=M++Rmg&Kk=DB?g`kFr)fHU-Hj0oVR-1Z`4IA08+BFU`UcY)Ic#Iwwl`yaa z*Z)xg+$=|X?X_a?sj_m|k_;*-nr{i2qo}7(N|8Ciw*-{}voT(n24~jUb&grTm;uO- za&1>3h>wtDu^|htadL^A%@XlDxc(DWBw}aqA*VATvM=*C;?6U{5)R9&koilfWYu`M zo7Ow z;>#J%W@7LHaZRr~gAdXAwBZl&g;pYQnuEwE>CeGZWCx!>SZ86yd;S4kPXprMPK5VE z_S&;OL!(eTZICMyV>RFXjxq0;9JAqSE6f@fnyDsUeqdo#G&i7&?fV(642 zozTZ-c|&^Q4e{f46cwEn^2&+R`s+J}JJnGX-DW zsSNRZ<5|Ze($1yT^nV4}L`be7`J6XrVou*D-ZSWx^gTKEQ@=L8diVWn*6dEy)zsCj yuC1%9Y1z|K_ua(q#Gc*jYS*^({h;)*#sAM}SA5s5K4yKbPu=4a@VUf2G5jZgodZDt diff --git a/Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/binary_info_config.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/binary_info_config.json similarity index 100% rename from Increase_double_bufer/Is_double_buffer/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b/binary_info_config.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/binary_info_config.json diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom-add_custom-0.sh b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom-add_custom-0.sh new file mode 100644 index 0000000..a89ba2a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom-add_custom-0.sh @@ -0,0 +1,14 @@ +#!/bin/bash +echo "[Ascend910B1] Generating AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b ..." +opc $1 --main_func=add_custom --input_param=/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json --soc_version=Ascend910B1 --output=$2 --impl_mode="" --simplified_key_mode=0 --op_mode=dynamic + +if ! test -f $2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json ; then + echo "$2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.json not generated!" + exit 1 +fi + +if ! test -f $2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o ; then + echo "$2/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b.o not generated!" + exit 1 +fi +echo "[Ascend910B1] Generating AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b Done" diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json new file mode 100644 index 0000000..834fc7a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/gen/AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b_param.json @@ -0,0 +1,42 @@ +{ + "op_type": "AddCustom", + "op_list": [ + { + "bin_filename": "AddCustom_1e04ee05ab491cc5ae9c3d5c9ee8950b", + "inputs": [ + { + "name": "x", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + }, + { + "name": "y", + "index": 1, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ], + "outputs": [ + { + "name": "z", + "index": 0, + "dtype": "float16", + "format": "ND", + "paramType": "required", + "shape": [ + -2 + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/AddCustom.py b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/AddCustom.py new file mode 100644 index 0000000..87d5aa0 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/AddCustom.py @@ -0,0 +1,152 @@ + +import os, sys +import ctypes +import json +import shutil +from tbe.common.platform import get_soc_spec +from tbe.common.utils import para_check +from tbe.tikcpp import compile_op, replay_op, check_op_cap, generalize_op_params, get_code_channel, OpInfo +from tbe.common.buildcfg import get_default_build_config +from impl.util.platform_adapter import tbe_register +from tbe.common.buildcfg import get_current_build_config +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + +DTYPE_MAP = {"float32": ["DT_FLOAT", "float"], + "float16": ["DT_FLOAT16", "half"], + "int8": ["DT_INT8", "int8_t"], + "int16": ["DT_INT16", "int16_t"], + "int32": ["DT_INT32", "int32_t"], + "int64": ["DT_INT64", "int64_t"], + "uint1": ["DT_UINT1", "uint8_t"], + "uint8": ["DT_UINT8", "uint8_t"], + "uint16": ["DT_UINT16", "uint16_t"], + "uint32": ["DT_UINT32", "uint32_t"], + "uint64": ["DT_UINT64", "uint64_t"], + "bool": ["DT_BOOL", "bool"], + "double": ["DT_DOUBLE", "double"], + "dual": ["DT_DUAL", "unknown"], + "dual_sub_int8": ["DT_DUAL_SUB_INT8", "unknown"], + "dual_sub_uint8": ["DT_DUAL_SUB_UINT8", "unknown"], + "string": ["DT_STRING", "unknown"], + "complex64": ["DT_COMPLEX64", "unknown"], + "complex128": ["DT_COMPLEX128", "unknown"], + "qint8": ["DT_QINT8", "unknown"], + "qint16": ["DT_QINT16", "unknown"], + "qint32": ["DT_QINT32", "unknown"], + "quint8": ["DT_QUINT8", "unknown"], + "quint16": ["DT_QUINT16", "unknown"], + "resource": ["DT_RESOURCE", "unknown"], + "string_ref": ["DT_STRING_REF", "unknown"], + "int4": ["DT_INT4", "int8_t"], + "bfloat16": ["DT_BF16", "bfloat16_t"]} + +def get_dtype_fmt_options(__inputs__, __outputs__): + options = [] + for x in __inputs__ + __outputs__: + x_n = x.get("param_name").upper() + x_fmt = x.get("format") + x_dtype = x.get("dtype") + options.append("-DDTYPE_{n}={t}".format(n=x_n, t=DTYPE_MAP.get(x_dtype)[1])) + options.append("-DORIG_DTYPE_{n}={ot}".format(n=x_n, ot=DTYPE_MAP.get(x_dtype)[0])) + options.append("-DFORMAT_{n}=FORMAT_{f}".format(n=x_n, f=x_fmt)) + return options + +def load_dso(so_path): + try: + ctypes.CDLL(so_path) + except OSError as error : + print(error) + raise RuntimeError("cannot open %s" %(so_path)) + else: + print("load so succ ", so_path) + +def get_shortsoc_compile_option(compile_option_list: list, shortsoc:str): + compile_options = [] + if shortsoc in compile_option_list: + compile_options = compile_option_list[shortsoc] + elif '__ALLSOC__' in compile_option_list: + compile_options = compile_option_list['__ALLSOC__'] + return compile_options + +def _build_args(x, y, z): + __inputs__ = [] + for arg in [x, y]: + if arg != None: + if isinstance(arg, (list, tuple)): + if len(arg) == 0: + continue + __inputs__.append(arg[0]) + else: + __inputs__.append(arg) + __outputs__ = [] + for arg in [z]: + if arg != None: + if isinstance(arg, (list, tuple)): + if len(arg) == 0: + continue + __outputs__.append(arg[0]) + else: + __outputs__.append(arg) + __attrs__ = [] + return __inputs__, __outputs__, __attrs__ + +@tbe_register.register_operator("AddCustom") +@para_check.check_op_params(para_check.REQUIRED_INPUT, para_check.REQUIRED_INPUT, para_check.REQUIRED_OUTPUT, para_check.KERNEL_NAME) +def add_custom(x, y, z, kernel_name="add_custom", impl_mode=""): + if get_current_build_config("enable_op_prebuild"): + return + __inputs__, __outputs__, __attrs__ = _build_args(x, y, z) + options = get_dtype_fmt_options(__inputs__, __outputs__) + options += ["-x", "cce"] + ccec = os.environ.get('CCEC_REAL_PATH') + if ccec is None: + ccec = shutil.which("ccec") + if ccec != None: + ccec_path = os.path.dirname(ccec) + tikcpp_path = os.path.realpath(os.path.join(ccec_path, "..", "..", "tikcpp")) + else: + tikcpp_path = os.path.realpath("/usr/local/Ascend/latest/compiler/tikcpp") + options.append("-I" + tikcpp_path) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "impl")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "interface")) + options.append("-I" + os.path.join(PYF_PATH, "..", "ascendc", "common")) + if impl_mode == "high_performance": + options.append("-DHIGH_PERFORMANCE=1") + elif impl_mode == "high_precision": + options.append("-DHIGH_PRECISION=1") + if get_default_build_config("enable_deterministic_mode") == 1: + options.append("-DDETEMINISTIC_MODE=1") + + custom_compile_options = {}, + custom_all_compile_options = {}, + soc_version = get_soc_spec("SOC_VERSION") + soc_short = get_soc_spec("SHORT_SOC_VERSION").lower() + custom_compile_options_soc = get_shortsoc_compile_option(custom_compile_options[0], soc_short) + custom_all_compile_options_soc = get_shortsoc_compile_option(custom_all_compile_options[0], soc_short) + options += custom_all_compile_options_soc + options += custom_compile_options_soc + + origin_func_name = "add_custom" + ascendc_src_dir = "add_custom" + ascendc_src_file = "add_custom.cpp" + src = os.path.join(PYF_PATH, "..", "ascendc", ascendc_src_dir, ascendc_src_file) + if not os.path.exists(src): + src = os.path.join(PYF_PATH, ascendc_src_file) + + print("start compile Ascend C operator AddCustom. kernel name is add_custom") + op_type = "AddCustom" + code_channel = get_code_channel(src, kernel_name, op_type, options) + op_info = OpInfo(kernel_name = kernel_name, op_type = op_type, inputs = __inputs__, outputs = __outputs__,\ + attrs = __attrs__, impl_mode = impl_mode, origin_inputs=[x, y], origin_outputs = [z]) + compile_op(src, origin_func_name, op_info, options, code_channel, '{}') + +def op_select_format(x, y, z, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args(x, y, z) + result = check_op_cap("op_select_format", "AddCustom", __inputs__, __outputs__, __attrs__) + return result.decode("utf-8") + +def get_op_specific_info(x, y, z, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args(x, y, z) + result = check_op_cap("get_op_specific_info", "AddCustom", __inputs__, __outputs__, __attrs__) + return result.decode("utf-8") diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt new file mode 100644 index 0000000..0d31a44 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/CMakeLists.txt @@ -0,0 +1,61 @@ +# set custom compile options +if ("${CMAKE_BUILD_TYPE}x" STREQUAL "Debugx") + add_ops_compile_options(ALL OPTIONS -g -O0) +endif() + +foreach(compute_unit ${ASCEND_COMPUTE_UNIT}) + + # generate aic-${compute_unit}-ops-info.json + add_ops_info_target(TARGET ops_info_gen_${compute_unit} + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core/${compute_unit}/aic-${compute_unit}-ops-info.json + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/config/${compute_unit} + ) + + # generate ascendc impl py once + if (NOT TARGET ascendc_impl_gen) + add_ops_impl_target(TARGET ascendc_impl_gen + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl + ) + endif() + + # dynamic shape binary compile + if (${ENABLE_BINARY_PACKAGE}) + add_bin_compile_target(TARGET ascendc_bin_${compute_unit} + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + ADP_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/dynamic + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/binary/${compute_unit} + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/kernel + COMPUTE_UNIT ${compute_unit} + ) + add_dependencies(ascendc_bin_${compute_unit} ascendc_impl_gen) + endif() + +endforeach() + +# generate npu_supported_ops.json +add_npu_support_target(TARGET npu_supported_ops + OPS_INFO_DIR ${ASCEND_AUTOGEN_PATH} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core + INSTALL_DIR packages/vendors/${vendor_name}/framework/${ASCEND_FRAMEWORK_TYPE} +) + +if(ENABLE_TEST AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/testcases) + add_subdirectory(testcases) +endif() + +# install kernel file +if (${ENABLE_SOURCE_PACKAGE}) + file(GLOB KERNEL_FILES + ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/*.h + ${CMAKE_CURRENT_SOURCE_DIR}/*.py + ) + install(FILES ${KERNEL_FILES} + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl/dynamic + ) +endif() diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/__pycache__/AddCustom.cpython-39.pyc b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/__pycache__/AddCustom.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9f4f63acc11af74abc8c52a10bff6472492cb648 GIT binary patch literal 5347 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 Q4i!vu(!@0?zmQ4(7qKhI1^@s6 literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/add_custom.cpp b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/add_custom.cpp new file mode 100644 index 0000000..6a148f9 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/src/add_custom.cpp @@ -0,0 +1,61 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2022-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "kernel_operator.h" +constexpr int32_t BUFFER_NUM = 2; // tensor num for each queue + +class KernelAdd { +public: + __aicore__ inline KernelAdd() {} + __aicore__ inline void Init(GM_ADDR x, GM_ADDR y, GM_ADDR z, uint32_t totalLength, uint32_t tileNum) + { + xGm.SetGlobalBuffer((__gm__ half *)x , 131072); + + pipe.InitBuffer(inQueueX, 1, 65536 * sizeof(half)); + pipe.InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/cmake_install.cmake b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/cmake_install.cmake new file mode 100644 index 0000000..3b5a8b5 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/cmake_install.cmake @@ -0,0 +1,120 @@ +# Install script for directory: /Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_kernel + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl" TYPE DIRECTORY FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/dynamic") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310p" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310p" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310p/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend310b" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend310b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend310b/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/ascend910b" TYPE DIRECTORY OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/add_custom.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/kernel/config/ascend910b" TYPE FILE OPTIONAL FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/binary/ascend910b/bin/binary_info_config.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/framework/tensorflow" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/packages/vendors/customize/op_impl/ai_core/tbe/customize_impl/dynamic" TYPE FILE FILES "/Test_performance/Operator-performance/Increase_Bedore_pipe/No_increase/op_kernel/add_custom.cpp") +endif() + diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/.impl_timestamp b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/.impl_timestamp new file mode 100644 index 0000000..e69de29 diff --git a/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/dynamic/add_custom.py b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/dynamic/add_custom.py new file mode 100644 index 0000000..87d5aa0 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/dynamic/add_custom.py @@ -0,0 +1,152 @@ + +import os, sys +import ctypes +import json +import shutil +from tbe.common.platform import get_soc_spec +from tbe.common.utils import para_check +from tbe.tikcpp import compile_op, replay_op, check_op_cap, generalize_op_params, get_code_channel, OpInfo +from tbe.common.buildcfg import get_default_build_config +from impl.util.platform_adapter import tbe_register +from tbe.common.buildcfg import get_current_build_config +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + +DTYPE_MAP = {"float32": ["DT_FLOAT", "float"], + "float16": ["DT_FLOAT16", "half"], + "int8": ["DT_INT8", "int8_t"], + "int16": ["DT_INT16", "int16_t"], + "int32": ["DT_INT32", "int32_t"], + "int64": ["DT_INT64", "int64_t"], + "uint1": ["DT_UINT1", "uint8_t"], + "uint8": ["DT_UINT8", "uint8_t"], + "uint16": ["DT_UINT16", "uint16_t"], + "uint32": ["DT_UINT32", "uint32_t"], + "uint64": ["DT_UINT64", "uint64_t"], + "bool": ["DT_BOOL", "bool"], + "double": ["DT_DOUBLE", "double"], + "dual": ["DT_DUAL", "unknown"], + "dual_sub_int8": ["DT_DUAL_SUB_INT8", "unknown"], + "dual_sub_uint8": ["DT_DUAL_SUB_UINT8", "unknown"], + "string": ["DT_STRING", "unknown"], + "complex64": ["DT_COMPLEX64", "unknown"], + "complex128": ["DT_COMPLEX128", "unknown"], + "qint8": ["DT_QINT8", "unknown"], + "qint16": ["DT_QINT16", "unknown"], + "qint32": ["DT_QINT32", "unknown"], + "quint8": ["DT_QUINT8", "unknown"], + "quint16": ["DT_QUINT16", "unknown"], + "resource": ["DT_RESOURCE", "unknown"], + "string_ref": ["DT_STRING_REF", "unknown"], + "int4": ["DT_INT4", "int8_t"], + "bfloat16": ["DT_BF16", "bfloat16_t"]} + +def get_dtype_fmt_options(__inputs__, __outputs__): + options = [] + for x in __inputs__ + __outputs__: + x_n = x.get("param_name").upper() + x_fmt = x.get("format") + x_dtype = x.get("dtype") + options.append("-DDTYPE_{n}={t}".format(n=x_n, t=DTYPE_MAP.get(x_dtype)[1])) + options.append("-DORIG_DTYPE_{n}={ot}".format(n=x_n, ot=DTYPE_MAP.get(x_dtype)[0])) + options.append("-DFORMAT_{n}=FORMAT_{f}".format(n=x_n, f=x_fmt)) + return options + +def load_dso(so_path): + try: + ctypes.CDLL(so_path) + except OSError as error : + print(error) + raise RuntimeError("cannot open %s" %(so_path)) + else: + print("load so succ ", so_path) + +def get_shortsoc_compile_option(compile_option_list: list, shortsoc:str): + compile_options = [] + if shortsoc in compile_option_list: + compile_options = compile_option_list[shortsoc] + elif '__ALLSOC__' in compile_option_list: + compile_options = compile_option_list['__ALLSOC__'] + return compile_options + +def _build_args(x, y, z): + __inputs__ = [] + for arg in [x, y]: + if arg != None: + if isinstance(arg, (list, tuple)): + if len(arg) == 0: + continue + __inputs__.append(arg[0]) + else: + __inputs__.append(arg) + __outputs__ = [] + for arg in [z]: + if arg != None: + if isinstance(arg, (list, tuple)): + if len(arg) == 0: + continue + __outputs__.append(arg[0]) + else: + __outputs__.append(arg) + __attrs__ = [] + return __inputs__, __outputs__, __attrs__ + +@tbe_register.register_operator("AddCustom") +@para_check.check_op_params(para_check.REQUIRED_INPUT, para_check.REQUIRED_INPUT, para_check.REQUIRED_OUTPUT, para_check.KERNEL_NAME) +def add_custom(x, y, z, kernel_name="add_custom", impl_mode=""): + if get_current_build_config("enable_op_prebuild"): + return + __inputs__, __outputs__, __attrs__ = _build_args(x, y, z) + options = get_dtype_fmt_options(__inputs__, __outputs__) + options += ["-x", "cce"] + ccec = os.environ.get('CCEC_REAL_PATH') + if ccec is None: + ccec = shutil.which("ccec") + if ccec != None: + ccec_path = os.path.dirname(ccec) + tikcpp_path = os.path.realpath(os.path.join(ccec_path, "..", "..", "tikcpp")) + else: + tikcpp_path = os.path.realpath("/usr/local/Ascend/latest/compiler/tikcpp") + options.append("-I" + tikcpp_path) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "impl")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "interface")) + options.append("-I" + os.path.join(PYF_PATH, "..", "ascendc", "common")) + if impl_mode == "high_performance": + options.append("-DHIGH_PERFORMANCE=1") + elif impl_mode == "high_precision": + options.append("-DHIGH_PRECISION=1") + if get_default_build_config("enable_deterministic_mode") == 1: + options.append("-DDETEMINISTIC_MODE=1") + + custom_compile_options = {}, + custom_all_compile_options = {}, + soc_version = get_soc_spec("SOC_VERSION") + soc_short = get_soc_spec("SHORT_SOC_VERSION").lower() + custom_compile_options_soc = get_shortsoc_compile_option(custom_compile_options[0], soc_short) + custom_all_compile_options_soc = get_shortsoc_compile_option(custom_all_compile_options[0], soc_short) + options += custom_all_compile_options_soc + options += custom_compile_options_soc + + origin_func_name = "add_custom" + ascendc_src_dir = "add_custom" + ascendc_src_file = "add_custom.cpp" + src = os.path.join(PYF_PATH, "..", "ascendc", ascendc_src_dir, ascendc_src_file) + if not os.path.exists(src): + src = os.path.join(PYF_PATH, ascendc_src_file) + + print("start compile Ascend C operator AddCustom. kernel name is add_custom") + op_type = "AddCustom" + code_channel = get_code_channel(src, kernel_name, op_type, options) + op_info = OpInfo(kernel_name = kernel_name, op_type = op_type, inputs = __inputs__, outputs = __outputs__,\ + attrs = __attrs__, impl_mode = impl_mode, origin_inputs=[x, y], origin_outputs = [z]) + compile_op(src, origin_func_name, op_info, options, code_channel, '{}') + +def op_select_format(x, y, z, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args(x, y, z) + result = check_op_cap("op_select_format", "AddCustom", __inputs__, __outputs__, __attrs__) + return result.decode("utf-8") + +def get_op_specific_info(x, y, z, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args(x, y, z) + result = check_op_cap("get_op_specific_info", "AddCustom", __inputs__, __outputs__, __attrs__) + return result.decode("utf-8") diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310b/aic-ascend310b-ops-info.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310b/aic-ascend310b-ops-info.json diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend310p/aic-ascend310p-ops-info.json diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910/aic-ascend910-ops-info.json diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/ascend910b/aic-ascend910b-ops-info.json diff --git a/Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json b/Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json similarity index 100% rename from Increase_DataCopy_case/No_Increase/build_out/_CPack_Packages/Linux/External/custom_opp_ubuntu_aarch64.run/packages/vendors/customize/framework/tensorflow/npu_supported_ops.json rename to Increase_Bedore_pipe/No_increase/build_out/op_kernel/tbe/op_info_cfg/ai_core/npu_supported_ops.json diff --git a/Increase_Bedore_pipe/No_increase/build_out/scripts/install.sh b/Increase_Bedore_pipe/No_increase/build_out/scripts/install.sh new file mode 100644 index 0000000..8468c5a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/scripts/install.sh @@ -0,0 +1,318 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +QUIET="y" + +while true +do + case $1 in + --quiet) + QUIET="y" + shift + ;; + --install-path=*) + INSTALL_PATH=$(echo $1 | cut -d"=" -f2-) + INSTALL_PATH=${INSTALL_PATH%*/} + shift + ;; + --*) + shift + ;; + *) + break + ;; + esac +done + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [ -n "${INSTALL_PATH}" ]; then + if [[ ! "${INSTALL_PATH}" = /* ]]; then + log "[ERROR] use absolute path for --install-path argument" + exit 1 + fi + if [ ! -d ${INSTALL_PATH} ]; then + mkdir ${INSTALL_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${INSTALL_PATH} failed" + exit 1 + fi + fi + targetdir=${INSTALL_PATH} +elif [ -n "${ASCEND_CUSTOM_OPP_PATH}" ]; then + if [ ! -d ${ASCEND_CUSTOM_OPP_PATH} ]; then + mkdir -p ${ASCEND_CUSTOM_OPP_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${ASCEND_CUSTOM_OPP_PATH} failed" + fi + fi + targetdir=${ASCEND_CUSTOM_OPP_PATH} +else + if [ "x${ASCEND_OPP_PATH}" == "x" ]; then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 + fi + targetdir="${ASCEND_OPP_PATH}" +fi + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + has_same_file=-1 + for file_a in ${sourcedir}/$vendordir/$1/*; do + file_b=${file_a##*/}; + if [ "ls ${targetdir}/$vendordir/$1" = "" ]; then + log "[INFO] ${targetdir}/$vendordir/$1 is empty !!" + return 1 + fi + grep -q $file_b <<<`ls ${targetdir}/$vendordir/$1`; + if [[ $? -eq 0 ]]; then + echo -n "${file_b} " + has_same_file=0 + fi + done + if [ 0 -eq $has_same_file ]; then + if test $QUIET = "n"; then + echo "[INFO]: has old version in ${targetdir}/$vendordir/$1, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + + while true + do + read orn + if [ "$orn" = n ]; then + return 0 + elif [ "$orn" = m ]; then + break; + elif [ "$0rn" = r ]; then + [ -n "${targetdir}/$vendordir/$1/" ] && rm -rf "${targetdir}/$vendordir/$1"/* + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace or merge old ops $1 files .g....." + fi + + log "copy new ops $1 files ......" + if [ -d ${targetdir}/$vendordir/$1/ ]; then + chmod -R +w "$targetdir/$vendordir/$1/" >/dev/null 2>&1 + fi + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} +upgrade_proto() +{ + if [ ! -f ${sourcedir}/$vendordir/custom.proto ]; then + log "[INFO] no need to upgrade custom.proto files" + return 0 + fi + if [ ! -d ${targetdir}/$vendordir/framework/caffe ];then + log "[INFO] create ${targetdir}/$vendordir/framework/caffe." + mkdir -p ${targetdir}/$vendordir/framework/caffe + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/framework/caffe failed" + return 1 + fi + else + if [ -f ${targetdir}/$vendordir/framework/caffe/custom.proto ]; then + # 有老版本,判断是否要覆盖式安装 + if test $QUIET = "n"; then + echo "[INFO] ${targetdir}/$vendordir/framework/caffe has old version"\ + "custom.proto file. Do you want to replace? [y/n] " + + while true + do + read yn + if [ "$yn" = n ]; then + return 0 + elif [ "$yn" = y ]; then + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace old caffe.proto files ......" + fi + chmod -R +w "$targetdir/$vendordir/framework/caffe/" >/dev/null 2>&1 + cp -rf ${sourcedir}/$vendordir/custom.proto ${targetdir}/$vendordir/framework/caffe/ + if [ $? -ne 0 ];then + log "[ERROR] copy new custom.proto failed" + return 1 + fi + log "[INFO] copy custom.proto success" + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +delete_optiling_file() +{ + if [ ! -d ${targetdir}/vendors ];then + log "[INFO] $1 not exist, no need to uninstall" + return 0 + fi + sys_info=$(uname -m) + if [ ! -d ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/lib/linux/${sys_info} ];then + rm -rf ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/liboptiling.so + fi + return 0 +} + +log "[INFO] copy uninstall sh success" + +if [ ! -d ${targetdir}/vendors ];then + log "[INFO] create ${targetdir}/vendors." + mkdir -p ${targetdir}/vendors + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/vendors failed" + return 1 + fi +fi +chmod u+w ${targetdir}/vendors + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +delete_optiling_file op_impl +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +upgrade_proto +if [ $? -ne 0 ];then + exit 1 +fi + +# set the set_env.bash +if [ -n "${INSTALL_PATH}" ] && [ -d ${INSTALL_PATH} ]; then + _ASCEND_CUSTOM_OPP_PATH=${targetdir}/${vendordir} + bin_path="${_ASCEND_CUSTOM_OPP_PATH}/bin" + set_env_variable="#!/bin/bash\nexport ASCEND_CUSTOM_OPP_PATH=${_ASCEND_CUSTOM_OPP_PATH}:\${ASCEND_CUSTOM_OPP_PATH}" + if [ ! -d ${bin_path} ]; then + mkdir -p ${bin_path} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${bin_path} failed" + exit 1 + fi + fi + echo -e ${set_env_variable} > ${bin_path}/set_env.bash + if [ $? -ne 0 ]; then + log "[ERROR] write ASCEND_CUSTOM_OPP_PATH to set_env.bash failed" + exit 1 + else + log "[INFO] using requirements: when custom module install finished or before you run the custom module, \ + execute the command [ source ${bin_path}/set_env.bash ] to set the environment path" + fi +else + config_file=${targetdir}/vendors/config.ini + if [ ! -f ${config_file} ]; then + touch ${config_file} + chmod 640 ${config_file} + echo "load_priority=$vendor_name" > ${config_file} + if [ $? -ne 0 ];then + echo "echo load_priority failed" + exit 1 + fi + else + found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" + found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') + vendor=$(echo $found_vendor | tr -s ' ' ',') + if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" + fi + fi +fi + +chmod u-w ${targetdir}/vendors + +if [ -d ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/ ]; then + chmod -R 440 ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/* >/dev/null 2>&1 +fi +if [ -f ${targetdir}/ascend_install.info ]; then + chmod -R 440 ${targetdir}/ascend_install.info +fi +if [ -f ${targetdir}/scene.info ]; then + chmod -R 440 ${targetdir}/scene.info +fi +if [ -f ${targetdir}/version.info ]; then + chmod -R 440 ${targetdir}/version.info +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/scripts/upgrade.sh b/Increase_Bedore_pipe/No_increase/build_out/scripts/upgrade.sh new file mode 100644 index 0000000..e091734 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/scripts/upgrade.sh @@ -0,0 +1,151 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [[ "x${ASCEND_OPP_PATH}" == "x" ]];then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 +fi + +targetdir=${ASCEND_OPP_PATH} + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + vendor_installed_dir=$(ls "$targetdir/vendors" 2> /dev/null) + for i in $vendor_installed_dir;do + vendor_installed_file=$(ls "$vendor_installed_dir/$vendor_name/$i" 2> /dev/null) + if [ "$i" = "$vendor_name" ] && [ "$vendor_installed_file" != "" ]; then + echo "[INFO]: $vendor_name custom opp package has been installed on the path $vendor_installed_dir, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + fi + while true + do + read mrn + if [ "$mrn" = m ]; then + break + elif [ "$mrn" = r ]; then + [ -n "$vendor_installed_file"] && rm -rf "$vendor_installed_file" + break + elif [ "$mrn" = n ]; then + return 0 + else + echo "[WARNING]: Input error, please input m or r or n to choose!" + fi + done + done + log "[INFO] replace old ops $1 files ......" + fi + + log "copy new ops $1 files ......" + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +log "[INFO] copy uninstall sh success" + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +config_file=${targetdir}/vendors/config.ini +found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" +found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') +vendor=$(echo $found_vendor | tr -s ' ' ',') +if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" +fi + +changemode() +{ + if [ -d ${targetdir} ];then + chmod -R 550 ${targetdir}>/dev/null 2>&1 + fi + + return 0 +} +echo "[ops_custom]changemode..." +#changemode +if [ $? -ne 0 ];then + exit 1 +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/No_increase/build_out/version.info b/Increase_Bedore_pipe/No_increase/build_out/version.info new file mode 100644 index 0000000..0ec7257 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/build_out/version.info @@ -0,0 +1 @@ +custom_opp_compiler_version=7.3.T10.0.B528 diff --git a/Increase_Bedore_pipe/No_increase/cmake/config.cmake b/Increase_Bedore_pipe/No_increase/cmake/config.cmake new file mode 100644 index 0000000..886119d --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/config.cmake @@ -0,0 +1,25 @@ + +set(CMAKE_CXX_FLAGS_DEBUG "") +set(CMAKE_CXX_FLAGS_RELEASE "") + +if (NOT DEFINED vendor_name) + set(vendor_name customize CACHE STRING "") +endif() +if (NOT DEFINED ASCEND_CANN_PACKAGE_PATH) + set(ASCEND_CANN_PACKAGE_PATH /usr/local/Ascend/latest CACHE PATH "") +endif() +if (NOT DEFINED ASCEND_PYTHON_EXECUTABLE) + set(ASCEND_PYTHON_EXECUTABLE python3 CACHE STRING "") +endif() +if (NOT DEFINED ASCEND_COMPUTE_UNIT) + message(FATAL_ERROR "ASCEND_COMPUTE_UNIT not set in CMakePreset.json ! +") +endif() +set(ASCEND_TENSOR_COMPILER_PATH ${ASCEND_CANN_PACKAGE_PATH}/compiler) +set(ASCEND_CCEC_COMPILER_PATH ${ASCEND_TENSOR_COMPILER_PATH}/ccec_compiler/bin) +set(ASCEND_AUTOGEN_PATH ${CMAKE_BINARY_DIR}/autogen) +set(ASCEND_FRAMEWORK_TYPE tensorflow) +file(MAKE_DIRECTORY ${ASCEND_AUTOGEN_PATH}) +set(CUSTOM_COMPILE_OPTIONS "custom_compile_options.ini") +execute_process(COMMAND rm -rf ${ASCEND_AUTOGEN_PATH}/${CUSTOM_COMPILE_OPTIONS} + COMMAND touch ${ASCEND_AUTOGEN_PATH}/${CUSTOM_COMPILE_OPTIONS}) diff --git a/Increase_Bedore_pipe/No_increase/cmake/func.cmake b/Increase_Bedore_pipe/No_increase/cmake/func.cmake new file mode 100644 index 0000000..ad187e7 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/func.cmake @@ -0,0 +1,228 @@ + +function(get_system_info SYSTEM_INFO) + if (UNIX) + execute_process(COMMAND grep -i ^id= /etc/os-release OUTPUT_VARIABLE TEMP) + string(REGEX REPLACE "\n|id=|ID=|\"" "" SYSTEM_NAME ${TEMP}) + set(${SYSTEM_INFO} ${SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR} PARENT_SCOPE) + elseif (WIN32) + message(STATUS "System is Windows. Only for pre-build.") + else () + message(FATAL_ERROR "${CMAKE_SYSTEM_NAME} not support.") + endif () +endfunction() + +function(opbuild) + message(STATUS "Opbuild generating sources") + cmake_parse_arguments(OPBUILD "" "OUT_DIR;PROJECT_NAME;ACCESS_PREFIX" "OPS_SRC" ${ARGN}) + execute_process(COMMAND ${CMAKE_COMPILE} -g -fPIC -shared -std=c++11 ${OPBUILD_OPS_SRC} -D_GLIBCXX_USE_CXX11_ABI=0 + -I ${ASCEND_CANN_PACKAGE_PATH}/include -L ${ASCEND_CANN_PACKAGE_PATH}/lib64 -lexe_graph -lregister -ltiling_api + -o ${OPBUILD_OUT_DIR}/libascend_all_ops.so + RESULT_VARIABLE EXEC_RESULT + OUTPUT_VARIABLE EXEC_INFO + ERROR_VARIABLE EXEC_ERROR + ) + if (${EXEC_RESULT}) + message("build ops lib info: ${EXEC_INFO}") + message("build ops lib error: ${EXEC_ERROR}") + message(FATAL_ERROR "opbuild run failed!") + endif() + set(proj_env "") + set(prefix_env "") + if (NOT "${OPBUILD_PROJECT_NAME}x" STREQUAL "x") + set(proj_env "OPS_PROJECT_NAME=${OPBUILD_PROJECT_NAME}") + endif() + if (NOT "${OPBUILD_ACCESS_PREFIX}x" STREQUAL "x") + set(prefix_env "OPS_DIRECT_ACCESS_PREFIX=${OPBUILD_ACCESS_PREFIX}") + endif() + execute_process(COMMAND ${proj_env} ${prefix_env} ${ASCEND_CANN_PACKAGE_PATH}/toolkit/tools/opbuild/op_build + ${OPBUILD_OUT_DIR}/libascend_all_ops.so ${OPBUILD_OUT_DIR} + RESULT_VARIABLE EXEC_RESULT + OUTPUT_VARIABLE EXEC_INFO + ERROR_VARIABLE EXEC_ERROR + ) + if (${EXEC_RESULT}) + message("opbuild ops info: ${EXEC_INFO}") + message("opbuild ops error: ${EXEC_ERROR}") + endif() + message(STATUS "Opbuild generating sources - done") +endfunction() + +function(add_ops_info_target) + cmake_parse_arguments(OPINFO "" "TARGET;OPS_INFO;OUTPUT;INSTALL_DIR" "" ${ARGN}) + get_filename_component(opinfo_file_path "${OPINFO_OUTPUT}" DIRECTORY) + add_custom_command(OUTPUT ${OPINFO_OUTPUT} + COMMAND mkdir -p ${opinfo_file_path} + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/parse_ini_to_json.py + ${OPINFO_OPS_INFO} ${OPINFO_OUTPUT} + ) + add_custom_target(${OPINFO_TARGET} ALL + DEPENDS ${OPINFO_OUTPUT} + ) + install(FILES ${OPINFO_OUTPUT} + DESTINATION ${OPINFO_INSTALL_DIR} + ) +endfunction() + +function(add_ops_compile_options OP_TYPE) + cmake_parse_arguments(OP_COMPILE "" "OP_TYPE" "COMPUTE_UNIT;OPTIONS" ${ARGN}) + file(APPEND ${ASCEND_AUTOGEN_PATH}/${CUSTOM_COMPILE_OPTIONS} + "${OP_TYPE},${OP_COMPILE_COMPUTE_UNIT},${OP_COMPILE_OPTIONS}\n") +endfunction() + +function(add_ops_impl_target) + cmake_parse_arguments(OPIMPL "" "TARGET;OPS_INFO;IMPL_DIR;OUT_DIR;INSTALL_DIR" "OPS_BATCH;OPS_ITERATE" ${ARGN}) + add_custom_command(OUTPUT ${OPIMPL_OUT_DIR}/.impl_timestamp + COMMAND mkdir -m 700 -p ${OPIMPL_OUT_DIR}/dynamic + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_impl_build.py + ${OPIMPL_OPS_INFO} + \"${OPIMPL_OPS_BATCH}\" \"${OPIMPL_OPS_ITERATE}\" + ${OPIMPL_IMPL_DIR} + ${OPIMPL_OUT_DIR}/dynamic + ${ASCEND_AUTOGEN_PATH} + + COMMAND rm -rf ${OPIMPL_OUT_DIR}/.impl_timestamp + COMMAND touch ${OPIMPL_OUT_DIR}/.impl_timestamp + DEPENDS ${OPIMPL_OPS_INFO} + ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_impl_build.py + ) + add_custom_target(${OPIMPL_TARGET} ALL + DEPENDS ${OPIMPL_OUT_DIR}/.impl_timestamp) + if (${ENABLE_SOURCE_PACKAGE}) + install(DIRECTORY ${OPIMPL_OUT_DIR}/dynamic + DESTINATION ${OPIMPL_INSTALL_DIR} + ) + endif() +endfunction() + +function(add_ops_replay_targets) + cmake_parse_arguments(OPREPLAY "" "OPS_INFO;COMPUTE_UNIT;IMPL_DIR;OUT_DIR;INSTALL_DIR" "OPS_BATCH;OPS_ITERATE" ${ARGN}) + # ccec compile options + set(ccec_base_opts -c -O2 --cce-aicore-only -mllvm -cce-aicore-function-stack-size=16000 + -mllvm -cce-aicore-record-overflow=false -std=c++17) + set(ccec_extopts_ascend310p --cce-aicore-arch=dav-m200 -mllvm -cce-aicore-fp-ceiling=2) + set(ccec_extopts_ascend910 --cce-aicore-arch=dav-c100) + set(ccec_extopts_ascend910b --cce-aicore-arch=dav-c220-cube) + file(MAKE_DIRECTORY ${OPREPLAY_OUT_DIR}) + execute_process(COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_replay_build.py + ${OPREPLAY_OPS_INFO} + "${OPREPLAY_OPS_BATCH}" "${OPREPLAY_OPS_ITERATE}" + ${OPREPLAY_IMPL_DIR} + ${OPREPLAY_OUT_DIR} + ${OPREPLAY_COMPUTE_UNIT} + ) + file(GLOB replay_kernel_entries ${OPREPLAY_OUT_DIR}/*.cce) + if (NOT "${replay_kernel_entries}x" STREQUAL "x") + foreach(replay_kernel_file ${replay_kernel_entries}) + get_filename_component(replay_kernel_file_name "${replay_kernel_file}" NAME) + string(REPLACE "_entry.cce" "" op_kerne_name ${replay_kernel_file_name}) + file(GLOB replay_lib_src ${OPREPLAY_OUT_DIR}/${op_kerne_name}*.cpp) + set(OP_TILING_DATA_H_PATH ${OPREPLAY_OUT_DIR}/${op_kerne_name}_tiling_data.h) + add_library(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} SHARED ${replay_lib_src}) + if(EXISTS ${OP_TILING_DATA_H_PATH}) + target_compile_options(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE + -include ${OP_TILING_DATA_H_PATH} + ) + endif() + target_compile_definitions(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE + ${op_kerne_name}=${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} + ) + target_compile_options(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE + -D__ASCENDC_REPLAY__ + ) + target_link_libraries(replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} PRIVATE intf_pub + tikreplaylib::${OPREPLAY_COMPUTE_UNIT} + register + ) + add_custom_command(OUTPUT ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + COMMAND ccec ${ccec_base_opts} ${ccec_extopts_${OPREPLAY_COMPUTE_UNIT}} ${replay_kernel_file} + -o ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + DEPENDS ${replay_kernel_file} + ) + add_custom_target(replay_kernel_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} ALL + DEPENDS ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + ) + install(TARGETS replay_${op_kerne_name}_${OPREPLAY_COMPUTE_UNIT} + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_replay + ) + install(FILES ${OPREPLAY_OUT_DIR}/${op_kerne_name}_entry_${OPREPLAY_COMPUTE_UNIT}.o + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_replay + ) + endforeach() + endif() +endfunction() + +function(add_npu_support_target) + cmake_parse_arguments(NPUSUP "" "TARGET;OPS_INFO_DIR;OUT_DIR;INSTALL_DIR" "" ${ARGN}) + get_filename_component(npu_sup_file_path "${NPUSUP_OUT_DIR}" DIRECTORY) + add_custom_command(OUTPUT ${NPUSUP_OUT_DIR}/npu_supported_ops.json + COMMAND mkdir -p ${NPUSUP_OUT_DIR} + COMMAND ${CMAKE_SOURCE_DIR}/cmake/util/gen_ops_filter.sh + ${NPUSUP_OPS_INFO_DIR} + ${NPUSUP_OUT_DIR} + ) + add_custom_target(npu_supported_ops ALL + DEPENDS ${NPUSUP_OUT_DIR}/npu_supported_ops.json + ) + install(FILES ${NPUSUP_OUT_DIR}/npu_supported_ops.json + DESTINATION ${NPUSUP_INSTALL_DIR} + ) +endfunction() + +function(add_bin_compile_target) + cmake_parse_arguments(BINCMP "" "TARGET;OPS_INFO;COMPUTE_UNIT;IMPL_DIR;ADP_DIR;OUT_DIR;INSTALL_DIR" "" ${ARGN}) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/src) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/bin) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/gen) + execute_process(COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_bin_param_build.py + ${BINCMP_OPS_INFO} ${BINCMP_OUT_DIR}/gen ${BINCMP_COMPUTE_UNIT} + RESULT_VARIABLE EXEC_RESULT + OUTPUT_VARIABLE EXEC_INFO + ERROR_VARIABLE EXEC_ERROR + ) + if (${EXEC_RESULT}) + message("ops binary compile scripts gen info: ${EXEC_INFO}") + message("ops binary compile scripts gen error: ${EXEC_ERROR}") + message(FATAL_ERROR "ops binary compile scripts gen failed!") + endif() + if (NOT TARGET binary) + add_custom_target(binary) + endif() + add_custom_target(${BINCMP_TARGET} + COMMAND cp -r ${BINCMP_IMPL_DIR}/*.* ${BINCMP_OUT_DIR}/src + ) + add_custom_target(${BINCMP_TARGET}_gen_ops_config + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/insert_simplified_keys.py -p ${BINCMP_OUT_DIR}/bin + COMMAND ${ASCEND_PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/util/ascendc_ops_config.py -p ${BINCMP_OUT_DIR}/bin + -s ${BINCMP_COMPUTE_UNIT} + ) + add_dependencies(binary ${BINCMP_TARGET}_gen_ops_config) + file(GLOB bin_scripts ${BINCMP_OUT_DIR}/gen/*.sh) + foreach(bin_script ${bin_scripts}) + get_filename_component(bin_file ${bin_script} NAME_WE) + string(REPLACE "-" ";" bin_sep ${bin_file}) + list(GET bin_sep 0 op_type) + list(GET bin_sep 1 op_file) + list(GET bin_sep 2 op_index) + if (NOT TARGET ${BINCMP_TARGET}_${op_file}_copy) + file(MAKE_DIRECTORY ${BINCMP_OUT_DIR}/bin/${op_file}) + add_custom_target(${BINCMP_TARGET}_${op_file}_copy + COMMAND cp ${BINCMP_ADP_DIR}/${op_file}.py ${BINCMP_OUT_DIR}/src/${op_type}.py + ) + install(DIRECTORY ${BINCMP_OUT_DIR}/bin/${op_file} + DESTINATION ${BINCMP_INSTALL_DIR}/${BINCMP_COMPUTE_UNIT} OPTIONAL + ) + install(FILES ${BINCMP_OUT_DIR}/bin/${op_file}.json + DESTINATION ${BINCMP_INSTALL_DIR}/config/${BINCMP_COMPUTE_UNIT}/ OPTIONAL + ) + endif() + add_custom_target(${BINCMP_TARGET}_${op_file}_${op_index} + COMMAND export HI_PYTHON=${ASCEND_PYTHON_EXECUTABLE} && bash ${bin_script} ${BINCMP_OUT_DIR}/src/${op_type}.py ${BINCMP_OUT_DIR}/bin/${op_file} + WORKING_DIRECTORY ${BINCMP_OUT_DIR} + ) + add_dependencies(${BINCMP_TARGET}_${op_file}_${op_index} ${BINCMP_TARGET} ${BINCMP_TARGET}_${op_file}_copy) + add_dependencies(${BINCMP_TARGET}_gen_ops_config ${BINCMP_TARGET}_${op_file}_${op_index}) + endforeach() + install(FILES ${BINCMP_OUT_DIR}/bin/binary_info_config.json + DESTINATION ${BINCMP_INSTALL_DIR}/config/${BINCMP_COMPUTE_UNIT} OPTIONAL + ) +endfunction() diff --git a/Increase_Bedore_pipe/No_increase/cmake/intf.cmake b/Increase_Bedore_pipe/No_increase/cmake/intf.cmake new file mode 100644 index 0000000..2f362c3 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/intf.cmake @@ -0,0 +1,26 @@ + +add_library(intf_pub INTERFACE) +target_compile_options(intf_pub INTERFACE + -fPIC + -fvisibility=hidden + -fvisibility-inlines-hidden + $<$:-O2> + $<$:-O0 -g> + $<$:-std=c++11> + $<$,$>:-ftrapv -fstack-check> + $<$:-pthread -Wfloat-equal -Wshadow -Wformat=2 -Wno-deprecated -Wextra> + $,-fstack-protector-strong,-fstack-protector-all> +) +target_compile_definitions(intf_pub INTERFACE + _GLIBCXX_USE_CXX11_ABI=0 + $<$:_FORTIFY_SOURCE=2> +) +target_include_directories(intf_pub INTERFACE ${ASCEND_CANN_PACKAGE_PATH}/include) +target_link_options(intf_pub INTERFACE + $<$,EXECUTABLE>:-pie> + $<$:-s> + -Wl,-z,relro + -Wl,-z,now + -Wl,-z,noexecstack +) +target_link_directories(intf_pub INTERFACE ${ASCEND_CANN_PACKAGE_PATH}/lib64) diff --git a/Increase_Bedore_pipe/No_increase/cmake/makeself.cmake b/Increase_Bedore_pipe/No_increase/cmake/makeself.cmake new file mode 100644 index 0000000..48c565b --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/makeself.cmake @@ -0,0 +1,17 @@ +execute_process(COMMAND chmod +x ${CMAKE_CURRENT_LIST_DIR}/util/makeself/makeself.sh) +execute_process(COMMAND ${CMAKE_CURRENT_LIST_DIR}/util/makeself/makeself.sh + --header ${CMAKE_CURRENT_LIST_DIR}/util/makeself/makeself-header.sh + --help-header ./help.info + --gzip --complevel 4 --nomd5 --sha256 + ./ ${CPACK_PACKAGE_FILE_NAME} "version:1.0" ./install.sh + WORKING_DIRECTORY ${CPACK_TEMPORARY_DIRECTORY} + RESULT_VARIABLE EXEC_RESULT + ERROR_VARIABLE EXEC_ERROR +) +if (NOT "${EXEC_RESULT}x" STREQUAL "0x") + message(FATAL_ERROR "CPack Command error: ${EXEC_RESULT}\n${EXEC_ERROR}") +endif() +execute_process(COMMAND cp ${CPACK_EXTERNAL_BUILT_PACKAGES} ${CPACK_PACKAGE_DIRECTORY}/ + COMMAND echo "Copy ${CPACK_EXTERNAL_BUILT_PACKAGES} to ${CPACK_PACKAGE_DIRECTORY}/" + WORKING_DIRECTORY ${CPACK_TEMPORARY_DIRECTORY} +) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/__init__.py b/Increase_Bedore_pipe/No_increase/cmake/util/__init__.py new file mode 100644 index 0000000..c4ddc89 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/__init__.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import sys +import os + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(PYF_PATH) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/__pycache__/const_var.cpython-39.pyc b/Increase_Bedore_pipe/No_increase/cmake/util/__pycache__/const_var.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f2904a2a05c487d500bd1b9f441819133686750b GIT binary patch literal 1120 zcmY+C-EP}96vri7v1Hj!+Z56oo73KEso zHTnj7guXzZV#6Lox4YUa?4~=CV=SY90kkk=rt7U62zWV*A#UE8o`>PO-M;*j# znCW{kOv4(}StZo5UcM{1!m7B+3~aDHyvJ&|#!PH-{jCMF-q*m|eGNBw}XGtk@}X z!Vq~yQHngC^5mW~^yg=E);a6gf5XPw1n=Ea6)dqS6i=w)*b=KaBupf^DKk|7ZqiIi za>t`mHJmiy5qs6`T))EqiGCN`+sHTFj zR>~09Ly;;{qE#YfV7sI;4Yx|(g^r)+CLs)(LGp@Bb0bw$;ifmZ9y@PH-|^i`y#Js^ z{=jqm0dBg(3o^R89+UHthZ}{O&izs}ow+|H7lTQma%)O%yy;~8CO4{ zk@LZj{OpWBYsm}fO=ky3W6$`oIG}pq9EZk<)qJ)iStE=Cse9}L(tJp^NzmTpxIefJ#b&4RzwDn`Yq I*}C=RUzgfd%K!iX literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc b/Increase_Bedore_pipe/No_increase/cmake/util/__pycache__/opdesc_parser.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1952c0b2a11660316e5ffd77bfcb38ff5072b1c4 GIT binary patch literal 8220 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 We52nil?&xkquhK^`4G9yhkpeDceu#_ literal 0 HcmV?d00001 diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_bin_param_build.py b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_bin_param_build.py new file mode 100644 index 0000000..decf345 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_bin_param_build.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import json +import hashlib +import const_var +import opdesc_parser + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + + +class BinParamBuilder(opdesc_parser.OpDesc): + def __init__(self: any, op_type: str): + super().__init__(op_type) + self.soc = '' + self.out_path = '' + + def set_soc_version(self: any, soc: str): + self.soc = soc + + def set_out_path(self: any, out_path: str): + self.out_path = out_path + + def gen_input_json(self: any): + key_map = {} + count = len(self.input_dtype[0].split(',')) + for i in range(0, count): + inputs = [] + outputs = [] + attrs = [] + op_node = {} + for idx in range(0, len(self.input_name)): + idtypes = self.input_dtype[idx].split(',') + ifmts = self.input_fmt[idx].split(',') + itype = self.input_type[idx] + para = {} + para['name'] = self.input_name[idx] + para['index'] = idx + para['dtype'] = idtypes[i] + para['format'] = ifmts[i] + para['paramType'] = itype + para['shape'] = [-2] + if itype == 'dynamic': + inputs.append([para]) + else: + inputs.append(para) + for idx in range(0, len(self.output_name)): + odtypes = self.output_dtype[idx].split(',') + ofmts = self.output_fmt[idx].split(',') + otype = self.output_type[idx] + para = {} + para['name'] = self.output_name[idx] + para['index'] = idx + para['dtype'] = odtypes[i] + para['format'] = ofmts[i] + para['paramType'] = otype + para['shape'] = [-2] + if otype == 'dynamic': + outputs.append([para]) + else: + outputs.append(para) + for attr in self.attr_list: + att = {} + att['name'] = attr + atype = self.attr_val.get(attr).get('type').lower() + atype = atype.replace('list', 'list_') + att['dtype'] = atype + att['value'] = const_var.ATTR_DEF_VAL.get(atype) + attrs.append(att) + op_node['bin_filename'] = '' + op_node['inputs'] = inputs + op_node['outputs'] = outputs + if len(attrs) > 0: + op_node['attrs'] = attrs + param = {} + param['op_type'] = self.op_type + param['op_list'] = [op_node] + objstr = json.dumps(param, indent=' ') + md5sum = hashlib.md5(objstr.encode('utf-8')).hexdigest() + while key_map.get(md5sum) is not None: + objstr += '1' + md5sum = hashlib.md5(objstr.encode('utf-8')).hexdigest() + key_map[md5sum] = md5sum + bin_file = self.op_type + '_' + md5sum + op_node['bin_filename'] = bin_file + param_file = os.path.join(self.out_path, bin_file + '_param.json') + param_file = os.path.realpath(param_file) + with os.fdopen(os.open(param_file, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + json.dump(param, fd, indent=' ') + self._write_buld_cmd(param_file, bin_file, i) + + + def _write_buld_cmd(self: any, param_file: str, bin_file: str, index: int): + hard_soc = const_var.SOC_MAP_EXT.get(self.soc) + if not hard_soc: + hard_soc = soc.capitalize() + name_com = [self.op_type, self.op_file, str(index)] + compile_file = os.path.join(self.out_path, '-'.join(name_com) + '.sh') + compile_file = os.path.realpath(compile_file) + with os.fdopen(os.open(compile_file, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + fd.write('#!/bin/bash\n') + fd.write('echo "[{}] Generating {} ..."\n'.format(hard_soc, bin_file)) + cmd = const_var.BIN_CMD.format(fun=self.op_intf, soc=hard_soc, param=param_file, impl='""') + fd.write(cmd) + chk = const_var.CHK_CMD.format(res_file=bin_file + '.json') + fd.write(chk) + chk = const_var.CHK_CMD.format(res_file=bin_file + '.o') + fd.write(chk) + fd.write('echo "[{}] Generating {} Done"\n'.format(hard_soc, bin_file)) + + +def gen_bin_param_file(cfgfile: str, out_dir: str, soc: str): + op_descs = opdesc_parser.get_op_desc(cfgfile, [], [], BinParamBuilder, None) + for op_desc in op_descs: + op_desc.set_soc_version(soc) + op_desc.set_out_path(out_dir) + op_desc.gen_input_json() + + +if __name__ == '__main__': + if len(sys.argv) <= 3: + raise RuntimeError('arguments must greater than 3') + gen_bin_param_file(sys.argv[1], sys.argv[2], sys.argv[3]) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_impl_build.py b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_impl_build.py new file mode 100644 index 0000000..7fe177d --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_impl_build.py @@ -0,0 +1,446 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import re +import stat +import opdesc_parser +import const_var + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + +IMPL_HEAD = ''' +import os, sys +import ctypes +import json +import shutil +from tbe.common.platform import get_soc_spec +from tbe.common.utils import para_check +from tbe.tikcpp import compile_op, replay_op, check_op_cap, generalize_op_params, get_code_channel, OpInfo +from tbe.common.buildcfg import get_default_build_config +from impl.util.platform_adapter import tbe_register +from tbe.common.buildcfg import get_current_build_config +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + +DTYPE_MAP = {"float32": ["DT_FLOAT", "float"], + "float16": ["DT_FLOAT16", "half"], + "int8": ["DT_INT8", "int8_t"], + "int16": ["DT_INT16", "int16_t"], + "int32": ["DT_INT32", "int32_t"], + "int64": ["DT_INT64", "int64_t"], + "uint1": ["DT_UINT1", "uint8_t"], + "uint8": ["DT_UINT8", "uint8_t"], + "uint16": ["DT_UINT16", "uint16_t"], + "uint32": ["DT_UINT32", "uint32_t"], + "uint64": ["DT_UINT64", "uint64_t"], + "bool": ["DT_BOOL", "bool"], + "double": ["DT_DOUBLE", "double"], + "dual": ["DT_DUAL", "unknown"], + "dual_sub_int8": ["DT_DUAL_SUB_INT8", "unknown"], + "dual_sub_uint8": ["DT_DUAL_SUB_UINT8", "unknown"], + "string": ["DT_STRING", "unknown"], + "complex64": ["DT_COMPLEX64", "unknown"], + "complex128": ["DT_COMPLEX128", "unknown"], + "qint8": ["DT_QINT8", "unknown"], + "qint16": ["DT_QINT16", "unknown"], + "qint32": ["DT_QINT32", "unknown"], + "quint8": ["DT_QUINT8", "unknown"], + "quint16": ["DT_QUINT16", "unknown"], + "resource": ["DT_RESOURCE", "unknown"], + "string_ref": ["DT_STRING_REF", "unknown"], + "int4": ["DT_INT4", "int8_t"], + "bfloat16": ["DT_BF16", "bfloat16_t"]} + +def get_dtype_fmt_options(__inputs__, __outputs__): + options = [] + for x in __inputs__ + __outputs__: + x_n = x.get("param_name").upper() + x_fmt = x.get("format") + x_dtype = x.get("dtype") + options.append("-DDTYPE_{n}={t}".format(n=x_n, t=DTYPE_MAP.get(x_dtype)[1])) + options.append("-DORIG_DTYPE_{n}={ot}".format(n=x_n, ot=DTYPE_MAP.get(x_dtype)[0])) + options.append("-DFORMAT_{n}=FORMAT_{f}".format(n=x_n, f=x_fmt)) + return options + +def load_dso(so_path): + try: + ctypes.CDLL(so_path) + except OSError as error : + print(error) + raise RuntimeError("cannot open %s" %(so_path)) + else: + print("load so succ ", so_path) + +def get_shortsoc_compile_option(compile_option_list: list, shortsoc:str): + compile_options = [] + if shortsoc in compile_option_list: + compile_options = compile_option_list[shortsoc] + elif '__ALLSOC__' in compile_option_list: + compile_options = compile_option_list['__ALLSOC__'] + return compile_options + +''' + +IMPL_API = ''' +@tbe_register.register_operator("{}") +@para_check.check_op_params({}) +def {}({}, kernel_name="{}", impl_mode=""): + if get_current_build_config("enable_op_prebuild"): + return + __inputs__, __outputs__, __attrs__ = _build_args({}) + options = get_dtype_fmt_options(__inputs__, __outputs__) + options += ["-x", "cce"] + ccec = os.environ.get('CCEC_REAL_PATH') + if ccec is None: + ccec = shutil.which("ccec") + if ccec != None: + ccec_path = os.path.dirname(ccec) + tikcpp_path = os.path.realpath(os.path.join(ccec_path, "..", "..", "tikcpp")) + else: + tikcpp_path = os.path.realpath("/usr/local/Ascend/latest/compiler/tikcpp") + options.append("-I" + tikcpp_path) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "impl")) + options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "interface")) + options.append("-I" + os.path.join(PYF_PATH, "..", "ascendc", "common")) + if impl_mode == "high_performance": + options.append("-DHIGH_PERFORMANCE=1") + elif impl_mode == "high_precision": + options.append("-DHIGH_PRECISION=1") + if get_default_build_config("enable_deterministic_mode") == 1: + options.append("-DDETEMINISTIC_MODE=1") + + custom_compile_options = {}, + custom_all_compile_options = {}, + soc_version = get_soc_spec("SOC_VERSION") + soc_short = get_soc_spec("SHORT_SOC_VERSION").lower() + custom_compile_options_soc = get_shortsoc_compile_option(custom_compile_options[0], soc_short) + custom_all_compile_options_soc = get_shortsoc_compile_option(custom_all_compile_options[0], soc_short) + options += custom_all_compile_options_soc + options += custom_compile_options_soc + + origin_func_name = "{}" + ascendc_src_dir = "{}" + ascendc_src_file = "{}" + src = os.path.join(PYF_PATH, "..", "ascendc", ascendc_src_dir, ascendc_src_file) + if not os.path.exists(src): + src = os.path.join(PYF_PATH, ascendc_src_file) +''' + +REPLAY_OP_API = ''' + print("start replay Acend C Operator {}, kernel name is {}") + tikreplay_codegen_path = tikcpp_path + "/tikreplaylib/lib" + tikreplay_stub_path = tikcpp_path + "/tikreplaylib/lib/" + soc_version + print("start load libtikreplaylib_codegen.so and libtikreplaylib_stub.so") + codegen_so_path = tikreplay_codegen_path + "/libtikreplaylib_codegen.so" + replaystub_so_path = tikreplay_stub_path + "/libtikreplaylib_stub.so" + if PYF_PATH.endswith("dynamic"): + op_replay_path = os.path.join(PYF_PATH, "..", "..", "op_replay") + else: + op_replay_path = os.path.join(PYF_PATH, "..", "op_replay") + replayapi_so_path = os.path.join(op_replay_path, "libreplay_{}_" + soc_short + ".so") + load_dso(codegen_so_path) + load_dso(replaystub_so_path) + load_dso(replayapi_so_path) + op_type = "{}" + entry_obj = os.path.join(op_replay_path, "{}_entry_" + soc_short + ".o") + code_channel = get_code_channel(src, kernel_name, op_type, options) + op_info = OpInfo(kernel_name = kernel_name, op_type = op_type, inputs = __inputs__, outputs = __outputs__,\\ + attrs = __attrs__, impl_mode = impl_mode) + res, msg = replay_op(op_info, entry_obj, code_channel, src, options) + if not res: + print("call replay op failed for %s and get into call compile op" %(msg)) + compile_op(src, origin_func_name, op_info, options, code_channel, '{}') +''' + +COMPILE_OP_API = ''' + print("start compile Ascend C operator {}. kernel name is {}") + op_type = "{}" + code_channel = get_code_channel(src, kernel_name, op_type, options) + op_info = OpInfo(kernel_name = kernel_name, op_type = op_type, inputs = __inputs__, outputs = __outputs__,\\ + attrs = __attrs__, impl_mode = impl_mode, origin_inputs=[{}], origin_outputs = [{}]) + compile_op(src, origin_func_name, op_info, options, code_channel, '{}') +''' + +SUP_API = ''' +def {}({}, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args({}) + ret_str = check_op_cap("{}", "{}", __inputs__, __outputs__, __attrs__) + ret_dict = json.loads(ret_str) + err_code = ret_dict.get("ret_code") + sup = "Unknown" + reason = "Unknown reason" + if err_code is not None: + if err_code is 0: + sup = "True" + reason = "" + elif err_code is 1: + sup = "False" + reason = ret_dict.get("reason") + else: + sup = "Unknown" + reason = ret_dict.get("reason") + return sup, reason +''' +CAP_API = ''' +def {}({}, impl_mode=""): + __inputs__, __outputs__, __attrs__ = _build_args({}) + result = check_op_cap("{}", "{}", __inputs__, __outputs__, __attrs__) + return result.decode("utf-8") +''' +GLZ_API = ''' +@tbe_register.register_param_generalization("{}") +def {}_generalization({}, generalize_config=None): + __inputs__, __outputs__, __attrs__ = _build_args({}) + ret_str = generalize_op_params("{}", __inputs__, __outputs__, __attrs__, generalize_config) + return [json.loads(ret_str)] +''' + +ATTR_DEFAULT = {'bool': 'False', 'int': '0', 'float': '0.0', 'listInt': '[]', + 'listFloat': '[]', 'listBool': '[]', 'listListInt': '[[]]', 'str': ''} + + +def optype_snake(origin_str): + temp_str = origin_str[0].lower() + origin_str[1:] + new_str = re.sub(r'([A-Z])', r'_\1', temp_str).lower() + return new_str + + +class AdpBuilder(opdesc_parser.OpDesc): + def __init__(self: any, op_type: str): + self.argsname = [] + self.argsdefv = [] + self.op_compile_option:str = '{}' + super().__init__(op_type) + + + def write_adapt(self: any, impl_path, path: str, op_compile_option_all:list = None): + self._build_paradefault() + if impl_path != "": + src_file = os.path.join(impl_path, self.op_file + '.cpp') + if not os.path.exists(src_file): + return + out_path = os.path.abspath(path) + if self.dynamic_shape and not out_path.endswith('dynamic'): + out_path = os.path.join(path, 'dynamic') + os.makedirs(out_path, mode=0o700, exist_ok=True) + adpfile = os.path.join(out_path, self.op_file + '.py') + self._gen_op_compile_option(op_compile_option_all) + with os.fdopen(os.open(adpfile, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + self._write_head(fd) + self._write_argparse(fd) + self._write_impl(fd) + if self.op_chk_support: + self._write_cap('check_supported', fd) + self._write_cap('get_op_support_info', fd) + if self.op_fmt_sel: + self._write_cap('op_select_format', fd) + self._write_cap('get_op_specific_info', fd) + if self.op_range_limit == 'limited' or self.op_range_limit == 'dynamic': + self._write_glz(fd) + + + def _gen_op_compile_option(self:any, op_compile_option_all:list =None): + if op_compile_option_all is not None: + if self.op_type in op_compile_option_all: + self.op_compile_option = op_compile_option_all[self.op_type] + elif "__all__" in op_compile_option_all: + self.op_compile_option = op_compile_option_all["__all__"] + + + def _ip_argpack(self: any, default: bool = True) -> list: + args = [] + for i in range(len(self.input_name)): + arg = self.input_name[i] + if default and self.argsdefv[i] is not None: + arg += '=' + self.argsdefv[i] + args.append(arg) + return args + + def _op_argpack(self: any, default: bool = True) -> list: + args = [] + argidx = len(self.input_name) + for i in range(len(self.output_name)): + arg = self.output_name[i] + if default and self.argsdefv[i + argidx] is not None: + arg += '=' + self.argsdefv[i + argidx] + args.append(arg) + return args + + def _attr_argpack(self: any, default: bool = True) -> list: + args = [] + argidx = len(self.input_name) + len(self.output_name) + for i in range(len(self.attr_list)): + att = self.attr_list[i] + arg = att + if default and self.argsdefv[i + argidx] is not None: + if self.attr_val.get(att).get('type') == 'str': + arg += '="' + self.argsdefv[i + argidx] + '"' + elif self.attr_val.get(att).get('type') == 'bool': + arg += '=' + self.argsdefv[i + argidx].capitalize() + else: + arg += '=' + self.argsdefv[i + argidx] + args.append(arg) + return args + + def _build_paralist(self: any, default: bool = True) -> str: + args = [] + args.extend(self._ip_argpack(default)) + args.extend(self._op_argpack(default)) + args.extend(self._attr_argpack(default)) + return ', '.join(args) + + def _io_parachk(self: any, types: list, type_name: str) -> list: + chk = [] + for iot in types: + if iot == 'optional': + ptype = 'OPTION' + else: + ptype = iot.upper() + chk.append('para_check.{}_{}'.format(ptype, type_name)) + return chk + + def _attr_parachk(self: any) -> list: + chk = [] + for att in self.attr_list: + if self.attr_val.get(att).get('paramType') == 'optional': + pt = 'OPTION' + else: + pt = self.attr_val.get(att).get('paramType').upper() + att_type = self.attr_val.get(att).get('type').upper() + att_type = att_type.replace('LIST', 'LIST_') + chk.append('para_check.{}_ATTR_{}'.format(pt, att_type)) + return chk + + def _build_parachk(self: any) -> str: + chk = [] + chk.extend(self._io_parachk(self.input_type, 'INPUT')) + chk.extend(self._io_parachk(self.output_type, 'OUTPUT')) + chk.extend(self._attr_parachk()) + chk.append('para_check.KERNEL_NAME') + return ', '.join(chk) + + def _build_paradefault(self: any): + optional = False + argtypes = [] + argtypes.extend(self.input_type) + argtypes.extend(self.output_type) + for atype in argtypes: + if atype == 'optional': + optional = True + if optional: + self.argsdefv.append('None') + else: + self.argsdefv.append(None) + for attr in self.attr_list: + atype = self.attr_val.get(attr).get('paramType') + if atype == 'optional': + optional = True + attrval = self.attr_val.get(attr).get('defaultValue') + if attrval is not None: + optional = True + if type == "bool": + attrval = attrval.capitalize() + elif type == "str": + attrval = "\"" + attrval + "\"" + self.argsdefv.append(attrval) + continue + if optional: + self.argsdefv.append(ATTR_DEFAULT.get(self.attr_val.get(attr).get('type'))) + else: + self.argsdefv.append(None) + + def _write_head(self: any, fd: object): + fd.write(IMPL_HEAD) + + def _write_argparse(self: any, fd: object): + args = self._build_paralist(False) + fd.write('def _build_args({}):\n'.format(args)) + fd.write(' __inputs__ = []\n') + fd.write(' for arg in [{}]:\n'.format(', '.join(self.input_name))) + fd.write(' if arg != None:\n') + fd.write(' if isinstance(arg, (list, tuple)):\n') + fd.write(' if len(arg) == 0:\n') + fd.write(' continue\n') + fd.write(' __inputs__.append(arg[0])\n') + fd.write(' else:\n') + fd.write(' __inputs__.append(arg)\n') + fd.write(' __outputs__ = []\n') + fd.write(' for arg in [{}]:\n'.format(', '.join(self.output_name))) + fd.write(' if arg != None:\n') + fd.write(' if isinstance(arg, (list, tuple)):\n') + fd.write(' if len(arg) == 0:\n') + fd.write(' continue\n') + fd.write(' __outputs__.append(arg[0])\n') + fd.write(' else:\n') + fd.write(' __outputs__.append(arg)\n') + fd.write(' __attrs__ = []\n') + for attr in self.attr_list: + fd.write(' if {} != None:\n'.format(attr)) + fd.write(' attr = {}\n') + fd.write(' attr["name"] = "{}"\n'.format(attr)) + fd.write(' attr["dtype"] = "{}"\n'.format(self.attr_val.get(attr).get('type'))) + fd.write(' attr["value"] = {}\n'.format(attr)) + fd.write(' __attrs__.append(attr)\n') + fd.write(' return __inputs__, __outputs__, __attrs__\n') + + def _write_impl(self: any, fd: object): + argsdef = self._build_paralist() + argsval = self._build_paralist(False) + pchk = self._build_parachk() + if len(self.kern_name) > 0: + kern_name = self.kern_name + else: + kern_name = self.op_intf + src = self.op_file + '.cpp' + fd.write(IMPL_API.format(self.op_type, pchk, self.op_intf, argsdef, kern_name, argsval,\ + self.custom_compile_options, self.custom_all_compile_options, self.op_intf,\ + optype_snake(self.op_type), src)) + if self.op_replay_flag: + fd.write(REPLAY_OP_API.format(self.op_type, kern_name, self.op_file, self.op_type, self.op_file,\ + self.op_compile_option)) + else: + fd.write(COMPILE_OP_API.format(self.op_type, kern_name, self.op_type, ', '.join(self.input_name),\ + ', '.join(self.output_name), self.op_compile_option)) + + def _write_cap(self: any, cap_name: str, fd: object): + argsdef = self._build_paralist() + argsval = self._build_paralist(False) + if cap_name == 'check_supported': + fd.write(SUP_API.format(cap_name, argsdef, argsval, cap_name, self.op_type)) + else: + fd.write(CAP_API.format(cap_name, argsdef, argsval, cap_name, self.op_type)) + + def _write_glz(self: any, fd: object): + argsdef = self._build_paralist() + argsval = self._build_paralist(False) + fd.write(GLZ_API.format(self.op_type, self.op_intf, argsdef, argsval, self.op_type)) + + +def write_scripts(cfgfile: str, cfgs: dict, dirs: dict, ops: list = None, op_compile_option:list = None): + batch_lists = cfgs.get(const_var.REPLAY_BATCH).split(';') + iterator_lists = cfgs.get(const_var.REPLAY_ITERATE).split(';') + file_map = {} + op_descs = opdesc_parser.get_op_desc(cfgfile, batch_lists, iterator_lists, AdpBuilder,\ + ops, dirs.get(const_var.AUTO_GEN_DIR)) + for op_desc in op_descs: + op_desc.write_adapt(dirs.get(const_var.CFG_IMPL_DIR), dirs.get(const_var.CFG_OUT_DIR), op_compile_option) + file_map[op_desc.op_type] = op_desc.op_file + return file_map + +if __name__ == '__main__': + if len(sys.argv) <= 6: + raise RuntimeError('arguments must greater equal than 6') + rep_cfg = {} + rep_cfg[const_var.REPLAY_BATCH] = sys.argv[2] + rep_cfg[const_var.REPLAY_ITERATE] = sys.argv[3] + cfg_dir = {} + cfg_dir[const_var.CFG_IMPL_DIR] = sys.argv[4] + cfg_dir[const_var.CFG_OUT_DIR] = sys.argv[5] + cfg_dir[const_var.AUTO_GEN_DIR] = sys.argv[6] + write_scripts(cfgfile=sys.argv[1], cfgs=rep_cfg, dirs=cfg_dir) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_ops_config.py b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_ops_config.py new file mode 100644 index 0000000..7a97180 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_ops_config.py @@ -0,0 +1,114 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import glob +import json +import argparse +import const_var + + +def load_json(json_file: str): + with open(json_file, encoding='utf-8') as file: + json_content = json.load(file) + return json_content + + +def get_specified_suffix_file(root_dir, suffix): + specified_suffix = os.path.join(root_dir, '**/*.{}'.format(suffix)) + all_suffix_files = glob.glob(specified_suffix, recursive=True) + return all_suffix_files + + +def add_simplified_config(op_type, key, core_type, objfile, config): + simple_cfg = config.get('binary_info_config.json') + op_cfg = simple_cfg.get(op_type) + if not op_cfg: + op_cfg = {} + op_cfg['dynamicRankSupport'] = True + op_cfg['simplifiedKeyMode'] = 0 + op_cfg['binaryList'] = [] + simple_cfg[op_type] = op_cfg + bin_list = op_cfg.get('binaryList') + bin_list.append({'coreType': core_type, 'simplifiedKey': key, 'binPath': objfile}) + + +def add_op_config(op_file, bin_info, config): + op_cfg = config.get(op_file) + if not op_cfg: + op_cfg = {} + op_cfg['binList'] = [] + config[op_file] = op_cfg + op_cfg.get('binList').append(bin_info) + + +def gen_ops_config(json_file, soc, config): + core_type_map = {"MIX": 0, "AiCore": 1, "VectorCore": 2} + contents = load_json(json_file) + if ('binFileName' not in contents) or ('supportInfo' not in contents): + return + json_base_name = os.path.basename(json_file) + op_dir = os.path.basename(os.path.dirname(json_file)) + support_info = contents.get('supportInfo') + bin_name = contents.get('binFileName') + bin_suffix = contents.get('binFileSuffix') + core_type = core_type_map.get(contents.get("coreType")) + bin_file_name = bin_name + bin_suffix + op_type = bin_name.split('_')[0] + op_file = op_dir + '.json' + bin_info = {} + keys = support_info.get('simplifiedKey') + if keys: + bin_info['simplifiedKey'] = keys + for key in keys: + add_simplified_config(op_type, key, core_type, os.path.join(soc, op_dir, bin_file_name), config) + bin_info['staticKey'] = support_info.get('staticKey') + bin_info['int64Mode'] = support_info.get('int64Mode') + bin_info['inputs'] = support_info.get('inputs') + bin_info['outputs'] = support_info.get('outputs') + if support_info.get('attrs'): + bin_info['attrs'] = support_info.get('attrs') + bin_info['binInfo'] = {'jsonFilePath': os.path.join(soc, op_dir, json_base_name)} + add_op_config(op_file, bin_info, config) + + +def gen_all_config(root_dir, soc): + suffix = 'json' + config = {} + config['binary_info_config.json'] = {} + all_json_files = get_specified_suffix_file(root_dir, suffix) + for _json in all_json_files: + gen_ops_config(_json, soc, config) + for cfg_key in config.keys(): + cfg_file = os.path.join(root_dir, cfg_key) + with os.fdopen(os.open(cfg_file, const_var.WFLAGS, const_var.WMODES), 'w') as fd: + json.dump(config.get(cfg_key), fd, indent=' ') + + +def args_prase(): + parser = argparse.ArgumentParser() + parser.add_argument('-p', + '--path', + nargs='?', + required=True, + help='Parse the path of the json file.') + parser.add_argument('-s', + '--soc', + nargs='?', + required=True, + help='Parse the soc_version of ops.') + return parser.parse_args() + + +def main(): + args = args_prase() + gen_all_config(args.path, args.soc) + + +if __name__ == '__main__': + main() diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_replay_build.py b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_replay_build.py new file mode 100644 index 0000000..1cac7d9 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/ascendc_replay_build.py @@ -0,0 +1,65 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import opdesc_parser +import replay_codegen +import const_var +from replay_codegen import ReplayCodeGenParams + +PYF_PATH = os.path.dirname(os.path.realpath(__file__)) + + +class ReplayBuilder(opdesc_parser.OpDesc): + def __init__(self: any, op_type: str): + super().__init__(op_type) + + def gen_replay_source(self: any, impl_path: str, out_path: str, ops_product: str): + if not self.op_replay_flag: + print('{} replay not enabled'.format(self.op_type)) + return + argn = len(self.input_name) + len(self.output_name) + 1 + if self.op_replay_batch: + print('{} replay in batch mode'.format(self.op_type)) + else: + print('{} replay in normal mode'.format(self.op_type)) + if impl_path.endswith('op_kernel'): + implf = os.path.join(impl_path, self.op_file + '.cpp') + tiling_file = os.path.join(impl_path, "../op_host", self.op_file + '_tiling.h') + else: + if self.dynamic_shape: + dyn_path = 'dynamic' + else: + dyn_path = '' + implf = os.path.join(impl_path, dyn_path, self.op_file + '.cpp') + tiling_file = os.path.join(impl_path, "../../op_tiling", self.op_file + '_tiling.h') + rep_conf = replay_codegen.ReplayCodeGen(ReplayCodeGenParams(self.op_type, implf, tiling_file, self.op_file, \ + self.op_intf, argn, self.op_replay_batch, self.max_block_dim, self.max_shape_size)) + rep_conf.set_batch(self.op_replay_batch) + rep_conf.set_outdir(out_path) + rep_conf.gen_replay(ops_product) + + +def gen_replay(cfgfile: str, cfgs: dict, dirs: dict, ops_product: str, ops: list = None): + batch_lists = cfgs.get(const_var.REPLAY_BATCH).split(';') + iterator_lists = cfgs.get(const_var.REPLAY_ITERATE).split(';') + op_descs = opdesc_parser.get_op_desc(cfgfile, batch_lists, iterator_lists, ReplayBuilder, ops) + for op_desc in op_descs: + op_desc.gen_replay_source(dirs.get(const_var.CFG_IMPL_DIR), dirs.get(const_var.CFG_OUT_DIR), ops_product) + + +if __name__ == '__main__': + if len(sys.argv) <= 6: + raise RuntimeError('arguments must greater than 6') + rep_cfg = {} + rep_cfg[const_var.REPLAY_BATCH] = sys.argv[2] + rep_cfg[const_var.REPLAY_ITERATE] = sys.argv[3] + rep_dir = {} + rep_dir[const_var.CFG_IMPL_DIR] = sys.argv[4] + rep_dir[const_var.CFG_OUT_DIR] = sys.argv[5] + gen_replay(sys.argv[1], rep_cfg, rep_dir, sys.argv[6]) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/batch_replay_impl.temp b/Increase_Bedore_pipe/No_increase/cmake/util/batch_replay_impl.temp new file mode 100644 index 0000000..0e88346 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/batch_replay_impl.temp @@ -0,0 +1,117 @@ +#include +#include +#include +#include +#include +#include +#include +#include "replay_def.h" +#include "code_gen.h" +#include "replay_fun.h" +#include "register/op_check.h" +#define __ASCENDC_REPLAY_CODE__ +#include + +using namespace std; +using namespace optiling; +using namespace AscendCReplay; + +extern "C" void __KERNEL_FUN__ (__ARGS_DEF__, const char *); +extern "C" int elf_batch_append(char *elf, uint32_t elfSize, char *jit, int kernum, char *atext[], int alen[], + int atlen, const char* kernelname[]); + +#define KERNEL_N 1 +#define ARG_N (__ARG_NUM__) +#define MAX_L (1024 * 1024 * 100) +#define MAX_E (1024 * 1024) + +int __KERNEL_FUN___replay___OPS_PRODUCT__(ReplayFuncParam& param, const int core_type) +{ + // gen type 1 : direct call codes 0: load .o file + if (param.gentype < 0 || param.gentype > 1) { + printf("Error: call replay gen type is %d, should only be 1 or 0\n", param.gentype); + return 0; + } else if (param.gentype == 1 && param.objptr == nullptr) { + printf("Error: call replay with direct call mode, but code obj addr is null\n"); + return 0; + } else if (param.gentype == 0 && param.output_kernel_file == nullptr) { + printf("Error: call replay with object file mode, but object file path is null\n"); + return 0; + } + // core_type 0:MIX 1:CUBE 2:VEC + if (core_type < 0 || core_type > 2) { + printf("Error: call replay core type is %d !\n", core_type); + return 0; + } + g_coreType = __CORE_TYPE__; + g_taskRation = param.task_ration; + g_tilingKey = param.tiling_key; + + unsigned char *buf, *jit; + char *kernel[KERNEL_N]; + int len[KERNEL_N]; + block_idx = 0; + block_num = param.block_dim; + g_ubBase = block_num; + uint8_t *code = (uint8_t *)malloc(MAX_L); + uint8_t *pos = code; + struct timespec tp1, tp2; + + clock_gettime(CLOCK_MONOTONIC, &tp1); + if (block_num > 32) { + printf("Error: block_num > 32\n"); + return 0; + } + //__OP_FOPEN__ + for (int i = 0; i < KERNEL_N; i++) { + //__OP_SET_KERNEL__ + for (int j = 0; j < ARG_N; j++) + AddArg(j, ARG_STEP * (j + 1)); +#ifdef FP_CEILING + SetCtrlFloatEnable(); +#else + SetCtrlFloatDisable(); +#endif + CodeInit(pos, true); + __KERNEL_FUN__(__KERNEL_ARGS__, param.tiling_data); + CodeEnd(); + kernel[i] = (char *)pos; + len[i] = CodeLen(); + pos += len[i]; + } + //__OP_FCLOSE__ + clock_gettime(CLOCK_MONOTONIC, &tp2); + buf = (unsigned char *)malloc(MAX_E); + int fd = open(param.entry_file, O_RDONLY); + if (fd < 0) { + printf("[error]: cannot find entry.o : %s\n", param.entry_file); + return 0; + } + uint32_t bufSize = read(fd, buf, MAX_E); + if (bufSize <= 0) { + printf("[error]: entry.o : %s is too small ! \n", param.entry_file); + } + close(fd); + jit = (unsigned char *)malloc(MAX_L); + printf("total code generated %ld\n", pos - code); + int sz = elf_batch_append((char *)buf, bufSize, (char *)jit, KERNEL_N, kernel, len, pos - code, ¶m.kernel_name); + if (tp1.tv_sec != tp2.tv_sec) { + printf("%ld NS\n", tp2.tv_nsec + 1000000000 - tp1.tv_nsec); + } else { + printf("%ld NS\n", tp2.tv_nsec - tp1.tv_nsec); + } + printf("new elf size %d\n", sz); + if (param.gentype == 0) { + fd = open(param.output_kernel_file, O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); + (void)write(fd, jit, sz); + close(fd); + free(jit); + } else if (param.gentype == 1) { + *param.objptr = (char*)jit; + } + free(buf); + free(code); + return sz; +} + +REG_REPLAY_FUNC(__OPTYPE__, __OPS_PRODUCT__, __KERNEL_FUN___replay___OPS_PRODUCT__); diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/code_channel_infer.py b/Increase_Bedore_pipe/No_increase/cmake/util/code_channel_infer.py new file mode 100644 index 0000000..137c9f3 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/code_channel_infer.py @@ -0,0 +1,115 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" +import os +import stat +import ctypes +import collections +import shutil +import subprocess +import copy + +"""CODE_* is used to cube/vector api is called in operator code +CODE_MIX means both cube and vector api is called +CODE_CUBE means only cube api is called +CODE_VEC means only vector api is called +""" +CODE_MIX = 0 +CODE_CUBE = 1 +CODE_VEC = 2 + + +def _is_v220(op_product: str): + """return if current soc version is V220 + + Returns: + res: True means V220 + """ + if op_product in ["ascend910b"]: + return True + return False + + +InfoCodeChanelParams = collections.namedtuple('InfoCodeChanelParams',\ +['src_file', 'tiling_header', 'kernel_name', 'outdir', 'op_product', 'compile_options']) + + +def infer_code_channel(params: InfoCodeChanelParams): + """get code channel for v220, return CODE_MIX if soc version is not V220 + + Args: + src_file (str): AscendC operator code file + src_file (str): AscendC operator tiling header file + kernel_name (str): kernel function name + optype (str): operator type + compile_options (list): compile options for ccec cmd + + Raises: + Exception: if not exist L1/L0/UB if code, it's not a aicore code + + Returns: + res (int): CODE_MIX/CODE_CUBE/CODE_VEC + """ + if not _is_v220(params.op_product): + return CODE_MIX + return CODE_VEC + if params.compile_options is None: + compile_options = [] + else: + compile_options = params.compile_options + ccec = shutil.which("ccec") + if ccec is not None: + ccec_path = os.path.dirname(ccec) + tikcpp_path = os.path.realpath(os.path.join(ccec_path, "..", "..", "tikcpp")) + else: + tikcpp_path = os.path.realpath("/usr/local/Ascend/latest/compiler/tikcpp") + compile_options.append("-I" + tikcpp_path) + compile_options.append("-I" + os.path.join(tikcpp_path, "tikcfw")) + compile_options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "impl")) + compile_options.append("-I" + os.path.join(tikcpp_path, "tikcfw", "interface")) + compile_options += ["-include", params.tiling_header] + arch = "dav-c220-cube" + sub_core_type = "AIC" + optional_core = "AiCore" + compile_cmd = [shutil.which("ccec"), '-c', '-O3'] + compile_cmd += compile_options + temp_file_name_tag = "_" + str(os.getpid()) + "_temp.o" + dst_file = os.path.join(kernel_meta_dir, kernel_name + temp_file_name_tag) + compile_cmd += [params.src_file, "--cce-aicore-arch={}".format(arch), + "--cce-aicore-only", "-o", dst_file, + "-mllvm", "-cce-aicore-function-stack-size=16000", + "-mllvm", "-cce-aicore-record-overflow=true", + "-mllvm", "-cce-aicore-addr-transform"] + compile_cmd += ["-std=c++17"] + print('get_code_channel: ', ' '.join(compile_cmd)) + proc = subprocess.Popen( + compile_cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) + (out, _) = proc.communicate() + if proc.returncode != 0: + print('get_code_channel coretype compile error: ', out.decode()) + msg = "compile %s error :%s\n" % (params.src_file, out.decode()) + raise Exception(f"get_code_channel coretype error, msg is{msg}") + objdump_cmd = ['objdump', '-s', '-j', '.text', '{}'.format(dst_file)] + + proc = subprocess.Popen( + objdump_cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) + (out, _) = proc.communicate() + if proc.returncode != 0: + print('get_code_channel objdump error: ', out.decode()) + msg = "get_code_channel objdump %s error :%s\n" % (src_file, out.decode()) + raise Exception(f"get_code_channel objdump error, msg is{msg}") + os.remove(dst_file) + lines = out.decode('utf-8').split('\n') + for line in lines: + insts = line.strip().split() + if len(insts) < 5: + continue + for inst in insts[1:]: + if len(inst) != 8: + continue + if inst[6] == 'f': + return CODE_MIX + return CODE_VEC diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/const_var.py b/Increase_Bedore_pipe/No_increase/cmake/util/const_var.py new file mode 100644 index 0000000..8b32c3b --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/const_var.py @@ -0,0 +1,33 @@ + +#!/usr/bin/env python +# coding=utf-8 +""" +Function: +The replay funtion entry +Copyright Information: +Huawei Technologies Co., Ltd. All Rights Reserved © 2020 +""" + +import os +import stat + + +REPLAY_BATCH = 'batch' +REPLAY_ITERATE = 'iterate' +CFG_IMPL_DIR = 'impl_dir' +CFG_OUT_DIR = 'out_dir' +AUTO_GEN_DIR = 'auto_gen_dir' +WFLAGS = os.O_WRONLY | os.O_CREAT | os.O_TRUNC +WMODES = stat.S_IWUSR | stat.S_IRUSR +SOC_MAP_EXT = {'ascend310p': 'Ascend310P3', 'ascend310b': 'Ascend310B1', + 'ascend910': 'Ascend910A', 'ascend910b': 'Ascend910B1'} +BIN_CMD = 'opc $1 --main_func={fun} --input_param={param} --soc_version={soc} \ +--output=$2 --impl_mode={impl} --simplified_key_mode=0 --op_mode=dynamic\n' +CHK_CMD = ''' +if ! test -f $2/{res_file} ; then + echo "$2/{res_file} not generated!" + exit 1 +fi +''' +ATTR_DEF_VAL = {'str' : '', 'int': 0, 'float': 0.0, 'bool': False, 'list_bool': [], + 'list_int': [], 'list_float': [], 'list_list_int': [[]]} diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/gen_impl_and_mrege_json.sh b/Increase_Bedore_pipe/No_increase/cmake/util/gen_impl_and_mrege_json.sh new file mode 100644 index 0000000..55e12e5 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/gen_impl_and_mrege_json.sh @@ -0,0 +1,57 @@ +#!/usr/bin/bash + +project_path=$1 +build_path=$2 +vendor_name=customize +if [[ ! -d "$project_path" ]]; then + echo "[ERROR] No projcet path is provided" + exit 1 +fi + +if [[ ! -d "$build_path" ]]; then + echo "[ERROR] No build path is provided" + exit 1 +fi + +# copy ai_core operators implements +# tbe_impl_files_num=$(ls $project_path/tbe/impl/* 2> /dev/null | wc -l) +# if [[ "$tbe_impl_files_num" -gt 0 ]];then +# cp -r ${project_path}/tbe/impl/* ${build_path}/makepkg/packages/vendors/$vendor_name/op_impl/ai_core/tbe/customize_impl +# cp -r ${project_path}/tbe/impl/* ${build_path}/makepkg/packages/vendors/$vendor_name/op_impl/vector_core/tbe/customize_impl +# fi + +# copy aicpu kernel so operators +if [[ -d "${project_path}/cpukernel/aicpu_kernel_lib" ]]; then + cp -f ${project_path}/cpukernel/aicpu_kernel_lib/* ${build_path}/makepkg/packages/vendors/$vendor_name/op_impl/cpu/aicpu_kernel/impl + rm -rf ${project_path}/cpukernel/aicpu_kernel_lib +fi + +# merge aicpu.ini and aicore.ini to generate npu_supported_ops.json +# mkdir -p ${build_path}/framework/op_info_cfg +# mkdir -p ${build_path}/framework/op_info_cfg/aicpu_kernel +# mkdir -p ${build_path}/framework/op_info_cfg/ai_core + +# if [[ -d "${project_path}/tbe/op_info_cfg/ai_core" ]]; then +# bash ${project_path}/cmake/util/gen_ops_filter.sh ${project_path}/tbe/op_info_cfg/ai_core ${build_path}/framework/op_info_cfg/ai_core +# fi + +# if [[ -d "${project_path}/cpukernel/op_info_cfg/aicpu_kernel" ]]; then +# bash ${project_path}/cmake/util/gen_ops_filter.sh ${project_path}/cpukernel/op_info_cfg/aicpu_kernel ${build_path}/framework/op_info_cfg/aicpu_kernel +# fi + +# aicpu_filter_file=${build_path}/framework/op_info_cfg/aicpu_kernel/npu_supported_ops.json +# aicore_filter_file=${build_path}/framework/op_info_cfg/ai_core/npu_supported_ops.json +# if [[ -f "${aicpu_filter_file}" ]] && [[ ! -f "${aicore_filter_file}" ]]; then +# cp $aicpu_filter_file ${build_path}/makepkg/packages/vendors/$vendor_name/framework/tensorflow +# fi +# if [[ -f "${aicore_filter_file}" ]] && [[ ! -f "${aicpu_filter_file}" ]]; then +# cp $aicore_filter_file ${build_path}/makepkg/packages/vendors/$vendor_name/framework/tensorflow +# fi + +# if [[ -f "${aicore_filter_file}" ]] && [[ -f "${aicpu_filter_file}" ]]; then +# chmod u+w ${aicpu_filter_file} +# python3 ${project_path}/cmake/util/insert_op_info.py ${aicore_filter_file} ${aicpu_filter_file} +# chmod u-w ${aicpu_filter_file} +# cp $aicpu_filter_file ${build_path}/makepkg/packages/vendors/$vendor_name/framework/tensorflow +# fi + diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/gen_ops_filter.sh b/Increase_Bedore_pipe/No_increase/cmake/util/gen_ops_filter.sh new file mode 100644 index 0000000..d4c27d1 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/gen_ops_filter.sh @@ -0,0 +1,62 @@ +#!/bin/bash +# Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +# Description: Generate npu_supported_ops.json +# ============================================================================== + +if [[ -z "$1" ]]; then + echo -e "[ERROR] No source dir provided" + exit 1 +fi + +if [[ -z "$2" ]]; then + echo -e "[ERROR] No destination dir provided" + exit 1 +fi + +src=$1 +dest_file=$2/npu_supported_ops.json + +if [ -f "$dest_file" ];then + chmod u+w $dest_file +fi + +echo $* + +add_ops() { + name=$1 + isHeavy=$2 + file=$3 + grep -w "\"$name\"" ${file} >/dev/null + if [ $? == 0 ];then + return + fi + echo " \"${name}\": {" >> ${file} + echo " \"isGray\": false," >> ${file} + echo " \"isHeavy\": ${isHeavy}" >> ${file} + echo " }," >> ${file} +} + +echo "{" > ${dest_file} +ini_files=$(find ${src} -name "*.ini") +for file in ${ini_files} ; do + name=$(grep '^\[' ${file} | sed 's/\[//g' | sed 's/]//g' | sed 's/\r//g') + grep 'heavyOp.flag' ${file} >/dev/null + if [ $? == 0 ];then + isHeavy=$(grep 'heavyOp.flag' ${file} | awk -F= '{print $2}') + else + isHeavy="false" + fi + for op in ${name} ; do + add_ops ${op} "false" ${dest_file} + done +done +echo "}" >> ${dest_file} +file_count=$(cat ${dest_file} | wc -l) +line=$(($file_count-1)) +sed -i "${line}{s/,//g}" ${dest_file} + +chmod 640 "${dest_file}" +echo -e "[INFO] Succed generated ${dest_file}" + +exit 0 + diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/gen_version_info.sh b/Increase_Bedore_pipe/No_increase/cmake/util/gen_version_info.sh new file mode 100644 index 0000000..a06cfc7 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/gen_version_info.sh @@ -0,0 +1,6 @@ +ascend_install_dir=$1 +gen_file_dir=$2 + +# create version.info +compiler_version=$(grep "Version" -w ${ascend_install_dir}/compiler/version.info | awk -F = '{print $2}') +echo "custom_opp_compiler_version=${compiler_version}" > ${gen_file_dir}/version.info \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/insert_op_info.py b/Increase_Bedore_pipe/No_increase/cmake/util/insert_op_info.py new file mode 100644 index 0000000..28ba087 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/insert_op_info.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" +import json +import os +import sys +import stat +import const_var + + +if __name__ == '__main__': + if len(sys.argv) != 3: + print(sys.argv) + print('argv error, inert_op_info.py your_op_file lib_op_file') + sys.exit(2) + + with open(sys.argv[1], 'r') as load_f: + insert_operator = json.load(load_f) + + all_operators = {} + if os.path.exists(sys.argv[2]): + if os.path.getsize(sys.argv[2]) != 0: + with open(sys.argv[2], 'r') as load_f: + all_operators = json.load(load_f) + + for k in insert_operator.keys(): + if k in all_operators.keys(): + print('replace op:[', k, '] success') + else: + print('insert op:[', k, '] success') + all_operators[k] = insert_operator[k] + + with os.fdopen(os.open(sys.argv[2], const_var.WFLAGS, const_var.WMODES), 'w') as json_file: + json_file.write(json.dumps(all_operators, indent=4)) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/insert_simplified_keys.py b/Increase_Bedore_pipe/No_increase/cmake/util/insert_simplified_keys.py new file mode 100644 index 0000000..ace727b --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/insert_simplified_keys.py @@ -0,0 +1,248 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os +import re +import glob +import json +import argparse +import const_var + + +DATA_TPYE_DICT = { + 'float32': 0, + 'float16': 1, + 'int8': 2, + 'int16': 6, + 'uint16': 7, + 'uint8': 4, + 'int32': 3, + 'int64': 9, + 'uint32': 8, + 'uint64': 10, + 'bool': 12, + 'double': 11, + 'string': 13, + 'dual': 14, + 'dual': 15, + 'complex64': 16, + 'complex128': 17, + 'qint8': 18, + 'qint16': 19, + 'qint32': 20, + 'quint8': 21, + 'quint16': 22, + 'resource': 23, + 'string': 24, + 'dual': 25, + 'variant': 26, + 'bf16': 27, + 'bfloat16': 27, + 'undefined': 28, + 'int4': 29, + 'uint1': 30, + 'int2': 31 +} + +FORMAT_DICT = { + 'NCHW': 0, + 'NHWC': 1, + 'ND': 2, + 'NC1HWC0': 3, + 'FRACTAL_Z': 4, + 'NC1C0HWPAD': 5, + 'NHWC1C0': 6, + 'FSR_NCHW': 7, + 'FRACTAL_DECONV': 8, + 'C1HWNC0': 9, + 'FRACTAL_DECONV_TRANSPOSE': 10, + 'FRACTAL_DECONV_SP_STRIDE_TRANS': 11, + 'NC1HWC0_C04': 12, + 'FRACTAL_Z_C04': 13, + 'CHWN': 14, + 'FRACTAL_DECONV_SP_STRIDE8_TRANS': 15, + 'HWCN': 16, + 'NC1KHKWHWC0': 17, + 'BN_WEIGHT': 18, + 'FILTER_HWCK': 19, + 'HASHTABLE_LOOKUP_LOOKUPS': 20, + 'HASHTABLE_LOOKUP_KEYS': 21, + 'HASHTABLE_LOOKUP_VALUE': 22, + 'HASHTABLE_LOOKUP_OUTPUT': 23, + 'HASHTABLE_LOOKUP_HITS': 24, + 'C1HWNCoC0': 25, + 'MD': 26, + 'NDHWC': 27, + 'FRACTAL_ZZ': 28, + 'FRACTAL_NZ': 29, + 'NCDHW': 30, + 'DHWCN': 31, + 'NDC1HWC0': 32, + 'FRACTAL_Z_3D': 33, + 'CN': 34, + 'NC': 35, + 'DHWNC': 36, + 'FRACTAL_Z_3D_TRANSPOSE': 37, + 'FRACTAL_ZN_LSTM': 38, + 'FRACTAL_Z_G': 39, + 'RESERVED': 40, + 'ALL': 41, + 'NULL': 42, + 'ND_RNN_BIAS': 43, + 'FRACTAL_ZN_RNN': 44, + 'NYUV': 45, + 'NYUV_A': 46 +} + + +def load_json(json_file: str): + with open(json_file, encoding='utf-8') as file: + json_content = json.load(file) + return json_content + + +def get_specified_suffix_file(root_dir, suffix): + specified_suffix = os.path.join(root_dir, '**/*.{}'.format(suffix)) + all_suffix_files = glob.glob(specified_suffix, recursive=True) + return all_suffix_files + + +def get_deterministic_value(support_info): + deterministic_key = 'deterministic' + if deterministic_key not in support_info: + return 0 + deterministic_value = support_info.get(deterministic_key) + if deterministic_value == 'true': + return 1 + else: + return 0 + + +def get_precision_value(support_info): + precision_key = 'implMode' + precision_value = support_info.get(precision_key) + if precision_value == 'high_performance': + _value = 1 + elif precision_value == 'high_precision': + _value = 2 + else: + _value = 0 + return _value + + +def get_overflow_value(support_info): + return 0 + + +def get_parameters(info): + if info: + if 'dtype' in info: + data_type = info['dtype'] + data_type_value = DATA_TPYE_DICT.get(data_type) + else: + data_type_value = 0 + if 'format' in info: + _format = info['format'] + _format_value = FORMAT_DICT.get(_format) + else: + _format_value = 0 + else: + data_type_value = 0 + _format_value = 0 + return str(data_type_value), str(_format_value) + + +def get_dynamic_parameters(info): + # 动态输入时只需获取第一个参数 + return get_parameters(info[0]) + + +def get_all_parameters(support_info, _type): + result_list = list() + info_lists = support_info.get(_type) + if info_lists: + for _info in info_lists: + # 输入为列表时是动态输入 + if isinstance(_info, (list, tuple)): + data_type_value, _format_value = get_dynamic_parameters(_info) + else: + data_type_value, _format_value = get_parameters(_info) + result_list.append("{},{}".format(data_type_value, _format_value)) + return result_list + + +def get_all_input_parameters(support_info): + result = get_all_parameters(support_info, 'inputs') + return '/'.join(result) + + +def insert_content_into_file(input_file, content): + with open(input_file, 'r+') as file: + lines = file.readlines() + for index, line in enumerate(lines): + match_result = re.search(r'"staticKey":', line) + if match_result: + count = len(line) - len(line.lstrip()) + new_content = "{}{}".format(' ' * count, content) + # 插入到前一行,防止插入最后时还需要考虑是否添加逗号 + lines.insert(index, new_content) + break + file.seek(0) + file.write(''.join(lines)) + + +def insert_simplified_keys(json_file): + contents = load_json(json_file) + # 不存在'binFileName'或者'supportInfo'字段时,非需要替换的解析json文件 + if ('binFileName' not in contents) or ('supportInfo' not in contents): + return + support_info = contents.get('supportInfo') + bin_file_name = contents.get('binFileName') + bin_suffix = contents.get('binFileSuffix') + # 'simplifiedKey'字段已经存在时,直接返回,不重复生成 + if 'simplifiedKey' in support_info: + return + op_type = bin_file_name.split('_')[0] + deterministic = str(get_deterministic_value(support_info)) + precision = str(get_precision_value(support_info)) + overflow = str(get_overflow_value(support_info)) + input_parameters = get_all_input_parameters(support_info) + key = '{}/d={},p={},o={}/{}/'.format( + op_type, + deterministic, + precision, + overflow, + input_parameters) + result = '"simplifiedKey": "' + key + '",\n' + insert_content_into_file(json_file, result) + + +def insert_all_simplified_keys(root_dir): + suffix = 'json' + all_json_files = get_specified_suffix_file(root_dir, suffix) + for _json in all_json_files: + insert_simplified_keys(_json) + + +def args_prase(): + parser = argparse.ArgumentParser() + parser.add_argument('-p', + '--path', + nargs='?', + required=True, + help='Parse the path of the json file.') + return parser.parse_args() + + +def main(): + args = args_prase() + insert_all_simplified_keys(args.path) + + +if __name__ == '__main__': + main() diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/kernel_entry.py b/Increase_Bedore_pipe/No_increase/cmake/util/kernel_entry.py new file mode 100644 index 0000000..2b77c97 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/kernel_entry.py @@ -0,0 +1,115 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + + +def gen_fun_def(title, kernel, argn, arg_type, arg_name): + entry = [] + entry.append(title) + entry.append(kernel) + entry.append('(') + args = [] + for i in range(0, argn): + args.append(arg_type + ' ' + arg_name + str(i)) + entry.append(', '.join(args)) + entry.append(')') + return ' '.join(entry) + + +def gen_batch_kernel_body(fname, argn, arg_name): + body = [] + body.append('{') + fun = [] + fun.append(fname) + fun.append('(') + args = [] + for i in range(0, argn): + args.append(arg_name + str(i)) + fun.append(', '.join(args)) + fun.append(');') + body.append(' '.join(fun)) + body.append('}') + return '\n'.join(body) + + +def gen_mc_kernel_body(kn, argn, arg_name, blknum): + body = [] + body.append('{') + body.append(' switch(block_idx) {') + for blk in range(0, blknum): + fun = [] + fun.append('{}_blk{:02d}'.format(kn, blk)) + fun.append('(') + args = [] + for i in range(0, argn): + args.append(arg_name + str(i)) + fun.append(', '.join(args)) + fun.append(')') + body.append(' case {}: {}; break;'.format(blk, ' '.join(fun))) + body.append(' default: break;') + body.append(' }') + body.append('}') + return '\n'.join(body) + + +def gen_proc_body(argn, arg_name): + body = [] + body.append('{') + args = [] + for i in range(0, argn): + args.append(arg_name + str(i)) + body.append('uint64_t __x = (uint64_t)' + ' + (uint64_t)'.join(args) + ';') + body.append('__asm__ ("NOP");') + body.append('__asm__ ("NOP");') + body.append('__asm__ ("NOP");') + body.append('}') + return '\n'.join(body) + + +def batch_code_gen(kn, argn, argt): + codes = [] + kernel_name = kn + proc_name = kernel_name + '_percore' + arg_num = int(argn) + data_type = argt + arg_type = '__gm__ ' + data_type + '* __restrict__' + arg_name = 'arg' + kernel_title = 'extern \"C\" __global__ __aicore__ void' + proc_title = 'extern \"C\" __attribute__((noinline)) __aicore__ void' + codes.append('#ifndef __aicore__') + codes.append('#define __aicore__ [aicore]') + codes.append('#endif') + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name) + ';') + codes.append(gen_fun_def(kernel_title, kernel_name, arg_num, arg_type, arg_name)) + codes.append(gen_batch_kernel_body(proc_name, arg_num, arg_name)) + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name)) + codes.append(gen_proc_body(arg_num, arg_name)) + return '\n'.join(codes) + '\n' + + +def mc_code_gen(kn, argn, argt, blknum): + codes = [] + kernel_name = kn + core_num = int(blknum) + arg_num = int(argn) + data_type = argt + arg_type = '__gm__ ' + data_type + '* __restrict__' + arg_name = 'arg' + kernel_title = 'extern \"C\" __global__ __aicore__ void' + proc_title = 'extern \"C\" __attribute__((noinline)) __aicore__ void' + codes.append('#ifndef __aicore__') + codes.append('#define __aicore__ [aicore]') + codes.append('#endif') + for i in range(0, core_num): + proc_name = '{}_blk{:02d}'.format(kernel_name, i) + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name) + ';') + codes.append(gen_fun_def(kernel_title, kernel_name, arg_num, arg_type, arg_name)) + codes.append(gen_mc_kernel_body(kernel_name, arg_num, arg_name, core_num)) + for i in range(0, core_num): + proc_name = '{}_blk{:02d}'.format(kernel_name, i) + codes.append(gen_fun_def(proc_title, proc_name, arg_num, arg_type, arg_name)) + codes.append(gen_proc_body(arg_num, arg_name)) + return '\n'.join(codes) + '\n' diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/kernel_impl.temp b/Increase_Bedore_pipe/No_increase/cmake/util/kernel_impl.temp new file mode 100644 index 0000000..5079a10 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/kernel_impl.temp @@ -0,0 +1,10 @@ +#include +#include +#include +#include +#include +#include "replay_def.h" +#include "code_gen.h" +#include "replay_fun.h" +#define __ASCENDC_REPLAY_CODE__ +#include "__CCE_FILE__" diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/COPYING b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/COPYING new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/COPYING @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/README.md b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/README.md new file mode 100644 index 0000000..b41f016 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/README.md @@ -0,0 +1,246 @@ +[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) +![Build Status](https://github.com/megastep/makeself/workflows/CI/badge.svg) + +# makeself - Make self-extractable archives on Unix + +[makeself.sh][1] is a small shell script that generates a self-extractable +compressed tar archive from a directory. The resulting file appears as a shell script +(many of those have a **.run** suffix), and can be launched as is. The archive +will then uncompress itself to a temporary directory and an optional arbitrary +command will be executed (for example an installation script). This is pretty +similar to archives generated with WinZip Self-Extractor in the Windows world. +Makeself archives also include checksums for integrity self-validation (CRC +and/or MD5/SHA256 checksums). + +The makeself.sh script itself is used only to create the archives from a +directory of files. The resultant archive is actually a compressed (using +gzip, bzip2, or compress) TAR archive, with a small shell script stub at the +beginning. This small stub performs all the steps of extracting the files, +running the embedded command, and removing the temporary files when done. +All the user has to do to install the software contained in such an +archive is to "run" the archive, i.e **sh nice-software.run**. I recommend +using the ".run" (which was introduced by some Makeself archives released by +Loki Software) or ".sh" suffix for such archives not to confuse the users, +so that they will know they are actually shell scripts (with quite a lot of binary data +attached to them though!). + +I am trying to keep the code of this script as portable as possible, i.e it is +not relying on any bash-specific features and only calls commands that are +installed on any functioning UNIX-compatible system. This script as well as +the archives it generates should run on any Unix flavor, with any compatible +Bourne shell, provided of course that the compression programs are available. + +As of version 2.1, Makeself has been rewritten and tested on the following +platforms : + + * Linux (all distributions) + * Sun Solaris (8 and above) + * HP-UX (tested on 11.0 and 11i on HPPA RISC) + * SCO OpenUnix and OpenServer + * IBM AIX 5.1L + * macOS (Darwin) + * SGI IRIX 6.5 + * FreeBSD + * UnicOS / Cray + * Cygwin (Windows) + +If you successfully run Makeself and/or archives created with it on another +system, then please [let me know][2]! + +Examples of publicly available archives made using makeself are : + + * Game patches and installers for [Id Software][3] games like Quake 3 for Linux or Return To Castle Wolfenstein ; + * All game patches released by [Loki Software][4] for the Linux version of popular games ; + * The [nVidia drivers][5] for Linux + * The installer for the Linux version of [Google Earth][6] + * The [VirtualBox][7] installers for Linux + * The [Makeself][1] distribution itself ;-) + * and countless others... + +**Important note for Apache users:** By default, most Web servers will think that Makeself archives are regular text files and thus they may show up as text in a Web browser. The correct way to prevent this is to add a MIME type for this file format, like so (in httpd.conf) : + +`AddType application/x-makeself .run` + +**Important note for certain GNU/Linux distributions:** Archives created with Makeself prior to v2.1.2 were using an old syntax for the _head_ and _tail_ Unix commands that is being progressively obsoleted in their GNU forms. Therefore you may have problems uncompressing some of these archives. A workaround for this is to set the environment variable $_POSIX2_VERSION to enable the old syntax, i.e. : + +`export _POSIX2_VERSION=199209` + +## Usage + +The syntax of makeself is the following: + +``` +makeself.sh [args] archive_dir file_name label startup_script [script_args] +``` + + * _args_ are optional options for Makeself. The available ones are : + + * **`--version`** : Prints the version number on stdout, then exits immediately + * **`--gzip`** : Use gzip for compression (the default on platforms on which gzip is commonly available, like Linux) + * **`--bzip2`** : Use bzip2 instead of gzip for better compression. The bzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like '.bz2.run', so that potential users know that they'll need bzip2 to extract it. + * **`--pbzip2`** : Use pbzip2 instead of gzip for better and faster compression on machines having multiple CPUs. The pbzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like '.bz2.run', so that potential users know that they'll need bzip2 to extract it. + * **`--xz`** : Use xz instead of gzip for better compression. The xz command must be available in the command path. It is recommended that the archive prefix be set to something like '.xz.run' for the archive, so that potential users know that they'll need xz to extract it. + * **`--lzo`** : Use lzop instead of gzip for better compression. The lzop command must be available in the command path. It is recommended that the archive prefix be set to something like `.lzo.run` for the archive, so that potential users know that they'll need lzop to extract it. + * **`--lz4`** : Use lz4 instead of gzip for better compression. The lz4 command must be available in the command path. It is recommended that the archive prefix be set to something like '.lz4.run' for the archive, so that potential users know that they'll need lz4 to extract it. + * **`--zstd`** : Use zstd instead of gzip for better compression. The zstd command must be available in the command path. It is recommended that the archive prefix be set to something like '.zstd.run' for the archive, so that potential users know that they'll need zstd to extract it. + * **`--pigz`** : Use pigz for compression. + * **`--base64`** : Encode the archive to ASCII in Base64 format instead of compressing (base64 command required). + * **`--gpg-encrypt`** : Encrypt the archive using `gpg -ac -z $COMPRESS_LEVEL`. This will prompt for a password to encrypt with. Assumes that potential users have `gpg` installed. + * **`--ssl-encrypt`** : Encrypt the archive using `openssl aes-256-cbc -a -salt`. This will prompt for a password to encrypt with. Assumes that the potential users have the OpenSSL tools installed. + * **`--compress`** : Use the UNIX `compress` command to compress the data. This should be the default on all platforms that don't have gzip available. + * **`--nocomp`** : Do not use any compression for the archive, which will then be an uncompressed TAR. + * **`--complevel`** : Specify the compression level for gzip, bzip2, pbzip2, zstd, xz, lzo or lz4. (defaults to 9) + * **`--threads`** : Specify the number of threads to be used by compressors that support parallelization. Omit to use compressor's default. Most useful (and required) for opting into xz's threading, usually with `--threads=0` for all available cores. pbzip2 and pigz are parallel by default, and setting this value allows limiting the number of threads they use. + * **`--notemp`** : The generated archive will not extract the files to a temporary directory, but in a new directory created in the current directory. This is better to distribute software packages that may extract and compile by themselves (i.e. launch the compilation through the embedded script). + * **`--current`** : Files will be extracted to the current directory, instead of in a subdirectory. This option implies `--notemp` above. + * **`--follow`** : Follow the symbolic links inside of the archive directory, i.e. store the files that are being pointed to instead of the links themselves. + * **`--append`** _(new in 2.1.x)_: Append data to an existing archive, instead of creating a new one. In this mode, the settings from the original archive are reused (compression type, label, embedded script), and thus don't need to be specified again on the command line. + * **`--header`** : Makeself uses a separate file to store the header stub, called `makeself-header.sh`. By default, it is assumed that it is stored in the same location as makeself.sh. This option can be used to specify its actual location if it is stored someplace else. + * **`--cleanup`** : Specify a script that is run when execution is interrupted or finishes successfully. The script is executed with the same environment and initial `script_args` as `startup_script`. + * **`--copy`** : Upon extraction, the archive will first extract itself to a temporary directory. The main application of this is to allow self-contained installers stored in a Makeself archive on a CD, when the installer program will later need to unmount the CD and allow a new one to be inserted. This prevents "Filesystem busy" errors for installers that span multiple CDs. + * **`--nox11`** : Disable the automatic spawning of a new terminal in X11. + * **`--nowait`** : When executed from a new X11 terminal, disable the user prompt at the end of the script execution. + * **`--nomd5`** and **`--nocrc`** : Disable the creation of a MD5 / CRC checksum for the archive. This speeds up the extraction process if integrity checking is not necessary. + * **`--sha256`** : Adds a SHA256 checksum for the archive. This is in addition to the MD5 / CRC checksums unless `--nomd5` is also used. + * **`--lsm` _file_** : Provide and LSM file to makeself, that will be embedded in the generated archive. LSM files are describing a software package in a way that is easily parseable. The LSM entry can then be later retrieved using the `--lsm` argument to the archive. An example of a LSM file is provided with Makeself. + * **`--tar-format opt`** : Specify the tar archive format (default is ustar); you may use any value accepted by your tar command (such as posix, v7, etc). + * **`--tar-extra opt`** : Append more options to the tar command line. + + For instance, in order to exclude the `.git` directory from the packaged archive directory using the GNU `tar`, one can use `makeself.sh --tar-extra "--exclude=.git" ...` + + * **`--keep-umask`** : Keep the umask set to shell default, rather than overriding when executing self-extracting archive. + * **`--packaging-date date`** : Use provided string as the packaging date instead of the current date. + * **`--license`** : Append a license file. + * **`--nooverwrite`** : Do not extract the archive if the specified target directory already exists. + * **`--help-header file`** : Add a header to the archive's `--help` output. + * `archive_dir` is the name of the directory that contains the files to be archived + * `file_name` is the name of the archive to be created + * `label` is an arbitrary text string describing the package. It will be displayed while extracting the files. + * `startup_script` is the command to be executed _from within_ the directory of extracted files. Thus, if you wish to execute a program contained in this directory, you must prefix your command with `./`. For example, `./program` will be fine. The `script_args` are additional arguments for this command. + +Here is an example, assuming the user has a package image stored in a **/home/joe/mysoft**, and he wants to generate a self-extracting package named +**mysoft.sh**, which will launch the "setup" script initially stored in /home/joe/mysoft : + +`makeself.sh /home/joe/mysoft mysoft.sh "Joe's Nice Software Package" ./setup +` + +Here is also how I created the [makeself.run][9] archive which contains the Makeself distribution : + +`makeself.sh --notemp makeself makeself.run "Makeself by Stephane Peter" echo "Makeself has extracted itself" ` + +Archives generated with Makeself can be passed the following arguments: + + * **`--keep`** : Prevent the files to be extracted in a temporary directory that will be removed after the embedded script's execution. The files will then be extracted in the current working directory and will stay here until you remove them. + * **`--verbose`** : Will prompt the user before executing the embedded command + * **`--target dir`** : Allows to extract the archive in an arbitrary place. + * **`--nox11`** : Do not spawn a X11 terminal. + * **`--confirm`** : Prompt the user for confirmation before running the embedded command. + * **`--info`** : Print out general information about the archive (does not extract). + * **`--lsm`** : Print out the LSM entry, if it is present. + * **`--list`** : List the files in the archive. + * **`--check`** : Check the archive for integrity using the embedded checksums. Does not extract the archive. + * **`--nochown`** : By default, a `chown -R` command is run on the target directory after extraction, so that all files belong to the current user. This is mostly needed if you are running as root, as tar will then try to recreate the initial user ownerships. You may disable this behavior with this flag. + * **`--tar`** : Run the tar command on the contents of the archive, using the following arguments as parameter for the command. + * **`--noexec`** : Do not run the embedded script after extraction. + * **`--noexec-cleanup`** : Do not run the embedded cleanup script. + * **`--nodiskspace`** : Do not check for available disk space before attempting to extract. + * **`--cleanup-args`** : Specify arguments to be passed to the cleanup script. Wrap value in quotes to specify multiple arguments. + +Any subsequent arguments to the archive will be passed as additional arguments to the embedded command. You must explicitly use the `--` special command-line construct before any such options to make sure that Makeself will not try to interpret them. + +## Startup Script + +The startup script must be a regular Shell script. + +Within the startup script, you can use the `$USER_PWD` variable to get the path of the folder from which the self-extracting script is executed. This is especially useful to access files that are located in the same folder as the script, as shown in the example below. + +`my-self-extracting-script.sh --fooBarFileParameter foo.bar` + +## Building and Testing + +Clone the git repo and execute `git submodule update --init --recursive` to obtain all submodules. + +* To make a release: `make` +* To run all tests: `make test` + +## Maven Usage + +Makeself is now supported by the following maven plugin [makeself-maven-plugin](https://github.com/hazendaz/makeself-maven-plugin). Please refer to project for usage and report any bugs in regards to maven plugin on that project. + +## License + +Makeself itself is covered by the [GNU General Public License][8] (GPL) version 2 and above. Archives generated by Makeself don't have to be placed under this license (although I encourage it ;-)), since the archive itself is merely data for Makeself. + +## Contributing + +I will gladly consider merging your pull requests on the [GitHub][10] repository. However, please keep the following in mind: + + * One of the main purposes of Makeself is portability. Do not submit patches that will break supported platforms. The more platform-agnostic, the better. + * Please explain clearly what the purpose of the patch is, and how you achieved it. + +## Download + +Get the latest official distribution [here][9] (version 2.4.2). + +The latest development version can be grabbed from [GitHub][10]. Feel free to submit any patches there through the fork and pull request process. + +## Version history + + * **v1.0:** Initial public release + * **v1.1:** The archive can be passed parameters that will be passed on to the embedded script, thanks to John C. Quillan + * **v1.2:** Cosmetic updates, support for bzip2 compression and non-temporary archives. Many ideas thanks to Francois Petitjean. + * **v1.3:** More patches from Bjarni R. Einarsson and Francois Petitjean: Support for no compression (`--nocomp`), script is no longer mandatory, automatic launch in an xterm, optional verbose output, and -target archive option to indicate where to extract the files. + * **v1.4:** Many patches from Francois Petitjean: improved UNIX compatibility, automatic integrity checking, support of LSM files to get info on the package at run time.. + * **v1.5.x:** A lot of bugfixes, and many other patches, including automatic verification through the usage of checksums. Version 1.5.5 was the stable release for a long time, even though the Web page didn't get updated ;-). Makeself was also officially made a part of the [Loki Setup installer][11], and its source is being maintained as part of this package. + * **v2.0:** Complete internal rewrite of Makeself. The command-line parsing was vastly improved, the overall maintenance of the package was greatly improved by separating the stub from makeself.sh. Also Makeself was ported and tested to a variety of Unix platforms. + * **v2.0.1:** First public release of the new 2.0 branch. Prior versions are officially obsoleted. This release introduced the `--copy` argument that was introduced in response to a need for the [UT2K3][12] Linux installer. + * **v2.1.0:** Big change : Makeself can now support multiple embedded tarballs, each stored separately with their own checksums. An existing archive can be updated with the `--append` flag. Checksums are also better managed, and the `--nochown` option for archives appeared. + * **v2.1.1:** Fixes related to the Unix compression (compress command). Some Linux distributions made the insane choice to make it unavailable, even though gzip is capable of uncompressing these files, plus some more bugfixes in the extraction and checksum code. + * **v2.1.2:** Some bug fixes. Use head -n to avoid problems with POSIX conformance. + * **v2.1.3:** Bug fixes with the command line when spawning terminals. Added `--tar`, `--noexec` for archives. Added `--nomd5` and `--nocrc` to avoid creating checksums in archives. The embedded script is now run through "eval". The `--info` output now includes the command used to create the archive. A man page was contributed by Bartosz Fenski. + * **v2.1.4:** Fixed `--info` output. Generate random directory name when extracting files to . to avoid problems. Better handling of errors with wrong permissions for the directory containing the files. Avoid some race conditions, Unset the $CDPATH variable to avoid problems if it is set. Better handling of dot files in the archive directory. + * **v2.1.5:** Made the md5sum detection consistent with the header code. Check for the presence of the archive directory. Added `--encrypt` for symmetric encryption through gpg (Eric Windisch). Added support for the digest command on Solaris 10 for MD5 checksums. Check for available disk space before extracting to the target directory (Andreas Schweitzer). Allow extraction to run asynchronously (patch by Peter Hatch). Use file descriptors internally to avoid error messages (patch by Kay Tiong Khoo). + * **v2.1.6:** Replaced one dot per file progress with a realtime progress percentage and a spinning cursor. Added `--noprogress` to prevent showing the progress during the decompression. Added `--target` dir to allow extracting directly to a target directory. (Guy Baconniere) + * **v2.2.0:** First major new release in years! Includes many bugfixes and user contributions. Please look at the [project page on Github][10] for all the details. + * **v2.3.0:** Support for archive encryption via GPG or OpenSSL. Added LZO and LZ4 compression support. Options to set the packaging date and stop the umask from being overriden. Optionally ignore check for available disk space when extracting. New option to check for root permissions before extracting. + * **v2.3.1:** Various compatibility updates. Added unit tests for Travis CI in the GitHub repo. New `--tar-extra`, `--untar-extra`, `--gpg-extra`, `--gpg-asymmetric-encrypt-sign` options. + * **v2.4.0:** Added optional support for SHA256 archive integrity checksums. + * **v2.4.2:** New --cleanup and --cleanup-args arguments for cleanup scripts. Added threading support for supported compressors. Now supports zstd compression. + * **v2.4.3:** Make explicit POSIX tar archives for increased compatibility. + * **v2.4.4:** Fixed various compatibility issues (no longer use POSIX tar archives), Github Actions to check on Solaris and FreeBSD. + * **v2.4.5:** Added `--tar-format` option to set the tar archive format (default is ustar) + +## Links + + * Check out the ["Loki Setup"][11] installer, used to install many Linux games and other applications, and of which I am the co-author. Since the demise of Loki, I am now the official maintainer of the project, and it is now being hosted here on GitHub. + * Bjarni R. Einarsson also wrote the **setup.sh** installer script, inspired by Makeself. [Check it out !][14] + +## Contact + +This script was written by [Stéphane Peter][15] (megastep at megastep.org). Any enhancements and suggestions are welcome. + +Contributions were included from John C. Quillan, Bjarni R. Einarsson, +Francois Petitjean, Ryan C. Gordon, and many contributors on GitHub. If you think I forgot +your name, don't hesitate to contact me. + +This project is now hosted on GitHub. Feel free to submit patches and bug reports on the [project page][10]. + +* * * + +[Stephane Peter][2] + + [1]: http://makeself.io/ + [2]: mailto:megastep@megastep.org + [3]: http://www.idsoftware.com/ + [4]: http://www.lokigames.com/products/myth2/updates.php3 + [5]: http://www.nvidia.com/ + [6]: http://earth.google.com/ + [7]: http://www.virtualbox.org/ + [8]: http://www.gnu.org/copyleft/gpl.html + [9]: https://github.com/megastep/makeself/releases/download/release-2.4.5/makeself-2.4.5.run + [10]: https://github.com/megastep/makeself + [11]: https://github.com/megastep/loki_setup/ + [12]: http://www.unrealtournament2003.com/ + [13]: http://www.icculus.org/ + [14]: http://bre.klaki.net/programs/setup.sh/ + [15]: https://stephanepeter.com/ diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/VERSION b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/VERSION new file mode 100644 index 0000000..59aa62c --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/VERSION @@ -0,0 +1 @@ +2.4.5 diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/make-release.sh b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/make-release.sh new file mode 100644 index 0000000..b5692d4 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/make-release.sh @@ -0,0 +1,9 @@ +#!/bin/sh +# +# Create a distributable archive of the current version of Makeself + +VER=`cat VERSION` +mkdir -p /tmp/makeself-$VER release +cp -pPR makeself* test README.md COPYING VERSION .gitmodules /tmp/makeself-$VER/ +./makeself.sh --notemp /tmp/makeself-$VER release/makeself-$VER.run "Makeself v$VER" echo "Makeself has extracted itself" + diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself-header.sh b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself-header.sh new file mode 100644 index 0000000..9409031 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself-header.sh @@ -0,0 +1,660 @@ +cat << EOF > "$archname" +#!/bin/bash +# This script was generated using Makeself $MS_VERSION +# The license covering this archive and its contents, if any, is wholly independent of the Makeself license (GPL) +# 2022.3.19-Modified the MS_Help function and some options +# Huawei Technologies Co., Ltd. + +ORIG_UMASK=\`umask\` + +CRCsum="$CRCsum" +MD5="$MD5sum" +SHA="$SHAsum" +SIGNATURE="$Signature" +TMPROOT=\${TMPDIR:="\$HOME"} +if ! test -d "\$TMPROOT"; then + TMPROOT="\$PWD" +fi +export TMPDIR="\$TMPROOT" +USER_PWD="\$PWD" +if ! test -d "\$USER_PWD"; then + exit 1 +fi +export USER_PWD +ARCHIVE_DIR=\`dirname "\$0"\` +export ARCHIVE_DIR + +name_of_file="\$0 " +pwd_of_file="\$PWD" +label="$LABEL" +script="$SCRIPT" +scriptargs="$SCRIPTARGS" +cleanup_script="${CLEANUP_SCRIPT}" +licensetxt="$LICENSE" +helpheader='$HELPHEADER' +targetdir="$archdirname" +filesizes="$filesizes" +totalsize="$totalsize" +keep="$KEEP" +nooverwrite="$NOOVERWRITE" +quiet="n" +accept="n" +nodiskspace="n" +export_conf="$EXPORT_CONF" +decrypt_cmd="$DECRYPT_CMD" +skip="$SKIP" + +print_cmd_arg="" +if type printf > /dev/null; then + print_cmd="printf" +elif test -x /usr/ucb/echo; then + print_cmd="/usr/ucb/echo" +else + print_cmd="echo" +fi + +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:\$PATH + export PATH +fi + +if test -d /usr/sfw/bin; then + PATH=\$PATH:/usr/sfw/bin + export PATH +fi + +unset CDPATH + +MS_Printf() +{ + \$print_cmd \$print_cmd_arg "\$1" +} + +MS_PrintLicense() +{ + PAGER=\${PAGER:=more} + if test x"\$licensetxt" != x; then + PAGER_PATH=\`exec <&- 2>&-; which \$PAGER || command -v \$PAGER || type \$PAGER\` + if test -x "\$PAGER_PATH"; then + echo "\$licensetxt" | \$PAGER + else + echo "\$licensetxt" + fi + if test x"\$accept" != xy; then + while true + do + MS_Printf "Please type y to accept, n otherwise: " + read yn + if test x"\$yn" = xn; then + keep=n + eval \$finish; exit 1 + break; + elif test x"\$yn" = xy; then + break; + fi + done + fi + fi +} + +MS_diskspace() +{ + ( + df -kP "\$1" | tail -1 | awk '{ if (\$4 ~ /%/) {print \$3} else {print \$4} }' + ) +} + +MS_dd() +{ + blocks=\`expr \$3 / 1024\` + bytes=\`expr \$3 % 1024\` + # Test for ibs, obs and conv feature + if dd if=/dev/zero of=/dev/null count=1 ibs=512 obs=512 conv=sync 2> /dev/null; then + dd if="\$1" ibs=\$2 skip=1 obs=1024 conv=sync 2> /dev/null | \\ + { test \$blocks -gt 0 && dd ibs=1024 obs=1024 count=\$blocks ; \\ + test \$bytes -gt 0 && dd ibs=1 obs=1024 count=\$bytes ; } 2> /dev/null + else + dd if="\$1" bs=\$2 skip=1 2> /dev/null + fi +} + +MS_dd_Progress() +{ + if test x"\$noprogress" = xy; then + MS_dd "\$@" + return \$? + fi + file="\$1" + offset=\$2 + length=\$3 + pos=0 + bsize=4194304 + while test \$bsize -gt \$length; do + bsize=\`expr \$bsize / 4\` + done + blocks=\`expr \$length / \$bsize\` + bytes=\`expr \$length % \$bsize\` + ( + dd ibs=\$offset skip=1 2>/dev/null + pos=\`expr \$pos \+ \$bsize\` + MS_Printf " 0%% " 1>&2 + if test \$blocks -gt 0; then + while test \$pos -le \$length; do + dd bs=\$bsize count=1 2>/dev/null + pcent=\`expr \$length / 100\` + pcent=\`expr \$pos / \$pcent\` + if test \$pcent -lt 100; then + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + if test \$pcent -lt 10; then + MS_Printf " \$pcent%% " 1>&2 + else + MS_Printf " \$pcent%% " 1>&2 + fi + fi + pos=\`expr \$pos \+ \$bsize\` + done + fi + if test \$bytes -gt 0; then + dd bs=\$bytes count=1 2>/dev/null + fi + MS_Printf "\b\b\b\b\b\b\b" 1>&2 + MS_Printf " 100%% " 1>&2 + ) < "\$file" +} + +MS_Help() +{ + cat << EOH >&2 +Usage: \$0 [options] +Options: + --help | -h Print this message + --info Print embedded info : title, default target directory, embedded script ... + --list Print the list of files in the archive + --check Checks integrity and version dependency of the archive + --quiet Quiet install mode, skip human-computer interactions + --nox11 Do not spawn an xterm + --noexec Do not run embedded script + --extract= Extract directly to a target directory (absolute or relative) + Usually used with --noexec to just extract files without running + --tar arg1 [arg2 ...] Access the contents of the archive through the tar command +\${helpheader} +EOH +} + +MS_Verify_Sig() +{ + GPG_PATH=\`exec <&- 2>&-; which gpg || command -v gpg || type gpg\` + MKTEMP_PATH=\`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp\` + test -x "\$GPG_PATH" || GPG_PATH=\`exec <&- 2>&-; which gpg || command -v gpg || type gpg\` + test -x "\$MKTEMP_PATH" || MKTEMP_PATH=\`exec <&- 2>&-; which mktemp || command -v mktemp || type mktemp\` + offset=\`head -n "\$skip" "\$1" | wc -c | tr -d " "\` + temp_sig=\`mktemp -t XXXXX\` + echo \$SIGNATURE | base64 --decode > "\$temp_sig" + gpg_output=\`MS_dd "\$1" \$offset \$totalsize | LC_ALL=C "\$GPG_PATH" --verify "\$temp_sig" - 2>&1\` + gpg_res=\$? + rm -f "\$temp_sig" + if test \$gpg_res -eq 0 && test \`echo \$gpg_output | grep -c Good\` -eq 1; then + if test \`echo \$gpg_output | grep -c \$sig_key\` -eq 1; then + test x"\$quiet" = xn && echo "GPG signature is good" >&2 + else + echo "GPG Signature key does not match" >&2 + exit 2 + fi + else + test x"\$quiet" = xn && echo "GPG signature failed to verify" >&2 + exit 2 + fi +} + +MS_Check() +{ + OLD_PATH="\$PATH" + PATH=\${GUESS_MD5_PATH:-"\$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=\`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum\` + test -x "\$MD5_PATH" || MD5_PATH=\`exec <&- 2>&-; which md5 || command -v md5 || type md5\` + test -x "\$MD5_PATH" || MD5_PATH=\`exec <&- 2>&-; which digest || command -v digest || type digest\` + PATH="\$OLD_PATH" + + SHA_PATH=\`exec <&- 2>&-; which shasum || command -v shasum || type shasum\` + test -x "\$SHA_PATH" || SHA_PATH=\`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum\` + + if test x"\$quiet" = xn; then + MS_Printf "Verifying archive integrity..." + fi + offset=\`head -n "\$skip" "\$1" | wc -c | tr -d " "\` + fsize=\`cat "\$1" | wc -c | tr -d " "\` + if test \$totalsize -ne \`expr \$fsize - \$offset\`; then + echo " Unexpected archive size." >&2 + exit 2 + fi + verb=\$2 + i=1 + for s in \$filesizes + do + crc=\`echo \$CRCsum | cut -d" " -f\$i\` + if test -x "\$SHA_PATH"; then + if test x"\`basename \$SHA_PATH\`" = xshasum; then + SHA_ARG="-a 256" + fi + sha=\`echo \$SHA | cut -d" " -f\$i\` + if test x"\$sha" = x0000000000000000000000000000000000000000000000000000000000000000; then + test x"\$verb" = xy && echo " \$1 does not contain an embedded SHA256 checksum." >&2 + else + shasum=\`MS_dd_Progress "\$1" \$offset \$s | eval "\$SHA_PATH \$SHA_ARG" | cut -b-64\`; + if test x"\$shasum" != x"\$sha"; then + echo "Error in SHA256 checksums: \$shasum is different from \$sha" >&2 + exit 2 + elif test x"\$quiet" = xn; then + MS_Printf " SHA256 checksums are OK." >&2 + fi + crc="0000000000"; + fi + fi + if test -x "\$MD5_PATH"; then + if test x"\`basename \$MD5_PATH\`" = xdigest; then + MD5_ARG="-a md5" + fi + md5=\`echo \$MD5 | cut -d" " -f\$i\` + if test x"\$md5" = x00000000000000000000000000000000; then + test x"\$verb" = xy && echo " \$1 does not contain an embedded MD5 checksum." >&2 + else + md5sum=\`MS_dd_Progress "\$1" \$offset \$s | eval "\$MD5_PATH \$MD5_ARG" | cut -b-32\`; + if test x"\$md5sum" != x"\$md5"; then + echo "Error in MD5 checksums: \$md5sum is different from \$md5" >&2 + exit 2 + elif test x"\$quiet" = xn; then + MS_Printf " MD5 checksums are OK." >&2 + fi + crc="0000000000"; verb=n + fi + fi + if test x"\$crc" = x0000000000; then + test x"\$verb" = xy && echo " \$1 does not contain a CRC checksum." >&2 + else + sum1=\`MS_dd_Progress "\$1" \$offset \$s | CMD_ENV=xpg4 cksum | awk '{print \$1}'\` + if test x"\$sum1" != x"\$crc"; then + echo "Error in checksums: \$sum1 is different from \$crc" >&2 + exit 2 + elif test x"\$quiet" = xn; then + MS_Printf " CRC checksums are OK." >&2 + fi + fi + i=\`expr \$i + 1\` + offset=\`expr \$offset + \$s\` + done + if test x"\$quiet" = xn; then + echo " All good." + fi +} + +MS_Decompress() +{ + if test x"\$decrypt_cmd" != x""; then + { eval "\$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "$GUNZIP_CMD" + else + eval "$GUNZIP_CMD" + fi + + if test \$? -ne 0; then + echo " ... Decompression failed." >&2 + fi +} + +UnTAR() +{ + if test x"\$quiet" = xn; then + tar \$1vf - $UNTAR_EXTRA 2>&1 || { echo " ... Extraction failed." >&2; kill -15 \$$; } + else + tar \$1f - $UNTAR_EXTRA 2>&1 || { echo Extraction failed. >&2; kill -15 \$$; } + fi +} + +MS_exec_cleanup() { + if test x"\$cleanup" = xy && test x"\$cleanup_script" != x""; then + cleanup=n + cd "\$tmpdir" + eval "\"\$cleanup_script\" \$scriptargs \$cleanupargs" + fi +} + +MS_cleanup() +{ + echo 'Signal caught, cleaning up' >&2 + MS_exec_cleanup + cd "\$TMPROOT" + rm -rf "\$tmpdir" + eval \$finish; exit 15 +} + +Script_Args_Check() +{ + script_supported_args=\$(echo \${helpheader} | grep -o -E "\-\-[^ ]+" | awk -F"=" {'print \$1'}) + arg_to_test=\$(echo \$1|awk -F"=" {'print \$1'}) + + for arg in \${script_supported_args}; + do + if test x"\$arg_to_test" = x"\$arg" ;then + return + fi + done + + MS_Help + exit 1 +} + +finish=true +xterm_loop= +noprogress=$NOPROGRESS +nox11=$NOX11 +copy=$COPY +ownership=$OWNERSHIP +verbose=n +cleanup=y +cleanupargs= +sig_key= + +initargs="\$@" + +while [ -n "\$*" ] +do + case "\$1" in + -h | --help) + MS_Help + exit 0 + ;; + -q | --quiet) + quiet=y + noprogress=y + shift + ;; + --info) + echo Identification: "\$label" + echo Target directory: "\$targetdir" + echo Uncompressed size: $USIZE KB + echo Compression: $COMPRESS + if test x"$ENCRYPT" != x""; then + echo Encryption: $ENCRYPT + fi + echo Date of packaging: $DATE + echo Built with Makeself version $MS_VERSION + echo Build command was: "$MS_COMMAND" + if test x"\$script" != x; then + echo Script run after extraction: + echo " " \$script \$scriptargs + fi + if test x"$copy" = xcopy; then + echo "Archive will copy itself to a temporary location" + fi + if test x"$NEED_ROOT" = xy; then + echo "Root permissions required for extraction" + fi + if test x"$KEEP" = xy; then + echo "directory \$targetdir is permanent" + else + echo "\$targetdir will be removed after extraction" + fi + exit 0 + ;; + --list) + echo Target directory: \$targetdir + offset=\`head -n "\$skip" "\$0" | wc -c | tr -d " "\` + for s in \$filesizes + do + MS_dd "\$0" \$offset \$s | MS_Decompress | UnTAR t + offset=\`expr \$offset + \$s\` + done + exit 0 + ;; + --tar) + offset=\`head -n "\$skip" "\$0" | wc -c | tr -d " "\` + arg1="\$2" + shift 2 || { MS_Help; exit 1; } + for s in \$filesizes + do + MS_dd "\$0" \$offset \$s | MS_Decompress | tar "\$arg1" - "\$@" + offset=\`expr \$offset + \$s\` + done + exit 0 + ;; + --check) + MS_Check "\$0" y + scriptargs="\$scriptargs \$1" + shift + ;; + --noexec) + script="" + cleanup_script="" + shift + ;; + --extract=*) + keep=y + targetdir=\`echo \$1 | cut -d"=" -f2 \` + if ! shift; then MS_Help; exit 1; fi + ;; + --nox11) + nox11=y + shift + ;; + --xwin) + if test "$NOWAIT" = n; then + finish="echo Press Return to close this window...; read junk" + fi + xterm_loop=1 + shift + ;; + --phase2) + copy=phase2 + shift + ;; + --repack | --repack-path=*) + Script_Args_Check \$1 + scriptargs="\$scriptargs '\$1'" + shift + if [[ ! "\$1" =~ ^-.* ]]; then + scriptargs="\$scriptargs '\$1'" + shift + fi + ;; + *) + Script_Args_Check \$1 + scriptargs="\$scriptargs '\$1'" + shift + ;; + esac +done + +quiet_para="" +if test x"\$quiet" = xy; then + quiet_para="--quiet " +fi +scriptargs="--\$name_of_file""--\"\$pwd_of_file\""" \$quiet_para""\$scriptargs" + +if test x"\$quiet" = xy -a x"\$verbose" = xy; then + echo Cannot be verbose and quiet at the same time. >&2 + exit 1 +fi + +if test x"$NEED_ROOT" = xy -a \`id -u\` -ne 0; then + echo "Administrative privileges required for this archive (use su or sudo)" >&2 + exit 1 +fi + +if test x"\$copy" \!= xphase2; then + MS_PrintLicense +fi + +case "\$copy" in +copy) + tmpdir="\$TMPROOT"/makeself.\$RANDOM.\`date +"%y%m%d%H%M%S"\`.\$\$ + mkdir "\$tmpdir" || { + echo "Could not create temporary directory \$tmpdir" >&2 + exit 1 + } + SCRIPT_COPY="\$tmpdir/makeself" + echo "Copying to a temporary location..." >&2 + cp "\$0" "\$SCRIPT_COPY" + chmod +x "\$SCRIPT_COPY" + cd "\$TMPROOT" + exec "\$SCRIPT_COPY" --phase2 -- \$initargs + ;; +phase2) + finish="\$finish ; rm -rf \`dirname \$0\`" + ;; +esac + +if test x"\$nox11" = xn; then + if tty -s; then # Do we have a terminal? + : + else + if test x"\$DISPLAY" != x -a x"\$xterm_loop" = x; then # No, but do we have X? + if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable + GUESS_XTERMS="xterm gnome-terminal rxvt dtterm eterm Eterm xfce4-terminal lxterminal kvt konsole aterm terminology" + for a in \$GUESS_XTERMS; do + if type \$a >/dev/null 2>&1; then + XTERM=\$a + break + fi + done + chmod a+x \$0 || echo Please add execution rights on \$0 + if test \`echo "\$0" | cut -c1\` = "/"; then # Spawn a terminal! + exec \$XTERM -e "\$0 --xwin \$initargs" + else + exec \$XTERM -e "./\$0 --xwin \$initargs" + fi + fi + fi + fi +fi + +if test x"\$targetdir" = x.; then + tmpdir="." +else + if test x"\$keep" = xy; then + if test x"\$nooverwrite" = xy && test -d "\$targetdir"; then + echo "Target directory \$targetdir already exists, aborting." >&2 + exit 1 + fi + if test x"\$quiet" = xn; then + echo "Creating directory \$targetdir" >&2 + fi + tmpdir="\$targetdir" + dashp="-p" + else + tmpdir="\$TMPROOT/selfgz\$\$\$RANDOM" + dashp="" + fi + mkdir \$dashp "\$tmpdir" || { + echo 'Cannot create target directory' \$tmpdir >&2 + echo 'You should try option --extract=' >&2 + eval \$finish + exit 1 + } +fi + +location="\`pwd\`" +if test x"\$SETUP_NOCHECK" != x1; then + MS_Check "\$0" +fi +offset=\`head -n "\$skip" "\$0" | wc -c | tr -d " "\` + +if test x"\$verbose" = xy; then + MS_Printf "About to extract $USIZE KB in \$tmpdir ... Proceed ? [Y/n] " + read yn + if test x"\$yn" = xn; then + eval \$finish; exit 1 + fi +fi + +if test x"\$quiet" = xn; then + # Decrypting with openssl will ask for password, + # the prompt needs to start on new line + if test x"$ENCRYPT" = x"openssl"; then + echo "Decrypting and uncompressing \$label..." + else + MS_Printf "Uncompressing \$label" + fi +fi +res=3 +if test x"\$keep" = xn; then + trap MS_cleanup 1 2 3 15 +fi + +if test x"\$nodiskspace" = xn; then + leftspace=\`MS_diskspace "\$tmpdir"\` + if test -n "\$leftspace"; then + if test "\$leftspace" -lt $USIZE; then + echo + echo "Not enough space left in "\`dirname \$tmpdir\`" (\$leftspace KB) to decompress \$0 ($USIZE KB)" >&2 + if test x"\$keep" = xn; then + echo "Consider setting TMPDIR to a directory with more free space." + fi + eval \$finish; exit 1 + fi + fi +fi + +for s in \$filesizes +do + if MS_dd_Progress "\$0" \$offset \$s | MS_Decompress | ( cd "\$tmpdir"; umask \$ORIG_UMASK ; UnTAR xp ) 1>/dev/null; then + if test x"\$ownership" = xy; then + (cd "\$tmpdir"; chown -R \`id -u\` .; chgrp -R \`id -g\` .) + fi + else + echo >&2 + echo "Unable to decompress \$0" >&2 + eval \$finish; exit 1 + fi + offset=\`expr \$offset + \$s\` +done +if test x"\$quiet" = xn; then + echo +fi + +cd "\$tmpdir" +res=0 +if test x"\$script" != x; then + if test x"\$export_conf" = x"y"; then + MS_BUNDLE="\$0" + MS_LABEL="\$label" + MS_SCRIPT="\$script" + MS_SCRIPTARGS="\$scriptargs" + MS_ARCHDIRNAME="\$archdirname" + MS_KEEP="\$KEEP" + MS_NOOVERWRITE="\$NOOVERWRITE" + MS_COMPRESS="\$COMPRESS" + MS_CLEANUP="\$cleanup" + export MS_BUNDLE MS_LABEL MS_SCRIPT MS_SCRIPTARGS + export MS_ARCHDIRNAME MS_KEEP MS_NOOVERWRITE MS_COMPRESS + fi + + if test x"\$verbose" = x"y"; then + yn="x" + while test x"\$yn" != x -a x"\$yn" != xy -a x"\$yn" != xY -a x"\$yn" != xn -a x"\$yn" != xN + do + MS_Printf "OK to execute: \$script \$scriptargs \$* ? [Y/n] " + read yn + if test x"\$yn" = x -o x"\$yn" = xy -o x"\$yn" = xY; then + eval "\"\$script\" \$scriptargs \"\\\$@\""; res=\$?; + elif test x"\$yn" = xn -o x"\$yn" = xN; then + echo "Unable to decompress \$script ,because of aborting! ";res=\$? + else + echo "Input value is unacceptable,please try again." + fi + done + else + eval "\"\$script\" \$scriptargs \"\\\$@\""; res=\$? + fi + if test "\$res" -ne 0; then + test x"\$verbose" = xy && echo "The program '\$script' returned an error code (\$res)" >&2 + fi +fi + +MS_exec_cleanup + +if test x"\$keep" = xn; then + cd "\$TMPROOT" + rm -rf "\$tmpdir" +fi +eval \$finish; exit \$res +EOF diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.1 b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.1 new file mode 100644 index 0000000..81bf6e4 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.1 @@ -0,0 +1,110 @@ +.TH "MAKESELF" "1" "2.4.5" +.SH "NAME" +makeself \- An utility to generate self-extractable archives. +.SH "SYNTAX" +.B makeself [\fIoptions\fP] archive_dir file_name label +.B [\fIstartup_script\fP] [\fIargs\fP] +.SH "DESCRIPTION" +This program is a free (GPL) utility designed to create self-extractable +archives from a directory. +.SH "OPTIONS" +The following options are supported. +.TP 15 +.B -v, --version +Prints out the makeself version number and exits. +.TP +.B -h, --help +Print out help information. +.TP +.B --tar-quietly +Suppress verbose output from the tar command +.TP +.B --quiet +Do not print any messages other than errors +.TP +.B --gzip +Compress using gzip (default if detected). +.TP +.B --bzip2 +Compress using bzip2. +.TP +.B --pbzip2 +Compress using pbzip2. +.TP +.B --xz +Compress using xz. +.TP +.B --lzo +Compress using lzop. +.TP +.B --lz4 +Compress using lz4. +.TP +.B --compress +Compress using the UNIX 'compress' command. +.TP +.B --nocomp +Do not compress the data. +.TP +.B --complevel lvl +Specify the compression level for gzip,bzip2,pbzui2,xz,lzo or lz4 +.TP +.B --notemp +The archive will create archive_dir in the current directory and +uncompress in ./archive_dir. +.TP +.B --copy +Upon extraction, the archive will first copy itself to a temporary directory. +.TP +.B --append +Append more files to an existing makeself archive. The label and startup scripts will then be ignored. +.TP +.B --current +Files will be extracted to the current directory. Both --current and --target dir imply --notemp. +.TP +.B --target dir +Extract directly to a target directory. Directory path can be either absolute or relative. +.TP +.B --header file +Specify location of the header script. +.TP +.B --cleanup file +Specify a cleanup script that executes on interrupt and when finished successfully. +.TP +.B --follow +Follow the symlinks in the archive. +.TP +.B --noprogress +Do not show the progress during the decompression. +.TP +.B --nox11 +Disable automatic spawn of an xterm if running in X11. +.TP +.B --nowait +Do not wait for user input after executing embedded program from an xterm. +.TP +.B --nomd5 +Do not create a MD5 checksum for the archive. +.TP +.B --nocrc +Do not create a CRC32 checksum for the archive. +.TP +.B --lsm file +LSM file describing the package. +.B --packaging-date date +Use provided string as the packaging date instead of the current date. +.SH "EXAMPLES" +Here is an example, assuming the user has a package image stored in a /home/joe/mysoft, +and he wants to generate a self-extracting package named mysoft.sh, which will launch +the "setup" script initially stored in /home/joe/mysoft: +.TP +makeself.sh /home/joe/mysoft mysoft.sh "Joe's Nice Software Package" ./setup +.TP +Here is also how I created the makeself.run archive which contains the Makeself distribution: +.TP +makeself.sh --notemp makeself makeself.run "Makeself by Stephane Peter" echo "Makeself has extracted itself" +.SH "AUTHORS" +Makeself has been written by Stéphane Peter . +.BR +This man page was originally written by Bartosz Fenski for the +Debian GNU/Linux distribution (but it may be used by others). diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.lsm b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.lsm new file mode 100644 index 0000000..3c4cea8 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.lsm @@ -0,0 +1,16 @@ +Begin3 +Title: makeself.sh +Version: 2.4.5 +Description: makeself.sh is a shell script that generates a self-extractable + tar.gz archive from a directory. The resulting file appears as a shell + script, and can be launched as is. The archive will then uncompress + itself to a temporary directory and an arbitrary command will be + executed (for example an installation script). This is pretty similar + to archives generated with WinZip Self-Extractor in the Windows world. +Keywords: Installation archive tar winzip +Author: Stephane Peter (megastep@megastep.org) +Maintained-by: Stephane Peter (megastep@megastep.org) +Original-site: https://makeself.io/ +Platform: Unix +Copying-policy: GPL +End diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.sh b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.sh new file mode 100644 index 0000000..c8ea565 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/makeself.sh @@ -0,0 +1,822 @@ +#!/bin/sh +# +# Makeself version 2.4.x +# by Stephane Peter +# +# Utility to create self-extracting tar.gz archives. +# The resulting archive is a file holding the tar.gz archive with +# a small Shell script stub that uncompresses the archive to a temporary +# directory and then executes a given script from withing that directory. +# +# Makeself home page: https://makeself.io/ +# +# Version 2.0 is a rewrite of version 1.0 to make the code easier to read and maintain. +# +# Version history : +# - 1.0 : Initial public release +# - 1.1 : The archive can be passed parameters that will be passed on to +# the embedded script, thanks to John C. Quillan +# - 1.2 : Package distribution, bzip2 compression, more command line options, +# support for non-temporary archives. Ideas thanks to Francois Petitjean +# - 1.3 : More patches from Bjarni R. Einarsson and Francois Petitjean: +# Support for no compression (--nocomp), script is no longer mandatory, +# automatic launch in an xterm, optional verbose output, and -target +# archive option to indicate where to extract the files. +# - 1.4 : Improved UNIX compatibility (Francois Petitjean) +# Automatic integrity checking, support of LSM files (Francois Petitjean) +# - 1.5 : Many bugfixes. Optionally disable xterm spawning. +# - 1.5.1 : More bugfixes, added archive options -list and -check. +# - 1.5.2 : Cosmetic changes to inform the user of what's going on with big +# archives (Quake III demo) +# - 1.5.3 : Check for validity of the DISPLAY variable before launching an xterm. +# More verbosity in xterms and check for embedded command's return value. +# Bugfix for Debian 2.0 systems that have a different "print" command. +# - 1.5.4 : Many bugfixes. Print out a message if the extraction failed. +# - 1.5.5 : More bugfixes. Added support for SETUP_NOCHECK environment variable to +# bypass checksum verification of archives. +# - 1.6.0 : Compute MD5 checksums with the md5sum command (patch from Ryan Gordon) +# - 2.0 : Brand new rewrite, cleaner architecture, separated header and UNIX ports. +# - 2.0.1 : Added --copy +# - 2.1.0 : Allow multiple tarballs to be stored in one archive, and incremental updates. +# Added --nochown for archives +# Stopped doing redundant checksums when not necesary +# - 2.1.1 : Work around insane behavior from certain Linux distros with no 'uncompress' command +# Cleaned up the code to handle error codes from compress. Simplified the extraction code. +# - 2.1.2 : Some bug fixes. Use head -n to avoid problems. +# - 2.1.3 : Bug fixes with command line when spawning terminals. +# Added --tar for archives, allowing to give arbitrary arguments to tar on the contents of the archive. +# Added --noexec to prevent execution of embedded scripts. +# Added --nomd5 and --nocrc to avoid creating checksums in archives. +# Added command used to create the archive in --info output. +# Run the embedded script through eval. +# - 2.1.4 : Fixed --info output. +# Generate random directory name when extracting files to . to avoid problems. (Jason Trent) +# Better handling of errors with wrong permissions for the directory containing the files. (Jason Trent) +# Avoid some race conditions (Ludwig Nussel) +# Unset the $CDPATH variable to avoid problems if it is set. (Debian) +# Better handling of dot files in the archive directory. +# - 2.1.5 : Made the md5sum detection consistent with the header code. +# Check for the presence of the archive directory +# Added --encrypt for symmetric encryption through gpg (Eric Windisch) +# Added support for the digest command on Solaris 10 for MD5 checksums +# Check for available disk space before extracting to the target directory (Andreas Schweitzer) +# Allow extraction to run asynchronously (patch by Peter Hatch) +# Use file descriptors internally to avoid error messages (patch by Kay Tiong Khoo) +# - 2.1.6 : Replaced one dot per file progress with a realtime progress percentage and a spining cursor (Guy Baconniere) +# Added --noprogress to prevent showing the progress during the decompression (Guy Baconniere) +# Added --target dir to allow extracting directly to a target directory (Guy Baconniere) +# - 2.2.0 : Many bugfixes, updates and contributions from users. Check out the project page on Github for the details. +# - 2.3.0 : Option to specify packaging date to enable byte-for-byte reproducibility. (Marc Pawlowsky) +# - 2.4.0 : Optional support for SHA256 checksums in archives. +# - 2.4.2 : Add support for threads for several compressors. (M. Limber) +# Added zstd support. +# - 2.4.3 : Make explicit POSIX tar archives for increased compatibility. +# - 2.4.5 : Added --tar-format to override ustar tar archive format +# +# (C) 1998-2021 by Stephane Peter +# +# This software is released under the terms of the GNU GPL version 2 and above +# Please read the license at http://www.gnu.org/copyleft/gpl.html +# Self-extracting archives created with this script are explictly NOT released under the term of the GPL +# + +MS_VERSION=2.4.5 +MS_COMMAND="$0" +unset CDPATH + +for f in ${1+"$@"}; do + MS_COMMAND="$MS_COMMAND \\\\ + \\\"$f\\\"" +done + +# For Solaris systems +if test -d /usr/xpg4/bin; then + PATH=/usr/xpg4/bin:$PATH + export PATH +fi + +# Procedures + +MS_Usage() +{ + echo "Usage: $0 [args] archive_dir file_name label startup_script [script_args]" + echo "args can be one or more of the following :" + echo " --version | -v : Print out Makeself version number and exit" + echo " --help | -h : Print out this help message" + echo " --tar-quietly : Suppress verbose output from the tar command" + echo " --quiet | -q : Do not print any messages other than errors." + echo " --gzip : Compress using gzip (default if detected)" + echo " --pigz : Compress with pigz" + echo " --zstd : Compress with zstd" + echo " --bzip2 : Compress using bzip2 instead of gzip" + echo " --pbzip2 : Compress using pbzip2 instead of gzip" + echo " --xz : Compress using xz instead of gzip" + echo " --lzo : Compress using lzop instead of gzip" + echo " --lz4 : Compress using lz4 instead of gzip" + echo " --compress : Compress using the UNIX 'compress' command" + echo " --complevel lvl : Compression level for gzip pigz zstd xz lzo lz4 bzip2 and pbzip2 (default 9)" + echo " --threads thds : Number of threads to be used by compressors that support parallelization." + echo " Omit to use compressor's default. Most useful (and required) for opting" + echo " into xz's threading, usually with '--threads=0' for all available cores." + echo " pbzip2 and pigz are parallel by default, and setting this value allows" + echo " limiting the number of threads they use." + echo " --base64 : Instead of compressing, encode the data using base64" + echo " --gpg-encrypt : Instead of compressing, encrypt the data using GPG" + echo " --gpg-asymmetric-encrypt-sign" + echo " : Instead of compressing, asymmetrically encrypt and sign the data using GPG" + echo " --gpg-extra opt : Append more options to the gpg command line" + echo " --ssl-encrypt : Instead of compressing, encrypt the data using OpenSSL" + echo " --ssl-passwd pass : Use the given password to encrypt the data using OpenSSL" + echo " --ssl-pass-src src : Use the given src as the source of password to encrypt the data" + echo " using OpenSSL. See \"PASS PHRASE ARGUMENTS\" in man openssl." + echo " If this option is not supplied, the user will be asked to enter" + echo " encryption password on the current terminal." + echo " --ssl-no-md : Do not use \"-md\" option not supported by older OpenSSL." + echo " --nochown : Do not give the target folder to the current user (default)" + echo " --chown : Give the target folder to the current user recursively" + echo " --nocomp : Do not compress the data" + echo " --notemp : The archive will create archive_dir in the" + echo " current directory and uncompress in ./archive_dir" + echo " --needroot : Check that the root user is extracting the archive before proceeding" + echo " --copy : Upon extraction, the archive will first copy itself to" + echo " a temporary directory" + echo " --append : Append more files to an existing Makeself archive" + echo " The label and startup scripts will then be ignored" + echo " --target dir : Extract directly to a target directory" + echo " directory path can be either absolute or relative" + echo " --nooverwrite : Do not extract the archive if the specified target directory exists" + echo " --current : Files will be extracted to the current directory" + echo " Both --current and --target imply --notemp" + echo " --tar-format opt : Specify a tar archive format (default is ustar)" + echo " --tar-extra opt : Append more options to the tar command line" + echo " --untar-extra opt : Append more options to the during the extraction of the tar archive" + echo " --nomd5 : Don't calculate an MD5 for archive" + echo " --nocrc : Don't calculate a CRC for archive" + echo " --sha256 : Compute a SHA256 checksum for the archive" + echo " --header file : Specify location of the header script" + echo " --cleanup file : Specify a cleanup script that executes on interrupt and when finished successfully." + echo " --follow : Follow the symlinks in the archive" + echo " --noprogress : Do not show the progress during the decompression" + echo " --nox11 : Disable automatic spawn of a xterm" + echo " --nowait : Do not wait for user input after executing embedded" + echo " program from an xterm" + echo " --sign passphrase : Signature private key to sign the package with" + echo " --lsm file : LSM file describing the package" + echo " --license file : Append a license file" + echo " --help-header file : Add a header to the archive's --help output" + echo " --packaging-date date" + echo " : Use provided string as the packaging date" + echo " instead of the current date." + echo + echo " --keep-umask : Keep the umask set to shell default, rather than overriding when executing self-extracting archive." + echo " --export-conf : Export configuration variables to startup_script" + echo + echo "Do not forget to give a fully qualified startup script name" + echo "(i.e. with a ./ prefix if inside the archive)." + exit 1 +} + +# Default settings +if type gzip >/dev/null 2>&1; then + COMPRESS=gzip +elif type compress >/dev/null 2>&1; then + COMPRESS=compress +else + echo "ERROR: missing commands: gzip, compress" >&2 + MS_Usage +fi +ENCRYPT=n +PASSWD="" +PASSWD_SRC="" +OPENSSL_NO_MD=n +COMPRESS_LEVEL=9 +DEFAULT_THREADS=123456 # Sentinel value +THREADS=$DEFAULT_THREADS +KEEP=n +CURRENT=n +NOX11=n +NOWAIT=n +APPEND=n +TAR_QUIETLY=n +KEEP_UMASK=n +QUIET=n +NOPROGRESS=n +COPY=none +NEED_ROOT=n +TAR_ARGS=rvf +TAR_FORMAT=ustar +TAR_EXTRA="" +GPG_EXTRA="" +DU_ARGS=-ks +HEADER=`dirname "$0"`/makeself-header.sh +SIGNATURE="" +TARGETDIR="" +NOOVERWRITE=n +DATE=`LC_ALL=C date` +EXPORT_CONF=n +SHA256=n +OWNERSHIP=n +SIGN=n +GPG_PASSPHRASE="" + +# LSM file stuff +LSM_CMD="echo No LSM. >> \"\$archname\"" + +while true +do + case "$1" in + --version | -v) + echo Makeself version $MS_VERSION + exit 0 + ;; + --pbzip2) + COMPRESS=pbzip2 + shift + ;; + --bzip2) + COMPRESS=bzip2 + shift + ;; + --gzip) + COMPRESS=gzip + shift + ;; + --pigz) + COMPRESS=pigz + shift + ;; + --zstd) + COMPRESS=zstd + shift + ;; + --xz) + COMPRESS=xz + shift + ;; + --lzo) + COMPRESS=lzo + shift + ;; + --lz4) + COMPRESS=lz4 + shift + ;; + --compress) + COMPRESS=compress + shift + ;; + --base64) + COMPRESS=base64 + shift + ;; + --gpg-encrypt) + COMPRESS=gpg + shift + ;; + --gpg-asymmetric-encrypt-sign) + COMPRESS=gpg-asymmetric + shift + ;; + --gpg-extra) + GPG_EXTRA="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --ssl-encrypt) + ENCRYPT=openssl + shift + ;; + --ssl-passwd) + PASSWD=$2 + shift 2 || { MS_Usage; exit 1; } + ;; + --ssl-pass-src) + PASSWD_SRC=$2 + shift 2 || { MS_Usage; exit 1; } + ;; + --ssl-no-md) + OPENSSL_NO_MD=y + shift + ;; + --nocomp) + COMPRESS=none + shift + ;; + --complevel) + COMPRESS_LEVEL="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --threads) + THREADS="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --nochown) + OWNERSHIP=n + shift + ;; + --chown) + OWNERSHIP=y + shift + ;; + --notemp) + KEEP=y + shift + ;; + --copy) + COPY=copy + shift + ;; + --current) + CURRENT=y + KEEP=y + shift + ;; + --tar-format) + TAR_FORMAT="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --tar-extra) + TAR_EXTRA="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --untar-extra) + UNTAR_EXTRA="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --target) + TARGETDIR="$2" + KEEP=y + shift 2 || { MS_Usage; exit 1; } + ;; + --sign) + SIGN=y + GPG_PASSPHRASE="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --nooverwrite) + NOOVERWRITE=y + shift + ;; + --needroot) + NEED_ROOT=y + shift + ;; + --header) + HEADER="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --cleanup) + CLEANUP_SCRIPT="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --license) + # We need to escape all characters having a special meaning in double quotes + LICENSE=$(sed 's/\\/\\\\/g; s/"/\\\"/g; s/`/\\\`/g; s/\$/\\\$/g' "$2") + shift 2 || { MS_Usage; exit 1; } + ;; + --follow) + TAR_ARGS=rvhf + DU_ARGS=-ksL + shift + ;; + --noprogress) + NOPROGRESS=y + shift + ;; + --nox11) + NOX11=y + shift + ;; + --nowait) + NOWAIT=y + shift + ;; + --nomd5) + NOMD5=y + shift + ;; + --sha256) + SHA256=y + shift + ;; + --nocrc) + NOCRC=y + shift + ;; + --append) + APPEND=y + shift + ;; + --lsm) + LSM_CMD="cat \"$2\" >> \"\$archname\"" + shift 2 || { MS_Usage; exit 1; } + ;; + --packaging-date) + DATE="$2" + shift 2 || { MS_Usage; exit 1; } + ;; + --help-header) + HELPHEADER=`sed -e "s/'/'\\\\\''/g" $2` + shift 2 || { MS_Usage; exit 1; } + [ -n "$HELPHEADER" ] && HELPHEADER="$HELPHEADER +" + ;; + --tar-quietly) + TAR_QUIETLY=y + shift + ;; + --keep-umask) + KEEP_UMASK=y + shift + ;; + --export-conf) + EXPORT_CONF=y + shift + ;; + -q | --quiet) + QUIET=y + shift + ;; + -h | --help) + MS_Usage + ;; + -*) + echo Unrecognized flag : "$1" + MS_Usage + ;; + *) + break + ;; + esac +done + +if test $# -lt 1; then + MS_Usage +else + if test -d "$1"; then + archdir="$1" + else + echo "Directory $1 does not exist." >&2 + exit 1 + fi +fi +archname="$2" + +if test "$QUIET" = "y" || test "$TAR_QUIETLY" = "y"; then + if test "$TAR_ARGS" = "rvf"; then + TAR_ARGS="rf" + elif test "$TAR_ARGS" = "rvhf"; then + TAR_ARGS="rhf" + fi +fi + +if test "$APPEND" = y; then + if test $# -lt 2; then + MS_Usage + fi + + # Gather the info from the original archive + OLDENV=`sh "$archname" --dumpconf` + if test $? -ne 0; then + echo "Unable to update archive: $archname" >&2 + exit 1 + else + eval "$OLDENV" + OLDSKIP=`expr $SKIP + 1` + fi +else + if test "$KEEP" = n -a $# = 3; then + echo "ERROR: Making a temporary archive with no embedded command does not make sense!" >&2 + echo >&2 + MS_Usage + fi + # We don't want to create an absolute directory unless a target directory is defined + if test "$CURRENT" = y; then + archdirname="." + elif test x"$TARGETDIR" != x; then + archdirname="$TARGETDIR" + else + archdirname=`basename "$1"` + fi + + if test $# -lt 3; then + MS_Usage + fi + + LABEL="$3" + SCRIPT="$4" + test "x$SCRIPT" = x || shift 1 + shift 3 + SCRIPTARGS="$*" +fi + +if test "$KEEP" = n -a "$CURRENT" = y; then + echo "ERROR: It is A VERY DANGEROUS IDEA to try to combine --notemp and --current." >&2 + exit 1 +fi + +case $COMPRESS in +gzip) + GZIP_CMD="gzip -c$COMPRESS_LEVEL" + GUNZIP_CMD="gzip -cd" + ;; +pigz) + GZIP_CMD="pigz -$COMPRESS_LEVEL" + if test $THREADS -ne $DEFAULT_THREADS; then # Leave as the default if threads not indicated + GZIP_CMD="$GZIP_CMD --processes $THREADS" + fi + GUNZIP_CMD="gzip -cd" + ;; +zstd) + GZIP_CMD="zstd -$COMPRESS_LEVEL" + if test $THREADS -ne $DEFAULT_THREADS; then # Leave as the default if threads not indicated + GZIP_CMD="$GZIP_CMD --threads=$THREADS" + fi + GUNZIP_CMD="zstd -cd" + ;; +pbzip2) + GZIP_CMD="pbzip2 -c$COMPRESS_LEVEL" + if test $THREADS -ne $DEFAULT_THREADS; then # Leave as the default if threads not indicated + GZIP_CMD="$GZIP_CMD -p$THREADS" + fi + GUNZIP_CMD="bzip2 -d" + ;; +bzip2) + GZIP_CMD="bzip2 -$COMPRESS_LEVEL" + GUNZIP_CMD="bzip2 -d" + ;; +xz) + GZIP_CMD="xz -c$COMPRESS_LEVEL" + # Must opt-in by specifying a value since not all versions of xz support threads + if test $THREADS -ne $DEFAULT_THREADS; then + GZIP_CMD="$GZIP_CMD --threads=$THREADS" + fi + GUNZIP_CMD="xz -d" + ;; +lzo) + GZIP_CMD="lzop -c$COMPRESS_LEVEL" + GUNZIP_CMD="lzop -d" + ;; +lz4) + GZIP_CMD="lz4 -c$COMPRESS_LEVEL" + GUNZIP_CMD="lz4 -d" + ;; +base64) + GZIP_CMD="base64" + GUNZIP_CMD="base64 --decode -i -" + ;; +gpg) + GZIP_CMD="gpg $GPG_EXTRA -ac -z$COMPRESS_LEVEL" + GUNZIP_CMD="gpg -d" + ENCRYPT="gpg" + ;; +gpg-asymmetric) + GZIP_CMD="gpg $GPG_EXTRA -z$COMPRESS_LEVEL -es" + GUNZIP_CMD="gpg --yes -d" + ENCRYPT="gpg" + ;; +compress) + GZIP_CMD="compress -fc" + GUNZIP_CMD="(type compress >/dev/null 2>&1 && compress -fcd || gzip -cd)" + ;; +none) + GZIP_CMD="cat" + GUNZIP_CMD="cat" + ;; +esac + +if test x"$ENCRYPT" = x"openssl"; then + if test x"$APPEND" = x"y"; then + echo "Appending to existing archive is not compatible with OpenSSL encryption." >&2 + fi + + ENCRYPT_CMD="openssl enc -aes-256-cbc -salt" + DECRYPT_CMD="openssl enc -aes-256-cbc -d" + + if test x"$OPENSSL_NO_MD" != x"y"; then + ENCRYPT_CMD="$ENCRYPT_CMD -md sha256" + DECRYPT_CMD="$DECRYPT_CMD -md sha256" + fi + + if test -n "$PASSWD_SRC"; then + ENCRYPT_CMD="$ENCRYPT_CMD -pass $PASSWD_SRC" + elif test -n "$PASSWD"; then + ENCRYPT_CMD="$ENCRYPT_CMD -pass pass:$PASSWD" + fi +fi + +tmpfile="${TMPDIR:-/tmp}/mkself$$" + +if test -f "$HEADER"; then + oldarchname="$archname" + archname="$tmpfile" + # Generate a fake header to count its lines + SKIP=0 + . "$HEADER" + SKIP=`cat "$tmpfile" |wc -l` + # Get rid of any spaces + SKIP=`expr $SKIP` + rm -f "$tmpfile" + if test "$QUIET" = "n"; then + echo "Header is $SKIP lines long" >&2 + fi + archname="$oldarchname" +else + echo "Unable to open header file: $HEADER" >&2 + exit 1 +fi + +if test "$QUIET" = "n"; then + echo +fi + +if test "$APPEND" = n; then + if test -f "$archname"; then + echo "WARNING: Overwriting existing file: $archname" >&2 + fi +fi + +USIZE=`du $DU_ARGS "$archdir" | awk '{print $1}'` + +if test "." = "$archdirname"; then + if test "$KEEP" = n; then + archdirname="makeself-$$-`date +%Y%m%d%H%M%S`" + fi +fi + +test -d "$archdir" || { echo "Error: $archdir does not exist."; rm -f "$tmpfile"; exit 1; } +if test "$QUIET" = "n"; then + echo "About to compress $USIZE KB of data..." + echo "Adding files to archive named \"$archname\"..." +fi + +# See if we have GNU tar +TAR=`exec <&- 2>&-; which gtar || command -v gtar || type gtar` +test -x "$TAR" || TAR=tar + +tmparch="${TMPDIR:-/tmp}/mkself$$.tar" +( + if test "$APPEND" = "y"; then + tail -n "+$OLDSKIP" "$archname" | eval "$GUNZIP_CMD" > "$tmparch" + fi + cd "$archdir" + # "Determining if a directory is empty" + # https://www.etalabs.net/sh_tricks.html + find . \ + \( \ + ! -type d \ + -o \ + \( -links 2 -exec sh -c ' + is_empty () ( + cd "$1" + set -- .[!.]* ; test -f "$1" && return 1 + set -- ..?* ; test -f "$1" && return 1 + set -- * ; test -f "$1" && return 1 + return 0 + ) + is_empty "$0"' {} \; \ + \) \ + \) -print \ + | LC_ALL=C sort \ + | sed 's/./\\&/g' \ + | xargs $TAR $TAR_EXTRA --format $TAR_FORMAT -$TAR_ARGS "$tmparch" +) || { + echo "ERROR: failed to create temporary archive: $tmparch" + rm -f "$tmparch" "$tmpfile" + exit 1 +} + +USIZE=`du $DU_ARGS "$tmparch" | awk '{print $1}'` + +eval "$GZIP_CMD" <"$tmparch" >"$tmpfile" || { + echo "ERROR: failed to create temporary file: $tmpfile" + rm -f "$tmparch" "$tmpfile" + exit 1 +} +rm -f "$tmparch" + +if test x"$ENCRYPT" = x"openssl"; then + echo "About to encrypt archive \"$archname\"..." + { eval "$ENCRYPT_CMD -in $tmpfile -out ${tmpfile}.enc" && mv -f ${tmpfile}.enc $tmpfile; } || \ + { echo Aborting: could not encrypt temporary file: "$tmpfile".; rm -f "$tmpfile"; exit 1; } +fi + +fsize=`cat "$tmpfile" | wc -c | tr -d " "` + +# Compute the checksums + +shasum=0000000000000000000000000000000000000000000000000000000000000000 +md5sum=00000000000000000000000000000000 +crcsum=0000000000 + +if test "$NOCRC" = y; then + if test "$QUIET" = "n"; then + echo "skipping crc at user request" + fi +else + crcsum=`CMD_ENV=xpg4 cksum < "$tmpfile" | sed -e 's/ /Z/' -e 's/ /Z/' | cut -dZ -f1` + if test "$QUIET" = "n"; then + echo "CRC: $crcsum" + fi +fi + +if test "$SHA256" = y; then + SHA_PATH=`exec <&- 2>&-; which shasum || command -v shasum || type shasum` + if test -x "$SHA_PATH"; then + shasum=`eval "$SHA_PATH -a 256" < "$tmpfile" | cut -b-64` + else + SHA_PATH=`exec <&- 2>&-; which sha256sum || command -v sha256sum || type sha256sum` + shasum=`eval "$SHA_PATH" < "$tmpfile" | cut -b-64` + fi + if test "$QUIET" = "n"; then + if test -x "$SHA_PATH"; then + echo "SHA256: $shasum" + else + echo "SHA256: none, SHA command not found" + fi + fi +fi +if test "$NOMD5" = y; then + if test "$QUIET" = "n"; then + echo "Skipping md5sum at user request" + fi +else + # Try to locate a MD5 binary + OLD_PATH=$PATH + PATH=${GUESS_MD5_PATH:-"$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"} + MD5_ARG="" + MD5_PATH=`exec <&- 2>&-; which md5sum || command -v md5sum || type md5sum` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which md5 || command -v md5 || type md5` + test -x "$MD5_PATH" || MD5_PATH=`exec <&- 2>&-; which digest || command -v digest || type digest` + PATH=$OLD_PATH + if test -x "$MD5_PATH"; then + if test `basename ${MD5_PATH}`x = digestx; then + MD5_ARG="-a md5" + fi + md5sum=`eval "$MD5_PATH $MD5_ARG" < "$tmpfile" | cut -b-32` + if test "$QUIET" = "n"; then + echo "MD5: $md5sum" + fi + else + if test "$QUIET" = "n"; then + echo "MD5: none, MD5 command not found" + fi + fi +fi +if test "$SIGN" = y; then + GPG_PATH=`exec <&- 2>&-; which gpg || command -v gpg || type gpg` + if test -x "$GPG_PATH"; then + SIGNATURE=`$GPG_PATH --pinentry-mode=loopback --batch --yes --passphrase "$GPG_PASSPHRASE" --output - --detach-sig $tmpfile | base64 | tr -d \\\\n` + if test "$QUIET" = "n"; then + echo "Signature: $SIGNATURE" + fi + else + echo "Missing gpg command" >&2 + fi +fi + +totalsize=0 +for size in $fsize; +do + totalsize=`expr $totalsize + $size` +done + +if test "$APPEND" = y; then + mv "$archname" "$archname".bak || exit + + # Prepare entry for new archive + filesizes="$fsize" + CRCsum="$crcsum" + MD5sum="$md5sum" + SHAsum="$shasum" + Signature="$SIGNATURE" + # Generate the header + . "$HEADER" + # Append the new data + cat "$tmpfile" >> "$archname" + + chmod +x "$archname" + rm -f "$archname".bak + if test "$QUIET" = "n"; then + echo "Self-extractable archive \"$archname\" successfully updated." + fi +else + filesizes="$fsize" + CRCsum="$crcsum" + MD5sum="$md5sum" + SHAsum="$shasum" + Signature="$SIGNATURE" + + # Generate the header + . "$HEADER" + + # Append the compressed tar data after the stub + if test "$QUIET" = "n"; then + echo + fi + cat "$tmpfile" >> "$archname" + chmod +x "$archname" + if test "$QUIET" = "n"; then + echo Self-extractable archive \"$archname\" successfully created. + fi +fi +rm -f "$tmpfile" diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/makeself/run-tests.sh b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/run-tests.sh new file mode 100644 index 0000000..31ee165 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/makeself/run-tests.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# Run every available test - Bash needed +cd test +for test in *test; +do + echo "Running test $test ..." + bash $test || { echo "*** ERROR: Test '$test' failed!"; exit 1; } +done diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/merge_aicpu_info_json.sh b/Increase_Bedore_pipe/No_increase/cmake/util/merge_aicpu_info_json.sh new file mode 100644 index 0000000..a977bd5 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/merge_aicpu_info_json.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +project_path=$1 +build_path=$2 +vendor_name=customize +echo $@ +if [[ ! -d "$project_path" ]]; then + echo "[ERROR] No projcet path is provided" + exit 1 +fi + +if [[ ! -d "$build_path" ]]; then + echo "[ERROR] No build path is provided" + exit 1 +fi + +if [[ ! -d "$ASCEND_OPP_PATH" ]]; then + echo "[ERROR] No opp install path is provided" + exit 1 +fi +custom_exist_info_json=$ASCEND_OPP_PATH/vendors/$vendor_name/op_impl/cpu/config/cust_aicpu_kernel.json +custom_new_info_json=$build_path/makepkg/packages/vendors/$vendor_name/op_impl/cpu/config/cust_aicpu_kernel.json +temp_info_json=$build_path/makepkg/packages/vendors/$vendor_name/op_impl/cpu/config/temp_cust_aicpu_kernel.json + +if [[ -f "$custom_exist_info_json" ]] && [[ -f "$custom_new_info_json" ]]; then + cp -f $custom_exist_info_json $temp_info_json + chmod +w $temp_info_json + python3 ${project_path}/cmake/util/insert_op_info.py ${custom_new_info_json} ${temp_info_json} + cp -f $temp_info_json $custom_new_info_json + rm -f $temp_info_json +fi diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/opdesc_parser.py b/Increase_Bedore_pipe/No_increase/cmake/util/opdesc_parser.py new file mode 100644 index 0000000..c38e79e --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/opdesc_parser.py @@ -0,0 +1,260 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import sys +import os + + +OP_ALL = '__ALLOP__' +SOC_ALL = '__ALLSOC__' +SOC_TO_SHORT_SOC_MAP = { + "ascend910a": "ascend910", + "ascend910proa": "ascend910", + "ascend910b": "ascend910", + "ascend910prob": "ascend910", + "ascend910premiuma": "ascend910", + "ascend910b1": "ascend910b", + "ascend910b2": "ascend910b", + "ascend910b3": "ascend910b", + "ascend910b4": "ascend910b", + "ascend310p1": "ascend310p", + "ascend310p3": "ascend310p", + "ascend310p3vir01": "ascend310p", + "ascend310p3vir02": "ascend310p", + "ascend310p3vir04": "ascend310p", + "ascend310p3vir08": "ascend310p", + "ascend310b1": "ascend310b", + "bs9sx1aa": "bs9sx1a" +} + + +class OpDesc: + def __init__(self: any, op_type: str): + self.op_type = op_type + self.attr_list = [] + self.attr_val = {} + self.input_name = [] + self.input_type = [] + self.input_dtype = [] + self.input_fmt = [] + self.output_name = [] + self.output_type = [] + self.output_dtype = [] + self.output_fmt = [] + self.op_fmt_sel = False + self.op_chk_support = False + self.op_intf = '' + self.kern_name = '' + self.op_file = '' + self.op_replay_flag = False + self.op_replay_batch = False + self.input_idx = -1 + self.output_idx = -1 + self.max_block_dim = 32 + self.max_shape_size = 268435456 + self.dynamic_shape = False + self.op_range_limit = '' + self.custom_compile_options = {} + self.custom_all_compile_options = {} + + @staticmethod + def _parse_digit(conf: str) -> int: + return int(conf.split('=')[1]) + + @staticmethod + def _parse_flag(conf: str) -> bool: + if 'true' == conf.split('=')[1]: + return True + return False + + @staticmethod + def _parse_str(conf: str) -> str: + return conf.split('=')[1] + + @staticmethod + def _parse_list(conf: str) -> list: + return conf.split('=')[1].split(',') + + def parse_input(self: any, conf: str): + if conf.startswith('input{}.name'.format(int(self.input_idx) + 1)): + self.input_idx += 1 + self.input_name.append(self._parse_str(conf)) + elif conf.startswith('input{}.paramType'.format(int(self.input_idx))): + self.input_type.append(self._parse_str(conf)) + elif conf.startswith('input{}.dtype'.format(int(self.input_idx))): + self.input_dtype.append(self._parse_str(conf)) + elif conf.startswith('input{}.format'.format(int(self.input_idx))): + self.input_fmt.append(self._parse_str(conf)) + else: + return + + def parse_output(self: any, conf: str): + if conf.startswith('output{}.name'.format(int(self.output_idx) + 1)): + self.output_idx += 1 + self.output_name.append(self._parse_str(conf)) + elif conf.startswith('output{}.paramType'.format(int(self.output_idx))): + self.output_type.append(self._parse_str(conf)) + elif conf.startswith('output{}.dtype'.format(int(self.output_idx))): + self.output_dtype.append(self._parse_str(conf)) + elif conf.startswith('output{}.format'.format(int(self.output_idx))): + self.output_fmt.append(self._parse_str(conf)) + else: + return + + def parse_op_format(self: any, conf: str): + self.op_fmt_sel = self._parse_flag(conf) + + def parse_check_support(self: any, conf: str): + self.op_chk_support = self._parse_flag(conf) + + def parse_range_limit(self: any, conf: str): + self.op_range_limit = self._parse_str(conf) + + def parse_kern_name(self: any, conf: str): + self.kern_name = self._parse_str(conf) + + def parse_op_intf(self: any, conf: str): + self.op_intf = self._parse_str(conf) + + def parse_op_file(self: any, conf: str): + self.op_file = self._parse_str(conf) + + def parse_dynamic_shape(self: any, conf: str): + self.dynamic_shape = self._parse_flag(conf) + + def parse_attr_list(self: any, conf: str): + self.attr_list = self._parse_list(conf) + + def parse_attr_val(self: any, conf: str): + for attr in self.attr_list: + if self.attr_val.get(attr) is None: + self.attr_val[attr] = {} + if conf.startswith('attr_{}.type'.format(attr)): + self.attr_val.get(attr)['type'] = self._parse_str(conf) + elif conf.startswith('attr_{}.paramType'.format(attr)): + self.attr_val.get(attr)['paramType'] = self._parse_str(conf) + elif conf.startswith('attr_{}.defaultValue'.format(attr)): + self.attr_val.get(attr)['defaultValue'] = self._parse_str(conf) + + def parse_replay_val(self: any, batch_list: list, iterator_list: list): + if self.op_type in batch_list: + self.op_replay_flag = True + self.op_replay_batch = True + elif self.op_type in iterator_list: + self.op_replay_flag = True + self.op_replay_batch = False + + +def _is_op_type_in_opdesc(op_descs: list, op_type: str): + for op in op_descs: + if op_type == op.op_type: + return True + return False + + +def _set_all_options_to_opdescs(op_descs, soc_ver_compile_options): + for op in op_descs: + op.custom_all_compile_options = soc_ver_compile_options + + +def _set_options_to_opdesc(op_descs, op_type, soc_ver_compile_options): + for op in op_descs: + if op.op_type != op_type: + continue + op.custom_compile_options = soc_ver_compile_options + + +def _trans_soc_ver_to_short(soc_ver: str): + low_soc_ver = soc_ver.lower() + if low_soc_ver not in SOC_TO_SHORT_SOC_MAP: + print(f'WARNING: caution: {soc_ver} will trans into ascend910, if not your intention,' + f'use ascend910b1~4 instead') + return SOC_TO_SHORT_SOC_MAP[low_soc_ver] + + +def _get_op_custom_options(op_descs: list, auto_gen_dir: str): + if auto_gen_dir is None: + return {} + file = os.path.join(auto_gen_dir, "custom_compile_options.ini") + if not os.path.exists(file): + print(f'WARNING: cannot find {auto_gen_dir}/custom_compile_options.ini') + return {} + with open (file, 'r') as fd: + lines = fd.readlines() + for line in lines: + param_list = str.split(line.rstrip('\n'), ',') + if len(param_list) != 3: + raise Exception(f'ERROR: custom compile option {param_list} len is not 3') + op_type = param_list[0] + if op_type.upper() == 'ALL': + op_type = OP_ALL + if op_type != OP_ALL and _is_op_type_in_opdesc(op_descs, op_type) == False: + print(f'WARNING: op: {op_type} are not exists in this project') + continue + soc_ver_compile_options = {} + soc_ver = param_list[1] + options_str = param_list[2] + options = str.split(options_str, ';') + if soc_ver == '': + soc_ver_compile_options[SOC_ALL] = options + else: + soc_ver_list = str.split(soc_ver, ';') + for ver in soc_ver_list: + short_ver = _trans_soc_ver_to_short(ver) + soc_ver_compile_options[short_ver] = options + if op_type == OP_ALL: + _set_all_options_to_opdescs(op_descs, soc_ver_compile_options) + else: + _set_options_to_opdesc(op_descs, op_type, soc_ver_compile_options) + + +def get_op_desc(file: str, batch_list: list, iterator_list: list, builder: any, + op_type: list, auto_gen_dir: str = None) -> list: + op_descs = [] + op_match = False + with open (file, 'r') as fd: + lines = fd.readlines() + for line in lines: + line = line.strip() + if line.startswith('['): + name = line[1:-1] + if op_type is None or name in op_type: + op_match = True + op_desc = builder(name) + op_desc.parse_replay_val(batch_list, iterator_list) + op_descs.append(op_desc) + else: + op_match = False + if op_type is not None and len(op_descs) == len(op_type): + return op_descs + continue + if not op_match: + continue + if line.startswith('input'): + op_desc.parse_input(line) + elif line.startswith('output'): + op_desc.parse_output(line) + elif line.startswith('dynamicFormat.flag'): + op_desc.parse_op_format(line) + elif line.startswith('needCheckSupport.flag'): + op_desc.parse_check_support(line) + elif line.startswith('rangeLimit.value'): + op_desc.parse_range_limit(line) + elif line.startswith('opInterface.value'): + op_desc.parse_op_intf(line) + elif line.startswith('kernel.name'): + op_desc.parse_kern_name(line) + elif line.startswith('opFile.value'): + op_desc.parse_op_file(line) + elif line.startswith('dynamicShapeSupport.flag'): + op_desc.parse_dynamic_shape(line) + elif line.startswith('attr.list'): + op_desc.parse_attr_list(line) + elif line.startswith('attr_'): + op_desc.parse_attr_val(line) + _get_op_custom_options(op_descs, auto_gen_dir) + return op_descs diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/parse_ini_to_json.py b/Increase_Bedore_pipe/No_increase/cmake/util/parse_ini_to_json.py new file mode 100644 index 0000000..721465f --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/parse_ini_to_json.py @@ -0,0 +1,338 @@ +# Copyright 2020-2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +parser ini to json +""" + +import json +import os +import stat +import sys + + +ATTR_TYPE_LIST = ["int", "float", "bool", "str", "listInt", "listFloat", "listBool", "listStr", "listListInt", + "type", "listType", "tensor", "listTensor"] +ATTR_PARAMTYPE_LIST = ["optional", "required"] +BOOL_FLAG_KEY = ["dynamicFormat", "dynamicShapeSupport", "dynamicRankSupport", "precision_reduce", "heavyOp", + "needCheckSupport"] +BOOL_LIST = ["true", "false"] +DTYPE_LIST = ["float16", "float", "float32", "int8", "int16", "int32", "uint8", "uint16", "uint32", "bool", + "int64", "uint64", "qint8", "qint16", "qint32", "quint8", "quint16", "double", "complex64", + "complex128", "string", "resource", "dual", "dual_sub_int8", "dual_sub_uint8", "string_ref", + "int4", "bfloat16", "uint1"] +FORMAT_LIST = ["NCHW", "NHWC", "ND", "NC1HWC0", "FRACTAL_Z", "NC1C0HWPAD", "NHWC1C0", "FSR_NCHW", "FRACTAL_DECONV", + "C1HWNC0", "FRACTAL_DECONV_TRANSPOSE", "FRACTAL_DECONV_SP_STRIDE_TRANS", "NC1HWC0_C04", + "FRACTAL_Z_C04", "CHWN", "FRACTAL_DECONV_SP_STRIDE8_TRANS", "HWCN", "NC1KHKWHWC0", "BN_WEIGHT", + "FILTER_HWCK", "HASHTABLE_LOOKUP_LOOKUPS", "HASHTABLE_LOOKUP_KEYS", "HASHTABLE_LOOKUP_VALUE", + "HASHTABLE_LOOKUP_OUTPUT", "HASHTABLE_LOOKUP_HITS", "C1HWNCoC0", "MD", "NDHWC", "FRACTAL_ZZ", + "FRACTAL_NZ", "NCDHW", "DHWCN", "NDC1HWC0", "FRACTAL_Z_3D", "CN", "NC", "DHWNC", + "FRACTAL_Z_3D_TRANSPOSE", "FRACTAL_ZN_LSTM", "FRACTAL_ZN_RNN", "FRACTAL_Z_G", "NULL"] + + +def parse_ini_files(ini_files): + """ + parse ini files to json + Parameters: + ---------------- + ini_files:input file list + return:ops_info + ---------------- + """ + tbe_ops_info = {} + for ini_file in ini_files: + check_file_size(ini_file) + parse_ini_to_obj(ini_file, tbe_ops_info) + return tbe_ops_info + + +def check_file_size(input_file): + try: + file_size = os.path.getsize(input_file) + except OSError as os_error: + print('[ERROR] Failed to open "%s". %s' % (input_file, str(os_error))) + raise OSError from os_error + if file_size > 10*1024*1024: + print('[WARN] The size of %s exceeds 10MB, it may take more time to run, please wait.' % input_file) + + +def parse_ini_to_obj(ini_file, tbe_ops_info): + """ + parse ini file to json obj + Parameters: + ---------------- + ini_file:ini file path + tbe_ops_info:ops_info + ---------------- + """ + with open(ini_file) as ini_file: + lines = ini_file.readlines() + op_dict = {} + op_name = "" + find_op_type = False + for line in lines: + line = line.rstrip() + if line == "": + continue + if line.startswith("["): + if line.endswith("]"): + op_name = line[1:-1] + op_dict = {} + tbe_ops_info[op_name] = op_dict + find_op_type = True + elif "=" in line: + key1 = line[:line.index("=")] + key2 = line[line.index("=")+1:] + key1_0, key1_1 = key1.split(".") + if key1_0 not in op_dict: + op_dict[key1_0] = {} + if key1_1 in op_dict.get(key1_0): + raise RuntimeError("Op:" + op_name + " " + key1_0 + " " + + key1_1 + " is repeated!") + dic_key = op_dict.get(key1_0) + dic_key[key1_1] = key2 + else: + continue + if not find_op_type: + raise RuntimeError("Not find OpType in .ini file.") + + +def check_output_exist(op_dict, is_valid): + """ + Function Description: + Check output is exist + Parameter: op_dict + Parameter: is_valid + """ + if "output0" in op_dict: + output0_dict = op_dict.get("output0") + if output0_dict.get("name", None) is None: + is_valid = False + print("output0.name is required in .ini file!") + else: + is_valid = False + print("output0 is required in .ini file!") + return is_valid + + +def check_attr_dict(attr_dict, is_valid, attr): + """ + Function Description: + Check attr_dict + Parameter: attr_dict + Parameter: is_valid + Parameter: attr + """ + attr_type = attr_dict.get("type") + value = attr_dict.get("value") + param_type = attr_dict.get("paramType") + if attr_type is None or value is None: + is_valid = False + print("If attr.list is exist, {0}.type and {0}.value is required".format(attr)) + if param_type and param_type not in ATTR_PARAMTYPE_LIST: + is_valid = False + print("{0}.paramType only support {1}.".format(attr, ATTR_PARAMTYPE_LIST)) + if attr_type and attr_type not in ATTR_TYPE_LIST: + is_valid = False + print("{0}.type only support {1}.".format(attr, ATTR_TYPE_LIST)) + return is_valid + + +def check_attr(op_dict, is_valid): + """ + Function Description: + Check attr + Parameter: op_dict + Parameter: is_valid + """ + if "attr" in op_dict: + attr_dict = op_dict.get("attr") + attr_list_str = attr_dict.get("list", None) + if attr_list_str is None: + is_valid = False + print("attr.list is required in .ini file!") + else: + attr_list = attr_list_str.split(",") + for attr_name in attr_list: + attr = "attr_" + attr_name.strip() + attr_dict = op_dict.get(attr) + if attr_dict: + is_valid = check_attr_dict(attr_dict, is_valid, attr) + else: + is_valid = False + print("%s is required in .ini file, when attr.list is %s!" % (attr, attr_list_str)) + return is_valid + + +def check_bool_flag(op_dict, is_valid): + """ + Function Description: + check_bool_flag + Parameter: op_dict + Parameter: is_valid + """ + for key in BOOL_FLAG_KEY: + if key in op_dict: + op_bool_key = op_dict.get(key) + if op_bool_key.get("flag").strip() not in BOOL_LIST: + is_valid = False + print("{0}.flag only support {1}.".format(key, BOOL_LIST)) + return is_valid + + +def check_type_format(op_info, is_valid, op_info_key): + """ + Function Description: + Check type and format + Parameter: op_info + Parameter: is_valid + Parameter: op_info_key + """ + op_info_dtype_str = op_info.get("dtype") + op_info_dtype_num = 0 + op_info_format_num = 0 + if op_info_dtype_str: + op_info_dtype = op_info_dtype_str.split(",") + op_info_dtype_num = len(op_info_dtype) + for dtype in op_info_dtype: + if dtype.strip() not in DTYPE_LIST: + is_valid = False + print("{0}.dtype not support {1}.".format(op_info_key, dtype)) + op_info_format_str = op_info.get("format") + if op_info_format_str: + op_info_format = op_info_format_str.split(",") + op_info_format_num = len(op_info_format) + for op_format in op_info_format: + if op_format.strip() not in FORMAT_LIST: + is_valid = False + print("{0}.format not support {1}.".format(op_info_key, op_format)) + if op_info_dtype_num > 0 and op_info_format_num > 0: + if op_info_dtype_num != op_info_format_num: + is_valid = False + print("The number of {0}.dtype not match the number of {0}.format.".format(op_info_key)) + return is_valid + + +def check_op_info(tbe_ops): + """ + Function Description: + Check info. + Parameter: tbe_ops + Return Value: is_valid + """ + print("\n\n==============check valid for ops info start==============") + required_op_input_info_keys = ["paramType", "name"] + required_op_output_info_keys = ["paramType", "name"] + param_type_valid_value = ["dynamic", "optional", "required"] + is_valid = True + for op_key in tbe_ops: + op_dict = tbe_ops[op_key] + for op_info_key in op_dict: + if op_info_key.startswith("input"): + op_input_info = op_dict[op_info_key] + missing_keys = [] + for required_op_input_info_key in required_op_input_info_keys: + if required_op_input_info_key not in op_input_info: + missing_keys.append(required_op_input_info_key) + if len(missing_keys) > 0: + print("op: " + op_key + " " + op_info_key + " missing: " + + ",".join(missing_keys)) + is_valid = False + else: + if not op_input_info["paramType"] in param_type_valid_value: + print("op: " + op_key + " " + op_info_key + \ + " paramType not valid, valid key:[dynamic, " + "optional, required]") + is_valid = False + is_valid = check_type_format(op_input_info, is_valid, op_info_key) + if op_info_key.startswith("output"): + op_input_info = op_dict[op_info_key] + missing_keys = [] + for required_op_input_info_key in required_op_output_info_keys: + if required_op_input_info_key not in op_input_info: + missing_keys.append(required_op_input_info_key) + if len(missing_keys) > 0: + print("op: " + op_key + " " + op_info_key + " missing: " + + ",".join(missing_keys)) + is_valid = False + else: + if not op_input_info["paramType"] in param_type_valid_value: + print("op: " + op_key + " " + op_info_key + + " paramType not valid, valid key:[dynamic, " + "optional, required]") + is_valid = False + is_valid = check_type_format(op_input_info, is_valid, op_info_key) + is_valid = check_attr(op_dict, is_valid) + is_valid = check_bool_flag(op_dict, is_valid) + print("==============check valid for ops info end================\n\n") + return is_valid + + +def write_json_file(tbe_ops_info, json_file_path): + """ + Save info to json file + Parameters: + ---------------- + tbe_ops_info: ops_info + json_file_path: json file path + ---------------- + """ + json_file_real_path = os.path.realpath(json_file_path) + wr_flag = os.O_WRONLY | os.O_CREAT + wr_mode = stat.S_IWUSR | stat.S_IRUSR + with os.fdopen(os.open(json_file_real_path, wr_flag, wr_mode), 'w') as file_path: + # Only the owner and group have rights + os.chmod(json_file_real_path, stat.S_IWGRP + stat.S_IWUSR + stat.S_IRGRP + + stat.S_IRUSR) + json.dump(tbe_ops_info, file_path, sort_keys=True, indent=4, + separators=(',', ':')) + print("Compile op info cfg successfully.") + + +def parse_ini_to_json(ini_file_paths, outfile_path): + """ + parse ini files to json file + Parameters: + ---------------- + ini_file_paths: list of ini file path + outfile_path: output file path + ---------------- + """ + tbe_ops_info = parse_ini_files(ini_file_paths) + if not check_op_info(tbe_ops_info): + print("Compile op info cfg failed.") + return False + write_json_file(tbe_ops_info, outfile_path) + return True + + +if __name__ == '__main__': + args = sys.argv + + OUTPUT_FILE_PATH = "tbe_ops_info.json" + ini_file_path_list = [] + + for arg in args: + if arg.endswith("ini"): + ini_file_path_list.append(arg) + OUTPUT_FILE_PATH = arg.replace(".ini", ".json") + if arg.endswith("json"): + OUTPUT_FILE_PATH = arg + + if len(ini_file_path_list) == 0: + ini_file_path_list.append("tbe_ops_info.ini") + + if not parse_ini_to_json(ini_file_path_list, OUTPUT_FILE_PATH): + sys.exit(1) + sys.exit(0) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/preset_parse.py b/Increase_Bedore_pipe/No_increase/cmake/util/preset_parse.py new file mode 100644 index 0000000..8f1124b --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/preset_parse.py @@ -0,0 +1,23 @@ +import json +import sys +import os + + +def get_config_opts(file): + src_dir = os.path.abspath(os.path.dirname(file)) + opts = '' + with open(file, 'r') as fd: + config = json.load(fd) + for conf in config: + if conf == 'configurePresets': + for node in config[conf]: + macros = node.get('cacheVariables') + if macros is not None: + for key in macros: + opts += '-D{}={} '.format(key, macros[key]['value']) + opts = opts.replace('${sourceDir}', src_dir) + print(opts) + + +if __name__ == "__main__": + get_config_opts(sys.argv[1]) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/replay_codegen.py b/Increase_Bedore_pipe/No_increase/cmake/util/replay_codegen.py new file mode 100644 index 0000000..1baa364 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/replay_codegen.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +""" +Created on Feb 28 20:56:45 2020 +Copyright (c) Huawei Technologies Co., Ltd. 2020-2021. All rights reserved. +""" + +import os +import stat +import collections +import kernel_entry as keb +from tiling_data_def_build import gen_tiling +import code_channel_infer +import const_var + +PYF_PATH = os.path.dirname(__file__) + +ReplayCodeGenParams = collections.namedtuple('ReplayCodeGenParams',\ +['op_type', 'impl', 'tiling_file', 'kernel', 'entry', 'argn', 'op_replay_batch', 'max_block_dim', 'max_shape_size']) + + +class ReplayCodeGen: + def __init__(self, replayCodeGenParams): + self.op_type = replayCodeGenParams.op_type + self.impl = replayCodeGenParams.impl + self.tiling_file = replayCodeGenParams.tiling_file + self.tiling_data_file = '' + self.kernel = replayCodeGenParams.kernel + self.entry = replayCodeGenParams.entry + self.argn = replayCodeGenParams.argn + self.batch = False + self.outdir = '' + self.data_type = 'uint8_t' + self.blknum = 32 + self.op_replay_batch = replayCodeGenParams.op_replay_batch + self.max_block_dim = replayCodeGenParams.max_block_dim + self.max_shape_size = replayCodeGenParams.max_shape_size + + def set_batch(self, is_batch): + self.batch = is_batch + + def set_outdir(self, outdir): + self.outdir = outdir + + def gen_replay(self, ops_product: str): + kerentry = os.path.join(self.outdir, self.kernel + '_entry.cce') + kerimpl = os.path.join(self.outdir, self.kernel + '_impl.cpp') + replayimpl = os.path.join(self.outdir, self.kernel + '_replay.cpp') + if self.batch: + reptmp = os.path.join(PYF_PATH, 'batch_replay_impl.temp') + else: + reptmp = os.path.join(PYF_PATH, 'replay_impl.temp') + kertmp = os.path.join(PYF_PATH, 'kernel_impl.temp') + self._gen_kentry(kerentry) + self._gen_kimpl_code(kerimpl, kertmp) + self._gen_tiling_data_header() + self._gen_replay_code(replayimpl, reptmp, ops_product) + + def _gen_tiling_data_header(self): + self.tiling_data_file = os.path.join(self.outdir, self.kernel + '_tiling_data.h') + gen_tiling(self.tiling_file, self.tiling_data_file) + + def _gen_kimpl_code(self, src, tmpfile): + with open(tmpfile, 'r') as fd: + temp = fd.read() + temp = temp.replace('__CCE_FILE__', self.impl) + with os.fdopen(os.open(src, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(temp) + + def _gen_replay_code(self, src, tmpfile, ops_product: str): + with open(tmpfile, 'r') as fd: + temp = fd.read() + temp = temp.replace('__ARG_NUM__', str(self.argn)) + argdef = [] + kargs = [] + for i in range(0, self.argn): + argdef.append('{} *'.format(self.data_type)) + kargs.append('({} *)GetArg({})'.format(self.data_type, i)) + temp = temp.replace('__ARGS_DEF__', ', '.join(argdef)) + temp = temp.replace('__KERNEL_ARGS__', ', '.join(kargs)) + temp = temp.replace('__KERNEL_FUN__', self.entry) + core_type_infer = 'core_type' + code_channel = code_channel_infer.infer_code_channel(code_channel_infer.InfoCodeChanelParams(self.impl,\ + self.tiling_data_file, self.kernel, self.outdir, ops_product, None)) + if code_channel == code_channel_infer.CODE_VEC: + core_type_infer = '0' + elif code_channel == code_channel_infer.CODE_CUBE: + core_type_infer = '1' + temp = temp.replace('__CORE_TYPE__', core_type_infer) + # regist function + temp = temp.replace('__OPS_PRODUCT__', ops_product) + temp = temp.replace('__OPTYPE__', self.op_type) + with os.fdopen(os.open(src, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(temp) + + def _gen_kentry(self, src): + kf = '' + pre_alloc_str = 'A' * 256 + if self.batch: + kf += keb.batch_code_gen("K{:02d}_{}{}".format(0, self.entry, pre_alloc_str), self.argn, self.data_type) + else: + kf += keb.mc_code_gen("K{:02d}_{}{}".format(0, self.entry, pre_alloc_str),\ + self.argn, self.data_type, self.blknum) + with os.fdopen(os.open(src, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(kf) diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/replay_impl.temp b/Increase_Bedore_pipe/No_increase/cmake/util/replay_impl.temp new file mode 100644 index 0000000..1d30dd8 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/replay_impl.temp @@ -0,0 +1,120 @@ +#include +#include +#include +#include +#include +#include +#include "replay_def.h" +#include "code_gen.h" +#include "replay_fun.h" +#include "register/op_check.h" +#define __ASCENDC_REPLAY_CODE__ +using namespace std; +using namespace optiling; +using namespace AscendCReplay; + +extern "C" void __KERNEL_FUN__ (__ARGS_DEF__, const char *); +extern "C" int elf_append(char *elf, uint32_t elfSize, char *jit, int kernum, int blknum[], char *atext[], + int alen[], int atlen, const char* kernelname[]); + +#define KERNEL_N 1 +#define ARG_N (__ARG_NUM__) +#define MAX_L (1024 * 1024 * 100) +#define MAX_E (1024 * 1024) + +int __KERNEL_FUN___replay___OPS_PRODUCT__(ReplayFuncParam& param, const int core_type) +{ + // gen type 1 : direct call codes 0: load .o file + if (param.gentype < 0 || param.gentype > 1) { + printf("Error: call replay gen type is %d, should only be 1 or 0\n", param.gentype); + return 0; + } else if (param.gentype == 1 && param.objptr == nullptr) { + printf("Error: call replay with direct call mode, but code obj addr is null\n"); + return 0; + } else if (param.gentype == 0 && param.output_kernel_file == nullptr) { + printf("Error: call replay with object file mode, but object file path is null\n"); + return 0; + } + // core_type 0:MIX 1:CUBE 2:VEC + if (core_type < 0 || core_type > 2) { + printf("Error: call replay core type is %d !\n", core_type); + return 0; + } + g_coreType = __CORE_TYPE__; + g_taskRation = param.task_ration; + g_tilingKey = param.tiling_key; + + unsigned char *buf, *jit; + char *kernel[KERNEL_N * 32]; + int len[KERNEL_N * 32]; + int blknum[KERNEL_N]; + int max; + block_num = param.block_dim; + g_ubBase = block_num; + uint8_t *code = (uint8_t *)malloc(MAX_L); + uint8_t *pos = code; + struct timespec tp1, tp2; + + clock_gettime(CLOCK_MONOTONIC, &tp1); + if (block_num > 32) { + printf("Error: block_num > 32\n"); + return 0; + } + //__OP_FOPEN__ + for (int i = 0; i < KERNEL_N; i++) { + for (int j = 0; j < ARG_N; j++) + AddArg(j, ARG_STEP * (j + 1)); + for (block_idx = 0; block_idx < block_num; block_idx++) { + //__OP_SET_KERNEL__ + int code_idx = i * block_num + block_idx; +#ifdef FP_CEILING + SetCtrlFloatEnable(); +#else + SetCtrlFloatDisable(); +#endif + CodeInit(pos, false); + __KERNEL_FUN__(__KERNEL_ARGS__, param.tiling_data); + CodeEnd(); + kernel[code_idx] = (char *)pos; + len[code_idx] = CodeLen(); + pos += len[code_idx]; + printf("kernel %d core %ld code generated len %d\n", i, block_idx, len[code_idx]); + } + blknum[i] = block_num; + } + //__OP_FCLOSE__ + clock_gettime(CLOCK_MONOTONIC, &tp2); + buf = (unsigned char *)malloc(MAX_E); + int fd = open(param.entry_file, O_RDONLY); + if (fd < 0) { + printf("[error]: cannot find entry.o : %s\n", param.entry_file); + return 0; + } + uint32_t bufSize = read(fd, buf, MAX_E); + if (bufSize <= 0) { + printf("[error]: entry.o : %s is too small ! \n", param.entry_file); + } + close(fd); + jit = (unsigned char *)malloc(MAX_L); + printf("total code generated %ld\n", pos - code); + int sz = elf_append((char *)buf, bufSize, (char *)jit, KERNEL_N, blknum, kernel, len, pos - code, ¶m.kernel_name); + if (tp1.tv_sec != tp2.tv_sec) { + printf("%ld NS\n", tp2.tv_nsec + 1000000000 - tp1.tv_nsec); + } else { + printf("%ld NS\n", tp2.tv_nsec - tp1.tv_nsec); + } + printf("new elf size %d\n", sz); + if (param.gentype == 0) { + fd = open(param.output_kernel_file, O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); + (void)write(fd, jit, sz); + close(fd); + free(jit); + } else if (param.gentype == 1) { + *param.objptr = (char*)jit; + } + free(buf); + free(code); + return sz; +} + +REG_REPLAY_FUNC(__OPTYPE__, __OPS_PRODUCT__, __KERNEL_FUN___replay___OPS_PRODUCT__); diff --git a/Increase_Bedore_pipe/No_increase/cmake/util/tiling_data_def_build.py b/Increase_Bedore_pipe/No_increase/cmake/util/tiling_data_def_build.py new file mode 100644 index 0000000..a963042 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/cmake/util/tiling_data_def_build.py @@ -0,0 +1,84 @@ +#!/usr/bin/env python +# coding=utf-8 +""" +Function: +The replay funtion entry +Copyright Information: +Huawei Technologies Co., Ltd. All Rights Reserved © 2020 +""" + +import sys +import os +import stat +import re +import const_var + + +def gen_tiling(tiling_header_file: str, tiling_file_out: str): + if not os.path.exists(tiling_header_file): + print("warning: no userdef tiling header file: ", tiling_header_file) + return + print("generate tiling def header file: ", tiling_file_out) + tmp_name = os.path.splitext(os.path.basename(tiling_header_file))[0].upper() + tiling_source = '#ifndef __{}_H__\n'.format(tmp_name) + tiling_source += '#define __{}_H__\n\n'.format(tmp_name) + tiling_source += '#include \n' + tiling_source += '#include \n\n' + tiling_source += '#include "kernel_tiling/kernel_tiling.h"\n\n' + end_source = "" + pattern = re.compile(r'[(](.*)[)]', re.S) + with open(tiling_header_file, 'r') as fd: + lines = fd.readlines() + for line in lines: + line = line.strip() + if (line.startswith('BEGIN_TILING_DATA_DEF')): + tiling_source += '#pragma pack(1)\n' + tiling_source += 'struct ' + struct_def = re.findall(pattern, line)[0] + tiling_source += struct_def + ' {\n' + elif (line.startswith('TILING_DATA_FIELD_DEF_ARR')): + field_params = re.findall(pattern, line)[0] + fds = field_params.split(',') + tiling_source += ' {} {}[{}] = {{}};\n'.format(fds[0].strip(), fds[2].strip(), fds[1].strip()) + elif (line.startswith('TILING_DATA_FIELD_DEF_STRUCT')): + field_params = re.findall(pattern, line)[0] + fds = field_params.split(',') + tiling_source += ' {} {};\n'.format(fds[0].strip(), fds[1].strip()) + elif (line.startswith('TILING_DATA_FIELD_DEF')): + field_params = re.findall(pattern, line)[0] + fds = field_params.split(',') + tiling_source += ' {} {} = 0;\n'.format(fds[0].strip(), fds[1].strip()) + elif (line.startswith('END_TILING_DATA_DEF')): + tiling_source += '};\n' + tiling_source += '#pragma pack()\n\n' + tiling_source += '#ifdef __NPU_TILING__\n' + tiling_source += \ + 'inline [aicore] void Init{stru}(const __gm__ uint8_t* tiling, {stru}* const_data)\n'\ + .format(stru=struct_def) + tiling_source += '{\n' + tiling_source += ' const __gm__ uint32_t *src = (const __gm__ uint32_t *)tiling;\n' + tiling_source += ' uint32_t *dst = (uint32_t *)const_data;\n' + tiling_source += ' for (auto i = 0; i < sizeof({}) / 4; i++) *(dst + i) = *(src + i);\n'\ + .format(struct_def) + tiling_source += '}\n' + tiling_source += '#else\n' + tiling_source += 'inline void Init{stru}(uint8_t* tiling, {stru}* const_data)\n'.format(stru=struct_def) + tiling_source += '{\n' + tiling_source += ' memcpy(const_data, tiling, sizeof({}));\n'.format(struct_def) + tiling_source += '}\n' + tiling_source += '#endif\n\n' + end_source = ''' +#define GET_TILING_DATA(tiling_data, tiling_arg) \\ +{stru} tiling_data; \\ +Init{stru}(tiling_arg, &tiling_data)\n +'''.format(stru=struct_def) + tiling_source += end_source + tiling_source += '#endif' + with os.fdopen(os.open(tiling_file_out, const_var.WFLAGS, const_var.WMODES), 'w') as ofd: + ofd.write(tiling_source) + + +if __name__ == '__main__': + if len(sys.argv) <= 2: + raise RuntimeError('arguments must greater than 2') + gen_tiling(sys.argv[1], sys.argv[2]) diff --git a/Increase_Bedore_pipe/No_increase/framework/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/framework/CMakeLists.txt new file mode 100644 index 0000000..b6be9b4 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/framework/CMakeLists.txt @@ -0,0 +1,11 @@ +if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mindspore") + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/caffe_plugin") + add_subdirectory(caffe_plugin) + endif() + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/tf_plugin") + add_subdirectory(tf_plugin) + endif() + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/onnx_plugin") + add_subdirectory(onnx_plugin) + endif() +endif() diff --git a/Increase_Bedore_pipe/No_increase/framework/tf_plugin/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/framework/tf_plugin/CMakeLists.txt new file mode 100644 index 0000000..a6aba5c --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/framework/tf_plugin/CMakeLists.txt @@ -0,0 +1,14 @@ + +aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR} plugin_srcs) +add_library(cust_tf_parsers SHARED ${plugin_srcs}) +target_compile_definitions(cust_tf_parsers PRIVATE google=ascend_private) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_tf_parsers PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_tf_parsers PRIVATE intf_pub graph) +install(TARGETS cust_tf_parsers + LIBRARY DESTINATION packages/vendors/${vendor_name}/framework/tensorflow +) diff --git a/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc b/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc new file mode 100644 index 0000000..2cd837c --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/framework/tf_plugin/tensorflow_add_custom_plugin.cc @@ -0,0 +1,23 @@ +/* Copyright (C) 2020-2021. Huawei Technologies Co., Ltd. All +rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the Apache License Version 2.0. + * You may not use this file except in compliance with the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * Apache License for more details at + * http://www.apache.org/licenses/LICENSE-2.0 + */ + +#include "register/register.h" + +namespace domi { +// register op info to GE +REGISTER_CUSTOM_OP("AddCustom") + .FrameworkType(TENSORFLOW) // type: CAFFE, TENSORFLOW + .OriginOpType("Add") // name in tf module + .ParseParamsByOperatorFn(AutoMappingByOpFn); +} // namespace domi diff --git a/Increase_Bedore_pipe/No_increase/op_host/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/op_host/CMakeLists.txt new file mode 100644 index 0000000..40dd51c --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/op_host/CMakeLists.txt @@ -0,0 +1,82 @@ + +aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR} ops_srcs) + +opbuild(OPS_SRC ${ops_srcs} + OUT_DIR ${ASCEND_AUTOGEN_PATH} +) + +add_library(cust_op_proto SHARED ${ops_srcs} ${ASCEND_AUTOGEN_PATH}/op_proto.cc) +target_compile_definitions(cust_op_proto PRIVATE OP_PROTO_LIB) +target_compile_options(cust_op_proto PRIVATE + -fvisibility=hidden +) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_op_proto PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_op_proto PRIVATE + intf_pub + exe_graph + register + tiling_api + -Wl,--whole-archive + rt2_registry + -Wl,--no-whole-archive +) +set_target_properties(cust_op_proto PROPERTIES OUTPUT_NAME + cust_opsproto_rt2.0 +) +add_library(cust_optiling SHARED ${ops_srcs}) +target_compile_definitions(cust_optiling PRIVATE OP_TILING_LIB) +target_compile_options(cust_optiling PRIVATE + -fvisibility=hidden +) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_optiling PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_optiling PRIVATE + intf_pub + exe_graph + register + tiling_api + -Wl,--whole-archive + rt2_registry + -Wl,--no-whole-archive +) +set_target_properties(cust_optiling PROPERTIES OUTPUT_NAME + cust_opmaster_rt2.0 +) + +file(GLOB aclnn_src ${ASCEND_AUTOGEN_PATH}/aclnn_*.cpp) +file(GLOB aclnn_inc ${ASCEND_AUTOGEN_PATH}/aclnn_*.h) +add_library(cust_opapi SHARED ${aclnn_src}) +if(ENABLE_CROSS_COMPILE) + target_link_directories(cust_opapi PRIVATE + ${CMAKE_COMPILE_COMPILER_LIBRARY} + ${CMAKE_COMPILE_RUNTIME_LIBRARY} + ) +endif() +target_link_libraries(cust_opapi PRIVATE intf_pub ascendcl nnopbase) + +add_custom_target(optiling_compat ALL + COMMAND ln -sf lib/linux/${CMAKE_SYSTEM_PROCESSOR}/$ + ${CMAKE_CURRENT_BINARY_DIR}/liboptiling.so +) + +install(TARGETS cust_op_proto + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_proto/lib/linux/${CMAKE_SYSTEM_PROCESSOR}) +install(FILES ${ASCEND_AUTOGEN_PATH}/op_proto.h + DESTINATION packages/vendors/${vendor_name}/op_proto/inc) +install(TARGETS cust_optiling + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_tiling/lib/linux/${CMAKE_SYSTEM_PROCESSOR}) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/liboptiling.so + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/op_tiling) +install(TARGETS cust_opapi + LIBRARY DESTINATION packages/vendors/${vendor_name}/op_api/lib) +install(FILES ${aclnn_inc} + DESTINATION packages/vendors/${vendor_name}/op_api/include) diff --git a/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp b/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp new file mode 100644 index 0000000..491d184 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/op_host/add_custom.cpp @@ -0,0 +1,75 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "add_custom_tiling.h" +#include "register/op_def_registry.h" + +namespace optiling { +const uint32_t BLOCK_DIM = 8; +const uint32_t TILE_NUM = 8; +static ge::graphStatus TilingFunc(gert::TilingContext *context) +{ + TilingData tiling; + uint32_t totalLength = context->GetInputShape(0)->GetOriginShape().GetShapeSize(); + context->SetBlockDim(1); + + tiling.SaveToBuffer(context->GetRawTilingData()->GetData(), context->GetRawTilingData()->GetCapacity()); + context->GetRawTilingData()->SetDataSize(tiling.GetDataSize()); + size_t *currentWorkspace = context->GetWorkspaceSizes(1); + currentWorkspace[0] = 0; + return ge::GRAPH_SUCCESS; +} +} // namespace optiling + +namespace ge { +static graphStatus InferShape(gert::InferShapeContext *context) +{ + const gert::Shape *x1_shape = context->GetInputShape(0); + gert::Shape *y_shape = context->GetOutputShape(0); + *y_shape = *x1_shape; + return GRAPH_SUCCESS; +} + +static graphStatus InferDataType(gert::InferDataTypeContext *context) +{ + const auto inputDataType = context->GetInputDataType(0); + context->SetOutputDataType(0, inputDataType); + return ge::GRAPH_SUCCESS; +} +} // namespace ge + +namespace ops { +class AddCustom : public OpDef { +public: + explicit AddCustom(const char *name) : OpDef(name) + { + this->Input("x") + .ParamType(REQUIRED) + .DataType({ge::DT_FLOAT16}) + .Format({ge::FORMAT_ND}); + this->Input("y") + .ParamType(REQUIRED) + .DataType({ge::DT_FLOAT16}) + .Format({ge::FORMAT_ND}); + this->Output("z") + .ParamType(REQUIRED) + .DataType({ge::DT_FLOAT16}) + .Format({ge::FORMAT_ND}); + + this->SetInferShape(ge::InferShape).SetInferDataType(ge::InferDataType); + this->AICore() + .SetTiling(optiling::TilingFunc) + .AddConfig("ascend910") + .AddConfig("ascend310p") + .AddConfig("ascend310b") + .AddConfig("ascend910b"); + } +}; +OP_ADD(AddCustom); +} // namespace ops diff --git a/Increase_Bedore_pipe/No_increase/op_host/add_custom_tiling.h b/Increase_Bedore_pipe/No_increase/op_host/add_custom_tiling.h new file mode 100644 index 0000000..323f307 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/op_host/add_custom_tiling.h @@ -0,0 +1,22 @@ +/** + * @file add_custom_tiling.h + * + * Copyright (C) 2023-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#ifndef ADD_CUSTOM_TILING_H +#define ADD_CUSTOM_TILING_H +#include "register/tilingdata_base.h" + +namespace optiling { +BEGIN_TILING_DATA_DEF(TilingData) +TILING_DATA_FIELD_DEF(uint32_t, totalLength); +TILING_DATA_FIELD_DEF(uint32_t, tileNum); +END_TILING_DATA_DEF; + +REGISTER_TILING_DATA_CLASS(AddCustom, TilingData) +} // namespace optiling +#endif // ADD_CUSTOM_TILING_H diff --git a/Increase_Bedore_pipe/No_increase/op_kernel/CMakeLists.txt b/Increase_Bedore_pipe/No_increase/op_kernel/CMakeLists.txt new file mode 100644 index 0000000..0d31a44 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/op_kernel/CMakeLists.txt @@ -0,0 +1,61 @@ +# set custom compile options +if ("${CMAKE_BUILD_TYPE}x" STREQUAL "Debugx") + add_ops_compile_options(ALL OPTIONS -g -O0) +endif() + +foreach(compute_unit ${ASCEND_COMPUTE_UNIT}) + + # generate aic-${compute_unit}-ops-info.json + add_ops_info_target(TARGET ops_info_gen_${compute_unit} + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core/${compute_unit}/aic-${compute_unit}-ops-info.json + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/config/${compute_unit} + ) + + # generate ascendc impl py once + if (NOT TARGET ascendc_impl_gen) + add_ops_impl_target(TARGET ascendc_impl_gen + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl + ) + endif() + + # dynamic shape binary compile + if (${ENABLE_BINARY_PACKAGE}) + add_bin_compile_target(TARGET ascendc_bin_${compute_unit} + OPS_INFO ${ASCEND_AUTOGEN_PATH}/aic-${compute_unit}-ops-info.ini + IMPL_DIR ${CMAKE_CURRENT_SOURCE_DIR} + ADP_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/dynamic + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/binary/${compute_unit} + INSTALL_DIR packages/vendors/${vendor_name}/op_impl/ai_core/tbe/kernel + COMPUTE_UNIT ${compute_unit} + ) + add_dependencies(ascendc_bin_${compute_unit} ascendc_impl_gen) + endif() + +endforeach() + +# generate npu_supported_ops.json +add_npu_support_target(TARGET npu_supported_ops + OPS_INFO_DIR ${ASCEND_AUTOGEN_PATH} + OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/tbe/op_info_cfg/ai_core + INSTALL_DIR packages/vendors/${vendor_name}/framework/${ASCEND_FRAMEWORK_TYPE} +) + +if(ENABLE_TEST AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/testcases) + add_subdirectory(testcases) +endif() + +# install kernel file +if (${ENABLE_SOURCE_PACKAGE}) + file(GLOB KERNEL_FILES + ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/*.h + ${CMAKE_CURRENT_SOURCE_DIR}/*.py + ) + install(FILES ${KERNEL_FILES} + DESTINATION packages/vendors/${vendor_name}/op_impl/ai_core/tbe/${vendor_name}_impl/dynamic + ) +endif() diff --git a/Increase_Bedore_pipe/No_increase/op_kernel/add_custom.cpp b/Increase_Bedore_pipe/No_increase/op_kernel/add_custom.cpp new file mode 100644 index 0000000..6a148f9 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/op_kernel/add_custom.cpp @@ -0,0 +1,61 @@ +/** + * @file add_custom.cpp + * + * Copyright (C) 2022-2024. Huawei Technologies Co., Ltd. All rights reserved. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ +#include "kernel_operator.h" +constexpr int32_t BUFFER_NUM = 2; // tensor num for each queue + +class KernelAdd { +public: + __aicore__ inline KernelAdd() {} + __aicore__ inline void Init(GM_ADDR x, GM_ADDR y, GM_ADDR z, uint32_t totalLength, uint32_t tileNum) + { + xGm.SetGlobalBuffer((__gm__ half *)x , 131072); + + pipe.InitBuffer(inQueueX, 1, 65536 * sizeof(half)); + pipe.InitBuffer(inQueueY, 1, 65536 * sizeof(half)); + this->copyParams.blockCount = 16; + this->copyParams.blockLen = 128; // 搬运的单位为DataBlock(32Byte),每个DataBlock内有8个float + this->copyParams.srcStride = 128; // 表示两次搬运src之间的间隔,单位为DataBlock + this->copyParams.dstStride = 0; + } + __aicore__ inline void Process() + { + AscendC::LocalTensor xLocal = inQueueX.AllocTensor(); + AscendC::DataCopy(xLocal, xGm, this->copyParams); + inQueueX.EnQue(xLocal); + xLocal = inQueueX.DeQue(); + AscendC::DataCopy(xGm,xLocal, this->copyParams); + inQueueX.FreeTensor(xLocal); + } + + +private: + AscendC::TPipe pipe; + AscendC::TQue inQueueX, inQueueY; + AscendC::DataCopyParams copyParams; + AscendC::GlobalTensor xGm; + +}; + +extern "C" __global__ __aicore__ void add_custom(GM_ADDR x, GM_ADDR y, GM_ADDR z, GM_ADDR workspace, GM_ADDR tiling) +{ + GET_TILING_DATA(tiling_data, tiling); + KernelAdd op; + op.Init(x, y, z, tiling_data.totalLength, tiling_data.tileNum); + op.Process(); +} + +#ifndef ASCENDC_CPU_DEBUG +// call of kernel function +void add_custom_do(uint32_t blockDim, void *l2ctrl, void *stream, uint8_t *x, uint8_t *y, uint8_t *z, + uint8_t *workspace, uint8_t *tiling) +{ + add_custom<<>>(x, y, z, workspace, tiling); +} +#endif \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/output/AddCustom_case_20240821114242.json b/Increase_Bedore_pipe/No_increase/output/AddCustom_case_20240821114242.json new file mode 100644 index 0000000..4b5f793 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/output/AddCustom_case_20240821114242.json @@ -0,0 +1,58 @@ +[ + { + "case_name": "Test_AddCustom_001", + "op": "AddCustom", + "input_desc": [ + { + "format": [ + "ND" + ], + "type": [ + "float16" + ], + "shape": [], + "data_distribute": [ + "uniform" + ], + "value_range": [ + [ + 0.1, + 1.0 + ] + ], + "name": "x" + }, + { + "format": [ + "ND" + ], + "type": [ + "float16" + ], + "shape": [], + "data_distribute": [ + "uniform" + ], + "value_range": [ + [ + 0.1, + 1.0 + ] + ], + "name": "y" + } + ], + "output_desc": [ + { + "format": [ + "ND" + ], + "type": [ + "float16" + ], + "shape": [], + "name": "z" + } + ] + } +] \ No newline at end of file diff --git a/Increase_Bedore_pipe/No_increase/scripts/install.sh b/Increase_Bedore_pipe/No_increase/scripts/install.sh new file mode 100644 index 0000000..8468c5a --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/scripts/install.sh @@ -0,0 +1,318 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +QUIET="y" + +while true +do + case $1 in + --quiet) + QUIET="y" + shift + ;; + --install-path=*) + INSTALL_PATH=$(echo $1 | cut -d"=" -f2-) + INSTALL_PATH=${INSTALL_PATH%*/} + shift + ;; + --*) + shift + ;; + *) + break + ;; + esac +done + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [ -n "${INSTALL_PATH}" ]; then + if [[ ! "${INSTALL_PATH}" = /* ]]; then + log "[ERROR] use absolute path for --install-path argument" + exit 1 + fi + if [ ! -d ${INSTALL_PATH} ]; then + mkdir ${INSTALL_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${INSTALL_PATH} failed" + exit 1 + fi + fi + targetdir=${INSTALL_PATH} +elif [ -n "${ASCEND_CUSTOM_OPP_PATH}" ]; then + if [ ! -d ${ASCEND_CUSTOM_OPP_PATH} ]; then + mkdir -p ${ASCEND_CUSTOM_OPP_PATH} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${ASCEND_CUSTOM_OPP_PATH} failed" + fi + fi + targetdir=${ASCEND_CUSTOM_OPP_PATH} +else + if [ "x${ASCEND_OPP_PATH}" == "x" ]; then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 + fi + targetdir="${ASCEND_OPP_PATH}" +fi + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + has_same_file=-1 + for file_a in ${sourcedir}/$vendordir/$1/*; do + file_b=${file_a##*/}; + if [ "ls ${targetdir}/$vendordir/$1" = "" ]; then + log "[INFO] ${targetdir}/$vendordir/$1 is empty !!" + return 1 + fi + grep -q $file_b <<<`ls ${targetdir}/$vendordir/$1`; + if [[ $? -eq 0 ]]; then + echo -n "${file_b} " + has_same_file=0 + fi + done + if [ 0 -eq $has_same_file ]; then + if test $QUIET = "n"; then + echo "[INFO]: has old version in ${targetdir}/$vendordir/$1, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + + while true + do + read orn + if [ "$orn" = n ]; then + return 0 + elif [ "$orn" = m ]; then + break; + elif [ "$0rn" = r ]; then + [ -n "${targetdir}/$vendordir/$1/" ] && rm -rf "${targetdir}/$vendordir/$1"/* + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace or merge old ops $1 files .g....." + fi + + log "copy new ops $1 files ......" + if [ -d ${targetdir}/$vendordir/$1/ ]; then + chmod -R +w "$targetdir/$vendordir/$1/" >/dev/null 2>&1 + fi + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} +upgrade_proto() +{ + if [ ! -f ${sourcedir}/$vendordir/custom.proto ]; then + log "[INFO] no need to upgrade custom.proto files" + return 0 + fi + if [ ! -d ${targetdir}/$vendordir/framework/caffe ];then + log "[INFO] create ${targetdir}/$vendordir/framework/caffe." + mkdir -p ${targetdir}/$vendordir/framework/caffe + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/framework/caffe failed" + return 1 + fi + else + if [ -f ${targetdir}/$vendordir/framework/caffe/custom.proto ]; then + # 有老版本,判断是否要覆盖式安装 + if test $QUIET = "n"; then + echo "[INFO] ${targetdir}/$vendordir/framework/caffe has old version"\ + "custom.proto file. Do you want to replace? [y/n] " + + while true + do + read yn + if [ "$yn" = n ]; then + return 0 + elif [ "$yn" = y ]; then + break; + else + echo "[ERROR] input error, please input again!" + fi + done + fi + fi + log "[INFO] replace old caffe.proto files ......" + fi + chmod -R +w "$targetdir/$vendordir/framework/caffe/" >/dev/null 2>&1 + cp -rf ${sourcedir}/$vendordir/custom.proto ${targetdir}/$vendordir/framework/caffe/ + if [ $? -ne 0 ];then + log "[ERROR] copy new custom.proto failed" + return 1 + fi + log "[INFO] copy custom.proto success" + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +delete_optiling_file() +{ + if [ ! -d ${targetdir}/vendors ];then + log "[INFO] $1 not exist, no need to uninstall" + return 0 + fi + sys_info=$(uname -m) + if [ ! -d ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/lib/linux/${sys_info} ];then + rm -rf ${sourcedir}/$vendordir/$1/ai_core/tbe/op_tiling/liboptiling.so + fi + return 0 +} + +log "[INFO] copy uninstall sh success" + +if [ ! -d ${targetdir}/vendors ];then + log "[INFO] create ${targetdir}/vendors." + mkdir -p ${targetdir}/vendors + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/vendors failed" + return 1 + fi +fi +chmod u+w ${targetdir}/vendors + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +delete_optiling_file op_impl +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +upgrade_proto +if [ $? -ne 0 ];then + exit 1 +fi + +# set the set_env.bash +if [ -n "${INSTALL_PATH}" ] && [ -d ${INSTALL_PATH} ]; then + _ASCEND_CUSTOM_OPP_PATH=${targetdir}/${vendordir} + bin_path="${_ASCEND_CUSTOM_OPP_PATH}/bin" + set_env_variable="#!/bin/bash\nexport ASCEND_CUSTOM_OPP_PATH=${_ASCEND_CUSTOM_OPP_PATH}:\${ASCEND_CUSTOM_OPP_PATH}" + if [ ! -d ${bin_path} ]; then + mkdir -p ${bin_path} >> /dev/null 2>&1 + if [ $? -ne 0 ]; then + log "[ERROR] create ${bin_path} failed" + exit 1 + fi + fi + echo -e ${set_env_variable} > ${bin_path}/set_env.bash + if [ $? -ne 0 ]; then + log "[ERROR] write ASCEND_CUSTOM_OPP_PATH to set_env.bash failed" + exit 1 + else + log "[INFO] using requirements: when custom module install finished or before you run the custom module, \ + execute the command [ source ${bin_path}/set_env.bash ] to set the environment path" + fi +else + config_file=${targetdir}/vendors/config.ini + if [ ! -f ${config_file} ]; then + touch ${config_file} + chmod 640 ${config_file} + echo "load_priority=$vendor_name" > ${config_file} + if [ $? -ne 0 ];then + echo "echo load_priority failed" + exit 1 + fi + else + found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" + found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') + vendor=$(echo $found_vendor | tr -s ' ' ',') + if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" + fi + fi +fi + +chmod u-w ${targetdir}/vendors + +if [ -d ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/ ]; then + chmod -R 440 ${targetdir}/$vendordir/op_impl/cpu/aicpu_kernel/impl/* >/dev/null 2>&1 +fi +if [ -f ${targetdir}/ascend_install.info ]; then + chmod -R 440 ${targetdir}/ascend_install.info +fi +if [ -f ${targetdir}/scene.info ]; then + chmod -R 440 ${targetdir}/scene.info +fi +if [ -f ${targetdir}/version.info ]; then + chmod -R 440 ${targetdir}/version.info +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/No_increase/scripts/upgrade.sh b/Increase_Bedore_pipe/No_increase/scripts/upgrade.sh new file mode 100644 index 0000000..e091734 --- /dev/null +++ b/Increase_Bedore_pipe/No_increase/scripts/upgrade.sh @@ -0,0 +1,151 @@ +#!/bin/bash +vendor_name=customize +targetdir=/usr/local/Ascend/opp +target_custom=0 + +sourcedir=$PWD/packages +vendordir=vendors/$vendor_name + +log() { + cur_date=`date +"%Y-%m-%d %H:%M:%S"` + echo "[runtime] [$cur_date] "$1 +} + +if [[ "x${ASCEND_OPP_PATH}" == "x" ]];then + log "[ERROR] env ASCEND_OPP_PATH no exist" + exit 1 +fi + +targetdir=${ASCEND_OPP_PATH} + +if [ ! -d $targetdir ];then + log "[ERROR] $targetdir no exist" + exit 1 +fi + +upgrade() +{ + if [ ! -d ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 files" + return 0 + fi + + if [ ! -d ${targetdir}/$vendordir/$1 ];then + log "[INFO] create ${targetdir}/$vendordir/$1." + mkdir -p ${targetdir}/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] create ${targetdir}/$vendordir/$1 failed" + return 1 + fi + else + vendor_installed_dir=$(ls "$targetdir/vendors" 2> /dev/null) + for i in $vendor_installed_dir;do + vendor_installed_file=$(ls "$vendor_installed_dir/$vendor_name/$i" 2> /dev/null) + if [ "$i" = "$vendor_name" ] && [ "$vendor_installed_file" != "" ]; then + echo "[INFO]: $vendor_name custom opp package has been installed on the path $vendor_installed_dir, \ + you want to Overlay Installation , please enter:[o]; \ + or replace directory installation , please enter: [r]; \ + or not install , please enter:[n]." + fi + while true + do + read mrn + if [ "$mrn" = m ]; then + break + elif [ "$mrn" = r ]; then + [ -n "$vendor_installed_file"] && rm -rf "$vendor_installed_file" + break + elif [ "$mrn" = n ]; then + return 0 + else + echo "[WARNING]: Input error, please input m or r or n to choose!" + fi + done + done + log "[INFO] replace old ops $1 files ......" + fi + + log "copy new ops $1 files ......" + cp -rf ${sourcedir}/$vendordir/$1/* $targetdir/$vendordir/$1/ + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 files failed" + return 1 + fi + + return 0 +} + +upgrade_file() +{ + if [ ! -e ${sourcedir}/$vendordir/$1 ]; then + log "[INFO] no need to upgrade ops $1 file" + return 0 + fi + + log "copy new $1 files ......" + cp -f ${sourcedir}/$vendordir/$1 $targetdir/$vendordir/$1 + if [ $? -ne 0 ];then + log "[ERROR] copy new $1 file failed" + return 1 + fi + + return 0 +} + +log "[INFO] copy uninstall sh success" + +echo "[ops_custom]upgrade framework" +upgrade framework +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op proto" +upgrade op_proto +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op impl" +upgrade op_impl +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade op api" +upgrade op_api +if [ $? -ne 0 ];then + exit 1 +fi + +echo "[ops_custom]upgrade version.info" +upgrade_file version.info +if [ $? -ne 0 ];then + exit 1 +fi + +config_file=${targetdir}/vendors/config.ini +found_vendors="$(grep -w "load_priority" "$config_file" | cut --only-delimited -d"=" -f2-)" +found_vendor=$(echo $found_vendors | sed "s/$vendor_name//g" | tr ',' ' ') +vendor=$(echo $found_vendor | tr -s ' ' ',') +if [ "$vendor" != "" ]; then + sed -i "/load_priority=$found_vendors/s@load_priority=$found_vendors@load_priority=$vendor_name,$vendor@g" "$config_file" +fi + +changemode() +{ + if [ -d ${targetdir} ];then + chmod -R 550 ${targetdir}>/dev/null 2>&1 + fi + + return 0 +} +echo "[ops_custom]changemode..." +#changemode +if [ $? -ne 0 ];then + exit 1 +fi + +echo "SUCCESS" +exit 0 + diff --git a/Increase_Bedore_pipe/README.md b/Increase_Bedore_pipe/README.md new file mode 100644 index 0000000..3ae9f9f --- /dev/null +++ b/Increase_Bedore_pipe/README.md @@ -0,0 +1,110 @@ +## 概述 +本样例基于AddCustom算子工程,介绍了不同拷贝方式对算子性能的差异。 + +本样例只考虑搬运,未包含计算。 + +## 目录结构介绍 +``` +├── Increase_the_number_of_aicore //使用框架调用的方式调用Add算子 +│ ├── AclNNInvocation // 通过aclnn调用的方式调用AddCustom算子 +│ ├── No_Increase // AddCustom算子工程 未改良版 使用循环多次拷贝 +│ +│ └── Is_increase // AddCustom算子工程 改良版 使用0级API多次拷贝 +``` +## 算子工程介绍 +其中,算子工程目录AddCustom包含算子实现的模板文件、编译脚本等,如下所示: +``` +├── AddCustom //Add自定义算子工程 +│ ├── cmake +│ ├── framework // 算子插件实现文件目录,单算子模型文件的生成不依赖算子适配插件,无需关注 +│ ├── op_host // host侧实现文件 +│ ├── op_kernel // kernel侧实现文件 +│ ├── scripts // 自定义算子工程打包相关脚本所在目录 +│ ├── build.sh // 编译入口脚本 +│ ├── CMakeLists.txt // 算子工程的CMakeLists.txt +│ └── CMakePresets.json // 编译配置项 +``` +CANN软件包中提供了工程创建工具msopgen,AddCustom算子工程可通过AddCustom.json自动创建,具体请参考[Ascend C算子开发](https://hiascend.com/document/redirect/CannCommunityOpdevAscendC)>算子开发>算子开发工程>基于自定义算子工程的算子开发>创建算子工程 章节。 +## 编译运行样例算子 +针对自定义算子工程,编译运行包含如下步骤: +- 编译自定义算子工程生成算子安装包; +- 安装自定义算子到算子库中; +- 调用执行自定义算子; + +详细操作如下所示。 +### 1. 获取源码包 +编译运行此样例前,请参考[准备:获取样例代码](../README.md#codeready)完成源码包获取。 +### 2. 编译算子工程 + 编译自定义算子工程,构建生成自定义算子包。 + + - 执行如下命令,切换到算子工程AddCustom目录。 + + ```bash + cd ${git_clone_path}/Operator- + Performance\Operator-performance\Increase_DataCopy_case + ``` + + - 修改CMakePresets.json中ASCEND_CANN_PACKAGE_PATH为CANN软件包安装后的实际路径。 + + + ```json + { + …… + "configurePresets": [ + { + …… + "ASCEND_CANN_PACKAGE_PATH": { + "type": "PATH", + "value": "/usr/local/Ascend/ascend-toolkit/latest" //请替换为CANN软件包安装后的实际路径。eg:/home/HwHiAiUser/Ascend/ascend-toolkit/latest + }, + …… + } + ] + } + ``` + + - 使用单核请跳过此步骤,使用多核,请将op_host/下的"add_custom.cpp"重命名为"add_custom.txt",将op_host/下的"add_custom_8core.txt"重命名为"add_custom.cpp" + + - 在算子工程AddCustom目录下执行如下命令,进行算子工程编译。 + + ```bash + ./build.sh + ``` +编译成功后,会在当前目录下创建build_out目录,并在build_out目录下生成自定义算子安装包custom_opp_\_\.run,例如“custom_opp_ubuntu_x86_64.run”。 + +备注:如果要使用dump调试功能,需要移除op_host内和CMakeLists.txt内的Atlas 200/500 A2 推理产品的配置。 + +### 3. 部署算子包 + +执行如下命令,在自定义算子安装包所在路径下,安装自定义算子包。 + ```bash + cd build_out + ./custom_opp__.run + ``` +命令执行成功后,自定义算子包中的相关文件将部署至当前环境的OPP算子库的vendors/customize目录中。 + +### 4. 配置环境变量 + + 请根据当前环境上CANN开发套件包的[安装方式](https://hiascend.com/document/redirect/CannCommunityInstSoftware),选择对应配置环境变量的命令。 + - 默认路径,root用户安装CANN软件包 + ```bash + export ASCEND_INSTALL_PATH=/usr/local/Ascend/ascend-toolkit/latest + ``` + - 默认路径,非root用户安装CANN软件包 + ```bash + export ASCEND_INSTALL_PATH=$HOME/Ascend/ascend-toolkit/latest + ``` + - 指定路径install_path,安装CANN软件包 + ```bash + export ASCEND_INSTALL_PATH=${install_path}/ascend-toolkit/latest + ``` +### 5. 调用执行算子工程和算子耗时 +- [aclnn调用AddCustom算子工程](./AclNNInvocation/README.md) + +### 6. 在310B4环境上对数据拷贝方式不同进行算子性能数据收集。 +| File Name | Op Type|aic_time(us)|aic_scalar_time(us)| +|-------------------|------|------|------| +| No_Increase | vector|7.889706|6.252451| +| Is_Increase | vector|3.147876|1.438725| + +性能数据分析:使用循环拷贝与使用0级API多次拷贝相比增加了scalar运算,与循环次数成正比。 diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeCache.txt b/Increase_DataCopy_case/AclNNInvocation/build/CMakeCache.txt index 6746e6f..dd86c0a 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeCache.txt +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeCache.txt @@ -1,5 +1,5 @@ # This is the CMakeCache file. -# For build in directory: /_profile/AclNNInvocation/build +# For build in directory: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build # It was generated by CMake: /usr/bin/cmake # You can edit this file to change values found and used by cmake. # If you do not want to change any of the values, simply exit the editor. @@ -210,13 +210,13 @@ CMAKE_STRIP:FILEPATH=/usr/bin/strip CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE //Value Computed by CMake -acl_execute_add_BINARY_DIR:STATIC=/_profile/AclNNInvocation/build +acl_execute_add_BINARY_DIR:STATIC=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build //Value Computed by CMake acl_execute_add_IS_TOP_LEVEL:STATIC=ON //Value Computed by CMake -acl_execute_add_SOURCE_DIR:STATIC=/_profile/AclNNInvocation/src +acl_execute_add_SOURCE_DIR:STATIC=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src ######################## @@ -228,7 +228,7 @@ CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 //ADVANCED property for variable: CMAKE_AR CMAKE_AR-ADVANCED:INTERNAL=1 //This is the directory where this CMakeCache.txt was created -CMAKE_CACHEFILE_DIR:INTERNAL=/_profile/AclNNInvocation/build +CMAKE_CACHEFILE_DIR:INTERNAL=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build //Major version of cmake used to create the current loaded cache CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 //Minor version of cmake used to create the current loaded cache @@ -303,7 +303,7 @@ CMAKE_GENERATOR_PLATFORM:INTERNAL= CMAKE_GENERATOR_TOOLSET:INTERNAL= //Source directory with the top level CMakeLists.txt file for this // project -CMAKE_HOME_DIRECTORY:INTERNAL=/_profile/AclNNInvocation/src +CMAKE_HOME_DIRECTORY:INTERNAL=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src //Install .so files without execute permission. CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 //ADVANCED property for variable: CMAKE_LINKER diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake index 25699c5..f1584fe 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeDirectoryInformation.cmake @@ -2,8 +2,8 @@ # Generated by "Unix Makefiles" Generator, CMake Version 3.22 # Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/_profile/AclNNInvocation/src") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/_profile/AclNNInvocation/build") +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build") # Force unix paths in dependencies. set(CMAKE_FORCE_UNIX_PATHS 1) diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeOutput.log b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeOutput.log index bb00451..e8d2dda 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeOutput.log +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeOutput.log @@ -10,7 +10,7 @@ The output was: Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" -The C compiler identification is GNU, found in "/_profile/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/a.out" +The C compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdC/a.out" Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. Compiler: /usr/bin/c++ @@ -23,15 +23,15 @@ The output was: Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" -The CXX compiler identification is GNU, found in "/_profile/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out" +The CXX compiler identification is GNU, found in "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out" Detecting C compiler ABI info compiled with the following output: -Change Dir: /_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp +Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4befe/fast && /usr/bin/gmake -f CMakeFiles/cmTC_4befe.dir/build.make CMakeFiles/cmTC_4befe.dir/build -gmake[1]: Entering directory '/_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp' -Building C object CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o -/usr/bin/cc -v -o CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5306a/fast && /usr/bin/gmake -f CMakeFiles/cmTC_5306a.dir/build.make CMakeFiles/cmTC_5306a.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o +/usr/bin/cc -v -o CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c Using built-in specs. COLLECT_GCC=/usr/bin/cc Target: aarch64-linux-gnu @@ -39,8 +39,8 @@ Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~2 Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_4befe.dir/' - /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_4befe.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccySS7fp.s +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_5306a.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_5306a.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccKSxRIz.s GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP @@ -60,15 +60,15 @@ GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_4befe.dir/' - as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o /tmp/ccySS7fp.s +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_5306a.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o /tmp/ccKSxRIz.s GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.' -Linking C executable cmTC_4befe -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_4befe.dir/link.txt --verbose=1 -/usr/bin/cc -v CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o -o cmTC_4befe +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.' +Linking C executable cmTC_5306a +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5306a.dir/link.txt --verbose=1 +/usr/bin/cc -v CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o -o cmTC_5306a Using built-in specs. COLLECT_GCC=/usr/bin/cc COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper @@ -79,10 +79,10 @@ Supported LTO compression algorithms: zlib zstd gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_4befe' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_4befe.' - /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccBSvWtX.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_4befe /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_4befe' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_4befe.' -gmake[1]: Leaving directory '/_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp' +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_5306a' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_5306a.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccjO2BUz.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_5306a /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_5306a' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_5306a.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' @@ -103,12 +103,12 @@ Parsed C implicit include dir info from above output: rv=done Parsed C implicit link information from above output: link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp] ignore line: [] - ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4befe/fast && /usr/bin/gmake -f CMakeFiles/cmTC_4befe.dir/build.make CMakeFiles/cmTC_4befe.dir/build] - ignore line: [gmake[1]: Entering directory '/_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp'] - ignore line: [Building C object CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o] - ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5306a/fast && /usr/bin/gmake -f CMakeFiles/cmTC_5306a.dir/build.make CMakeFiles/cmTC_5306a.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp'] + ignore line: [Building C object CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/cc] ignore line: [Target: aarch64-linux-gnu] @@ -116,8 +116,8 @@ Parsed C implicit link information from above output: ignore line: [Thread model: posix] ignore line: [Supported LTO compression algorithms: zlib zstd] ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_4befe.dir/'] - ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_4befe.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccySS7fp.s] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_5306a.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1 -quiet -v -imultiarch aarch64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_5306a.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccKSxRIz.s] ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] ignore line: [] @@ -137,15 +137,15 @@ Parsed C implicit link information from above output: ignore line: [] ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] ignore line: [Compiler executable checksum: 52ed857e9cd110e5efaa797811afcfbb] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_4befe.dir/'] - ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o /tmp/ccySS7fp.s] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_5306a.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o /tmp/ccKSxRIz.s] ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.'] - ignore line: [Linking C executable cmTC_4befe] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_4befe.dir/link.txt --verbose=1] - ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o -o cmTC_4befe ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o' '-c' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.'] + ignore line: [Linking C executable cmTC_5306a] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5306a.dir/link.txt --verbose=1] + ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o -o cmTC_5306a ] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/cc] ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] @@ -156,13 +156,13 @@ Parsed C implicit link information from above output: ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_4befe' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_4befe.'] - link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccBSvWtX.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_4befe /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_5306a' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_5306a.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccjO2BUz.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_5306a /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore arg [-plugin] ==> ignore arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore - arg [-plugin-opt=-fresolution=/tmp/ccBSvWtX.res] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccjO2BUz.res] ==> ignore arg [-plugin-opt=-pass-through=-lgcc] ==> ignore arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore arg [-plugin-opt=-pass-through=-lc] ==> ignore @@ -182,7 +182,7 @@ Parsed C implicit link information from above output: arg [-znow] ==> ignore arg [-zrelro] ==> ignore arg [-o] ==> ignore - arg [cmTC_4befe] ==> ignore + arg [cmTC_5306a] ==> ignore arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] @@ -194,7 +194,7 @@ Parsed C implicit link information from above output: arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] - arg [CMakeFiles/cmTC_4befe.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [CMakeFiles/cmTC_5306a.dir/CMakeCCompilerABI.c.o] ==> ignore arg [-lgcc] ==> lib [gcc] arg [--push-state] ==> ignore arg [--as-needed] ==> ignore @@ -226,12 +226,12 @@ Parsed C implicit link information from above output: Detecting CXX compiler ABI info compiled with the following output: -Change Dir: /_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp +Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_83d7d/fast && /usr/bin/gmake -f CMakeFiles/cmTC_83d7d.dir/build.make CMakeFiles/cmTC_83d7d.dir/build -gmake[1]: Entering directory '/_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp' -Building CXX object CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o -/usr/bin/c++ -v -o CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_09e49/fast && /usr/bin/gmake -f CMakeFiles/cmTC_09e49.dir/build.make CMakeFiles/cmTC_09e49.dir/build +gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -v -o CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp Using built-in specs. COLLECT_GCC=/usr/bin/c++ Target: aarch64-linux-gnu @@ -239,8 +239,8 @@ Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~2 Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_83d7d.dir/' - /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_83d7d.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccUqoZTr.s +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_09e49.dir/' + /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_09e49.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccZiY2mX.s GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP @@ -264,15 +264,15 @@ GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu) GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 3e6e780af1232722b47e0979fda82402 -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_83d7d.dir/' - as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccUqoZTr.s +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_09e49.dir/' + as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccZiY2mX.s GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.' -Linking CXX executable cmTC_83d7d -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_83d7d.dir/link.txt --verbose=1 -/usr/bin/c++ -v CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_83d7d +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.' +Linking CXX executable cmTC_09e49 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_09e49.dir/link.txt --verbose=1 +/usr/bin/c++ -v CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_09e49 Using built-in specs. COLLECT_GCC=/usr/bin/c++ COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper @@ -283,10 +283,10 @@ Supported LTO compression algorithms: zlib zstd gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_83d7d' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_83d7d.' - /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccR5GAuH.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_83d7d /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_83d7d' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_83d7d.' -gmake[1]: Leaving directory '/_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp' +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_09e49' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_09e49.' + /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccYBVWhH.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_09e49 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_09e49' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_09e49.' +gmake[1]: Leaving directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp' @@ -313,12 +313,12 @@ Parsed CXX implicit include dir info from above output: rv=done Parsed CXX implicit link information from above output: link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp] + ignore line: [Change Dir: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp] ignore line: [] - ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_83d7d/fast && /usr/bin/gmake -f CMakeFiles/cmTC_83d7d.dir/build.make CMakeFiles/cmTC_83d7d.dir/build] - ignore line: [gmake[1]: Entering directory '/_profile/AclNNInvocation/build/CMakeFiles/CMakeTmp'] - ignore line: [Building CXX object CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o] - ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_09e49/fast && /usr/bin/gmake -f CMakeFiles/cmTC_09e49.dir/build.make CMakeFiles/cmTC_09e49.dir/build] + ignore line: [gmake[1]: Entering directory '/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/c++] ignore line: [Target: aarch64-linux-gnu] @@ -326,8 +326,8 @@ Parsed CXX implicit link information from above output: ignore line: [Thread model: posix] ignore line: [Supported LTO compression algorithms: zlib zstd] ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_83d7d.dir/'] - ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_83d7d.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccUqoZTr.s] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_09e49.dir/'] + ignore line: [ /usr/lib/gcc/aarch64-linux-gnu/11/cc1plus -quiet -v -imultiarch aarch64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_09e49.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mlittle-endian -mabi=lp64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -o /tmp/ccZiY2mX.s] ignore line: [GNU C++17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (aarch64-linux-gnu)] ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] ignore line: [] @@ -351,15 +351,15 @@ Parsed CXX implicit link information from above output: ignore line: [] ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] ignore line: [Compiler executable checksum: 3e6e780af1232722b47e0979fda82402] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_83d7d.dir/'] - ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccUqoZTr.s] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_09e49.dir/'] + ignore line: [ as -v -EL -mabi=lp64 -o CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccZiY2mX.s] ignore line: [GNU assembler version 2.38 (aarch64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.'] - ignore line: [Linking CXX executable cmTC_83d7d] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_83d7d.dir/link.txt --verbose=1] - ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_83d7d ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.'] + ignore line: [Linking CXX executable cmTC_09e49] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_09e49.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_09e49 ] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/c++] ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] @@ -370,13 +370,13 @@ Parsed CXX implicit link information from above output: ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ] ignore line: [COMPILER_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/aarch64-linux-gnu/11/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/:/lib/aarch64-linux-gnu/:/lib/../lib/:/usr/lib/aarch64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/aarch64-linux-gnu/11/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_83d7d' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_83d7d.'] - link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccR5GAuH.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_83d7d /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_09e49' '-shared-libgcc' '-mlittle-endian' '-mabi=lp64' '-dumpdir' 'cmTC_09e49.'] + link line: [ /usr/lib/gcc/aarch64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccYBVWhH.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux --fix-cortex-a53-843419 -pie -z now -z relro -o cmTC_09e49 /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/aarch64-linux-gnu/11 -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/11/../../.. CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/aarch64-linux-gnu/11/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crtn.o] arg [/usr/lib/gcc/aarch64-linux-gnu/11/collect2] ==> ignore arg [-plugin] ==> ignore arg [/usr/lib/gcc/aarch64-linux-gnu/11/liblto_plugin.so] ==> ignore arg [-plugin-opt=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper] ==> ignore - arg [-plugin-opt=-fresolution=/tmp/ccR5GAuH.res] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccYBVWhH.res] ==> ignore arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore arg [-plugin-opt=-pass-through=-lgcc] ==> ignore arg [-plugin-opt=-pass-through=-lc] ==> ignore @@ -396,7 +396,7 @@ Parsed CXX implicit link information from above output: arg [-znow] ==> ignore arg [-zrelro] ==> ignore arg [-o] ==> ignore - arg [cmTC_83d7d] ==> ignore + arg [cmTC_09e49] ==> ignore arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/Scrt1.o] arg [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/crti.o] arg [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/aarch64-linux-gnu/11/crtbeginS.o] @@ -408,7 +408,7 @@ Parsed CXX implicit link information from above output: arg [-L/usr/lib/aarch64-linux-gnu] ==> dir [/usr/lib/aarch64-linux-gnu] arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] arg [-L/usr/lib/gcc/aarch64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/aarch64-linux-gnu/11/../../..] - arg [CMakeFiles/cmTC_83d7d.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [CMakeFiles/cmTC_09e49.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore arg [-lstdc++] ==> lib [stdc++] arg [-lm] ==> lib [m] arg [-lgcc_s] ==> lib [gcc_s] diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile.cmake b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile.cmake index ecfd1a0..1b3b308 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile.cmake +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile.cmake @@ -10,7 +10,7 @@ set(CMAKE_MAKEFILE_DEPENDS "CMakeFiles/3.22.1/CMakeCCompiler.cmake" "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" "CMakeFiles/3.22.1/CMakeSystem.cmake" - "/_profile/AclNNInvocation/src/CMakeLists.txt" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/CMakeLists.txt" "/usr/share/cmake-3.22/Modules/CMakeCCompiler.cmake.in" "/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c" "/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake" diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile2 b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile2 index cbeeddb..145a58e 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile2 +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/Makefile2 @@ -54,10 +54,10 @@ RM = /usr/bin/cmake -E rm -f EQUALS = = # The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /_profile/AclNNInvocation/src +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src # The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /_profile/AclNNInvocation/build +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build #============================================================================= # Directory level rules for the build root directory @@ -81,14 +81,14 @@ clean: CMakeFiles/execute_add_op.dir/clean CMakeFiles/execute_add_op.dir/all: $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/depend $(MAKE) $(MAKESILENT) -f CMakeFiles/execute_add_op.dir/build.make CMakeFiles/execute_add_op.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/_profile/AclNNInvocation/build/CMakeFiles --progress-num=1,2,3,4,5 "Built target execute_add_op" + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=1,2,3,4,5 "Built target execute_add_op" .PHONY : CMakeFiles/execute_add_op.dir/all # Build rule for subdir invocation for target. CMakeFiles/execute_add_op.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /_profile/AclNNInvocation/build/CMakeFiles 5 + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles 5 $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/execute_add_op.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /_profile/AclNNInvocation/build/CMakeFiles 0 + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles 0 .PHONY : CMakeFiles/execute_add_op.dir/rule # Convenience name for target. diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt index 1c088f7..175ba47 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/TargetDirectories.txt @@ -1,7 +1,7 @@ -/_profile/AclNNInvocation/build/CMakeFiles/execute_add_op.dir -/_profile/AclNNInvocation/build/CMakeFiles/edit_cache.dir -/_profile/AclNNInvocation/build/CMakeFiles/rebuild_cache.dir -/_profile/AclNNInvocation/build/CMakeFiles/list_install_components.dir -/_profile/AclNNInvocation/build/CMakeFiles/install.dir -/_profile/AclNNInvocation/build/CMakeFiles/install/local.dir -/_profile/AclNNInvocation/build/CMakeFiles/install/strip.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/edit_cache.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/rebuild_cache.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/list_install_components.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/install.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/install/local.dir +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/install/strip.dir diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake index f0de23a..882d690 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake @@ -8,10 +8,10 @@ set(CMAKE_DEPENDS_LANGUAGES # The set of dependency files which are needed: set(CMAKE_DEPENDS_DEPENDENCY_FILES - "/_profile/AclNNInvocation/src/common.cpp" "CMakeFiles/execute_add_op.dir/common.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/common.cpp.o.d" - "/_profile/AclNNInvocation/src/main.cpp" "CMakeFiles/execute_add_op.dir/main.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/main.cpp.o.d" - "/_profile/AclNNInvocation/src/op_runner.cpp" "CMakeFiles/execute_add_op.dir/op_runner.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d" - "/_profile/AclNNInvocation/src/operator_desc.cpp" "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp" "CMakeFiles/execute_add_op.dir/common.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/common.cpp.o.d" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp" "CMakeFiles/execute_add_op.dir/main.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/main.cpp.o.d" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp" "CMakeFiles/execute_add_op.dir/op_runner.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp" "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" "gcc" "CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d" ) # Targets to which this target links. diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make index 57ba7c0..1e4d13a 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/build.make @@ -53,10 +53,10 @@ RM = /usr/bin/cmake -E rm -f EQUALS = = # The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /_profile/AclNNInvocation/src +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src # The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /_profile/AclNNInvocation/build +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build # Include any dependencies generated for this target. include CMakeFiles/execute_add_op.dir/depend.make @@ -70,60 +70,60 @@ include CMakeFiles/execute_add_op.dir/progress.make include CMakeFiles/execute_add_op.dir/flags.make CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: CMakeFiles/execute_add_op.dir/flags.make -CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: /_profile/AclNNInvocation/src/operator_desc.cpp +CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/_profile/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/operator_desc.cpp.o -MF CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d -o CMakeFiles/execute_add_op.dir/operator_desc.cpp.o -c /_profile/AclNNInvocation/src/operator_desc.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/execute_add_op.dir/operator_desc.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/operator_desc.cpp.o -MF CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d -o CMakeFiles/execute_add_op.dir/operator_desc.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp CMakeFiles/execute_add_op.dir/operator_desc.cpp.i: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/operator_desc.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /_profile/AclNNInvocation/src/operator_desc.cpp > CMakeFiles/execute_add_op.dir/operator_desc.cpp.i + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp > CMakeFiles/execute_add_op.dir/operator_desc.cpp.i CMakeFiles/execute_add_op.dir/operator_desc.cpp.s: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/operator_desc.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /_profile/AclNNInvocation/src/operator_desc.cpp -o CMakeFiles/execute_add_op.dir/operator_desc.cpp.s + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp -o CMakeFiles/execute_add_op.dir/operator_desc.cpp.s CMakeFiles/execute_add_op.dir/op_runner.cpp.o: CMakeFiles/execute_add_op.dir/flags.make -CMakeFiles/execute_add_op.dir/op_runner.cpp.o: /_profile/AclNNInvocation/src/op_runner.cpp +CMakeFiles/execute_add_op.dir/op_runner.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp CMakeFiles/execute_add_op.dir/op_runner.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/_profile/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/execute_add_op.dir/op_runner.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/op_runner.cpp.o -MF CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d -o CMakeFiles/execute_add_op.dir/op_runner.cpp.o -c /_profile/AclNNInvocation/src/op_runner.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/execute_add_op.dir/op_runner.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/op_runner.cpp.o -MF CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d -o CMakeFiles/execute_add_op.dir/op_runner.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp CMakeFiles/execute_add_op.dir/op_runner.cpp.i: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/op_runner.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /_profile/AclNNInvocation/src/op_runner.cpp > CMakeFiles/execute_add_op.dir/op_runner.cpp.i + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp > CMakeFiles/execute_add_op.dir/op_runner.cpp.i CMakeFiles/execute_add_op.dir/op_runner.cpp.s: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/op_runner.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /_profile/AclNNInvocation/src/op_runner.cpp -o CMakeFiles/execute_add_op.dir/op_runner.cpp.s + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp -o CMakeFiles/execute_add_op.dir/op_runner.cpp.s CMakeFiles/execute_add_op.dir/main.cpp.o: CMakeFiles/execute_add_op.dir/flags.make -CMakeFiles/execute_add_op.dir/main.cpp.o: /_profile/AclNNInvocation/src/main.cpp +CMakeFiles/execute_add_op.dir/main.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp CMakeFiles/execute_add_op.dir/main.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/_profile/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/execute_add_op.dir/main.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/main.cpp.o -MF CMakeFiles/execute_add_op.dir/main.cpp.o.d -o CMakeFiles/execute_add_op.dir/main.cpp.o -c /_profile/AclNNInvocation/src/main.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/execute_add_op.dir/main.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/main.cpp.o -MF CMakeFiles/execute_add_op.dir/main.cpp.o.d -o CMakeFiles/execute_add_op.dir/main.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp CMakeFiles/execute_add_op.dir/main.cpp.i: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/main.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /_profile/AclNNInvocation/src/main.cpp > CMakeFiles/execute_add_op.dir/main.cpp.i + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp > CMakeFiles/execute_add_op.dir/main.cpp.i CMakeFiles/execute_add_op.dir/main.cpp.s: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/main.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /_profile/AclNNInvocation/src/main.cpp -o CMakeFiles/execute_add_op.dir/main.cpp.s + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/main.cpp -o CMakeFiles/execute_add_op.dir/main.cpp.s CMakeFiles/execute_add_op.dir/common.cpp.o: CMakeFiles/execute_add_op.dir/flags.make -CMakeFiles/execute_add_op.dir/common.cpp.o: /_profile/AclNNInvocation/src/common.cpp +CMakeFiles/execute_add_op.dir/common.cpp.o: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp CMakeFiles/execute_add_op.dir/common.cpp.o: CMakeFiles/execute_add_op.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/_profile/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/execute_add_op.dir/common.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/common.cpp.o -MF CMakeFiles/execute_add_op.dir/common.cpp.o.d -o CMakeFiles/execute_add_op.dir/common.cpp.o -c /_profile/AclNNInvocation/src/common.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/execute_add_op.dir/common.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/execute_add_op.dir/common.cpp.o -MF CMakeFiles/execute_add_op.dir/common.cpp.o.d -o CMakeFiles/execute_add_op.dir/common.cpp.o -c /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp CMakeFiles/execute_add_op.dir/common.cpp.i: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/execute_add_op.dir/common.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /_profile/AclNNInvocation/src/common.cpp > CMakeFiles/execute_add_op.dir/common.cpp.i + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp > CMakeFiles/execute_add_op.dir/common.cpp.i CMakeFiles/execute_add_op.dir/common.cpp.s: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/execute_add_op.dir/common.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /_profile/AclNNInvocation/src/common.cpp -o CMakeFiles/execute_add_op.dir/common.cpp.s + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp -o CMakeFiles/execute_add_op.dir/common.cpp.s # Object files for target execute_add_op execute_add_op_OBJECTS = \ @@ -135,17 +135,17 @@ execute_add_op_OBJECTS = \ # External object files for target execute_add_op execute_add_op_EXTERNAL_OBJECTS = -/_profile/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/operator_desc.cpp.o -/_profile/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/op_runner.cpp.o -/_profile/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/main.cpp.o -/_profile/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/common.cpp.o -/_profile/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/build.make -/_profile/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/_profile/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Linking CXX executable /_profile/AclNNInvocation/output/execute_add_op" +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/operator_desc.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/op_runner.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/main.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/common.cpp.o +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/build.make +/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op: CMakeFiles/execute_add_op.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Linking CXX executable /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op" $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/execute_add_op.dir/link.txt --verbose=$(VERBOSE) # Rule to build all files generated by this target. -CMakeFiles/execute_add_op.dir/build: /_profile/AclNNInvocation/output/execute_add_op +CMakeFiles/execute_add_op.dir/build: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op .PHONY : CMakeFiles/execute_add_op.dir/build CMakeFiles/execute_add_op.dir/clean: @@ -153,6 +153,6 @@ CMakeFiles/execute_add_op.dir/clean: .PHONY : CMakeFiles/execute_add_op.dir/clean CMakeFiles/execute_add_op.dir/depend: - cd /_profile/AclNNInvocation/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /_profile/AclNNInvocation/src /_profile/AclNNInvocation/src /_profile/AclNNInvocation/build /_profile/AclNNInvocation/build /_profile/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake --color=$(COLOR) + cd /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/DependInfo.cmake --color=$(COLOR) .PHONY : CMakeFiles/execute_add_op.dir/depend diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake index 602a05d..3dcafd3 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/cmake_clean.cmake @@ -1,6 +1,6 @@ file(REMOVE_RECURSE - "/_profile/AclNNInvocation/output/execute_add_op" - "/_profile/AclNNInvocation/output/execute_add_op.pdb" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op" + "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op.pdb" "CMakeFiles/execute_add_op.dir/common.cpp.o" "CMakeFiles/execute_add_op.dir/common.cpp.o.d" "CMakeFiles/execute_add_op.dir/main.cpp.o" diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d index c27d4b4..6650d42 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/common.cpp.o.d @@ -1,6 +1,8 @@ CMakeFiles/execute_add_op.dir/common.cpp.o: \ - /_profile/AclNNInvocation/src/common.cpp /usr/include/stdc-predef.h \ - /_profile/AclNNInvocation/src/../inc/common.h /usr/include/c++/11/cstdio \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/common.cpp \ + /usr/include/stdc-predef.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h \ + /usr/include/c++/11/cstdio \ /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ /usr/include/features.h /usr/include/features-time64.h \ diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make index 8ccb6d9..2151d9f 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/flags.make @@ -4,7 +4,7 @@ # compile CXX with /usr/bin/c++ CXX_DEFINES = -CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/runtime/include -I/usr/local/Ascend/ascend-toolkit/latest/atc/include -I/_profile/AclNNInvocation/src/../inc -I/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/include +CXX_INCLUDES = -I/usr/local/Ascend/ascend-toolkit/latest/runtime/include -I/usr/local/Ascend/ascend-toolkit/latest/atc/include -I/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc -I/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/include CXX_FLAGS = -std=c++11 diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt index 55d00e1..6463248 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/link.txt @@ -1 +1 @@ -/usr/bin/c++ CMakeFiles/execute_add_op.dir/operator_desc.cpp.o CMakeFiles/execute_add_op.dir/op_runner.cpp.o CMakeFiles/execute_add_op.dir/main.cpp.o CMakeFiles/execute_add_op.dir/common.cpp.o -o /_profile/AclNNInvocation/output/execute_add_op -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -L/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/lib -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64:/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/lib: -lascendcl -lcust_opapi -lacl_op_compiler -lnnopbase -lstdc++ +/usr/bin/c++ CMakeFiles/execute_add_op.dir/operator_desc.cpp.o CMakeFiles/execute_add_op.dir/op_runner.cpp.o CMakeFiles/execute_add_op.dir/main.cpp.o CMakeFiles/execute_add_op.dir/common.cpp.o -o /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op -L/usr/local/Ascend/ascend-toolkit/latest/lib64 -L/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/lib -Wl,-rpath,/usr/local/Ascend/ascend-toolkit/latest/lib64:/usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/lib: -lascendcl -lcust_opapi -lacl_op_compiler -lnnopbase -lstdc++ diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/main.cpp.o index 90e0ff21ad7e759d822e2226bb03a89b2d42b0df..47894777ca214f8f769f984333e10291321c2f2c 100644 GIT binary patch delta 25 hcmbO+m3hWg<_#N}xL6u4J&Y delta 25 hcmbO+m3hWg<_#N}xR@F)J-wOSq`1ve16Y5pKW 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 UF3a5%)|Y8{k)0|iF6Nf}7mc8F6#xJL diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d index 2e77187..793432f 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/op_runner.cpp.o.d @@ -1,6 +1,7 @@ CMakeFiles/execute_add_op.dir/op_runner.cpp.o: \ - /_profile/AclNNInvocation/src/op_runner.cpp /usr/include/stdc-predef.h \ - /_profile/AclNNInvocation/src/../inc/op_runner.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/op_runner.cpp \ + /usr/include/stdc-predef.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/op_runner.h \ /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl.h \ /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_rt.h \ /usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \ @@ -60,8 +61,9 @@ CMakeFiles/execute_add_op.dir/op_runner.cpp.o: \ /usr/include/alloca.h /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \ /usr/include/c++/11/bits/std_abs.h \ /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_base.h \ - /_profile/AclNNInvocation/src/../inc/common.h /usr/include/c++/11/cstdio \ - /usr/include/stdio.h /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h \ + /usr/include/c++/11/cstdio /usr/include/stdio.h \ + /usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \ /usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \ /usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \ /usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \ @@ -170,11 +172,11 @@ CMakeFiles/execute_add_op.dir/op_runner.cpp.o: \ /usr/include/c++/11/bits/stl_vector.h \ /usr/include/c++/11/bits/stl_bvector.h \ /usr/include/c++/11/bits/vector.tcc \ - /_profile/AclNNInvocation/src/../inc/operator_desc.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/operator_desc.h \ /usr/include/c++/11/cassert /usr/include/assert.h \ /usr/include/c++/11/limits \ /usr/local/Ascend/ascend-toolkit/latest/atc/include/acl/acl_op_compiler.h \ /usr/local/Ascend/ascend-toolkit/latest/atc/include/acl/acl_base.h \ /usr/local/Ascend/ascend-toolkit/latest/atc/include/acl/acl_op.h \ /usr/local/Ascend/ascend-toolkit/latest/opp/vendors/customize/op_api/include/aclnn_add_custom.h \ - /_profile/AclNNInvocation/src/../inc/common.h + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h diff --git a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d index fd96837..cfc45b1 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d +++ b/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles/execute_add_op.dir/operator_desc.cpp.o.d @@ -1,7 +1,7 @@ CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: \ - /_profile/AclNNInvocation/src/operator_desc.cpp \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/operator_desc.cpp \ /usr/include/stdc-predef.h \ - /_profile/AclNNInvocation/src/../inc/operator_desc.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/operator_desc.h \ /usr/include/c++/11/string \ /usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \ /usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \ @@ -140,7 +140,7 @@ CMakeFiles/execute_add_op.dir/operator_desc.cpp.o: \ /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/error_codes/ge_error_codes.h \ /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_op.h \ /usr/local/Ascend/ascend-toolkit/latest/runtime/include/acl/acl_mdl.h \ - /_profile/AclNNInvocation/src/../inc/common.h \ + /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src/../inc/common.h \ /usr/include/c++/11/iomanip /usr/include/c++/11/bits/ios_base.h \ /usr/include/c++/11/bits/locale_classes.h \ /usr/include/c++/11/bits/locale_classes.tcc \ diff --git a/Increase_DataCopy_case/AclNNInvocation/build/Makefile b/Increase_DataCopy_case/AclNNInvocation/build/Makefile index e7cb05b..cf78733 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/Makefile +++ b/Increase_DataCopy_case/AclNNInvocation/build/Makefile @@ -57,10 +57,10 @@ RM = /usr/bin/cmake -E rm -f EQUALS = = # The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /_profile/AclNNInvocation/src +CMAKE_SOURCE_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src # The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /_profile/AclNNInvocation/build +CMAKE_BINARY_DIR = /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build #============================================================================= # Targets provided globally by CMake. @@ -132,9 +132,9 @@ install/strip/fast: preinstall/fast # The main all target all: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /_profile/AclNNInvocation/build/CMakeFiles /_profile/AclNNInvocation/build//CMakeFiles/progress.marks + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build//CMakeFiles/progress.marks $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all - $(CMAKE_COMMAND) -E cmake_progress_start /_profile/AclNNInvocation/build/CMakeFiles 0 + $(CMAKE_COMMAND) -E cmake_progress_start /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/CMakeFiles 0 .PHONY : all # The main clean target diff --git a/Increase_DataCopy_case/AclNNInvocation/build/cmake_install.cmake b/Increase_DataCopy_case/AclNNInvocation/build/cmake_install.cmake index c9c449f..027ce20 100644 --- a/Increase_DataCopy_case/AclNNInvocation/build/cmake_install.cmake +++ b/Increase_DataCopy_case/AclNNInvocation/build/cmake_install.cmake @@ -1,4 +1,4 @@ -# Install script for directory: /_profile/AclNNInvocation/src +# Install script for directory: /Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/src # Set the install prefix if(NOT DEFINED CMAKE_INSTALL_PREFIX) @@ -49,7 +49,7 @@ if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_ FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op" RPATH "") endif() - file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/../output" TYPE EXECUTABLE FILES "/_profile/AclNNInvocation/output/execute_add_op") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/../output" TYPE EXECUTABLE FILES "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/output/execute_add_op") if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op" AND NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/../output/execute_add_op") file(RPATH_CHANGE @@ -70,5 +70,5 @@ endif() string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT "${CMAKE_INSTALL_MANIFEST_FILES}") -file(WRITE "/_profile/AclNNInvocation/build/${CMAKE_INSTALL_MANIFEST}" +file(WRITE "/Test_performance/Operator-performance/Increase_DataCopy_case/AclNNInvocation/build/${CMAKE_INSTALL_MANIFEST}" "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/Increase_DataCopy_case/AclNNInvocation/input/input_x.bin b/Increase_DataCopy_case/AclNNInvocation/input/input_x.bin index c215dab0aafd8c49f8418de903ee6073699c6f11..3ac49e781c8d7df0276a2411bb48dbff22ebe3c3 100644 GIT binary patch literal 262144 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 `FoNxo_3#tF z!25j_db;+gQ^pd1ACk}d%sR^fbfF$UhZu4MSZQT7WaYol>;!} zwzQ|Kxn^40$=Str$F3or;h`H2ibawybx?<|Yplr3l2|dTpIMGYSgFxOzZ2Vmf505v ztv`mVwF!%~H8g29Pq<}VrC-=rm0zClMcDblxX=rZ)1Wl-aOTEbd-}K6zQa6X`+6z~>6B zAr*FlL%fZ!F(@pHI7OhIGFn!))rZo9a-su@u035JDxa};*fbZyj_x(KxO-_@`4Fw3 zx4;}g!>+%HwcMGnKUGm|9?PPRicbFdY8#r6_L7(J0$N~@j#62y{j!hW3ok?lr0R!* z7<`-z^Vc>e+IihvT$8_i+2mU!KKH8>{0Waosz&ihHJPrn7lN<$80^&ANOPaWIhP$S z{=Dj{9%=oey|oa&Rqb;$tN`q#Q72+IaGi~ z@l4yp=i$%K$7bT&J;Lk{UWP4yk}J9)Ct8D{nY1C9@LOAETbFEUgU#?+oyjwv`=*V-pY2Am=*3-)y>>;^8rn8MKxm}6h z0v9`zQ-H*xXGy8n$bY)gv7`p2Yl4^|s$ipwh#KAvk))|;j6mR#y?;##KH$Q1P#$vZ=?>33Vw#9LZ5g;A>eQD!Vy@&=q}pJ`+@PufoEeeP_{GaA#$1gfl0NR?OOlxDe#|f z_iqEs{kX^yKU`%1`}?-j8{D`)e7StYx1q^vD)=AuRE&5_8;W(VYF zEZGdEdq19Ab_RK2g0tEx?HPr3;N50->_s2x(V_}Yi_dHj%L%n;25w8#J}2Lz^+S@% zaD^oXo2c}T*Y}fkgcIv7FR#Bs&ryDr1_YQC=r|lAZ}QCGkS*}dLw0dB-6A)U5OfLb zRD)?5ZIc}$3iE*2DKpYMZd&uTy)7u!G(4xt?PzzPZ0$`Ttz<4IzqkoEkWC88GVHp{ zU{5t&)>UnwYvVU-lVl>bFok7t4}!k?%b(qyDys(P`_AwJAdenn1&o%etz873iD