diff --git a/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp b/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp index b2989d88359..29fd484e956 100755 --- a/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp +++ b/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp @@ -163,11 +163,16 @@ int AclProcess::WriteResult(const std::string& imageFile) { fileName.replace(fileName.find('.'), fileName.size() - fileName.find('.'), "_" + std::to_string(i) + ".bin"); std::string outFileName = homePath + "/" + fileName; - FILE * outputFile = fopen(outFileName.c_str(), "wb"); - fwrite(resHostBuf, output_size, sizeof(char), outputFile); + try { + FILE * outputFile = fopen(outFileName.c_str(), "wb"); + fwrite(resHostBuf, output_size, sizeof(char), outputFile); + fclose(outputFile); + outputFile = nullptr; + } catch (std::exception &e) { + std::cout << "write result file " << outFileName << " failed, error info: " << e.what() << std::endl; + std::exit(1); + } - fclose(outputFile); - outputFile = nullptr; ret = aclrtFreeHost(resHostBuf); if (ret != OK) { std::cout << "aclrtFree host output memory failed" << std::endl; diff --git a/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/CMakeLists.txt b/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/CMakeLists.txt index a4bf0708aae..6692617862b 100755 --- a/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/CMakeLists.txt +++ b/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/CMakeLists.txt @@ -22,20 +22,21 @@ set(PROJECT_SRC_ROOT ${CMAKE_CURRENT_LIST_DIR}/) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SRC_ROOT}/out) # Set include directory and library directory -#set(ACL_INC_DIR $ENV{ASCEND_HOME}/$ENV{ASCEND_VERSION}/$ENV{ARCH_PATTERN}/include) -#set(ACL_LIB_DIR $ENV{ASCEND_HOME}/$ENV{ASCEND_VERSION}/$ENV{ARCH_PATTERN}/lib64/stub) -set(ACL_INC_DIR $ENV{ASCEND_HOME}/acllib/include) -set(ACL_LIB_DIR $ENV{ASCEND_HOME}/acllib/lib64/stub) +set(ACL_LIB_DIR $ENV{ASCEND_HOME}/acllib) +set(ATLAS_ACL_LIB_DIR ${ASCEND_HOME}/ascend-toolkit/latest/acllib) # Header path -include_directories(${ACL_INC_DIR}) +include_directories(${ACL_LIB_DIR}/include/) +include_directories(${ATLAS_ACL_LIB_DIR}/include/}) include_directories(${PROJECT_SRC_ROOT}/../inc) # add host lib path link_directories(${ACL_LIB_DIR}) +find_library(acl libascendcl.so ${ACL_LIB_DIR}/lib64 ${ATLAS_ACL_LIB_DIR}/lib64) +find_library(acl_dvpp libacl_dvpp.so ${ACL_LIB_DIR}/lib64 ${ATLAS_ACL_LIB_DIR}/lib64) add_executable(main AclProcess.cpp DvppCommon.cpp ModelProcess.cpp main.cpp) -target_link_libraries(main ascendcl gflags acl_dvpp pthread) +target_link_libraries(main ${acl} gflags ${acl_dvpp} pthread) diff --git a/model_zoo/official/cv/faster_rcnn/scripts/run_infer_310.sh b/model_zoo/official/cv/faster_rcnn/scripts/run_infer_310.sh index 9c8bcbae671..18888108a75 100755 --- a/model_zoo/official/cv/faster_rcnn/scripts/run_infer_310.sh +++ b/model_zoo/official/cv/faster_rcnn/scripts/run_infer_310.sh @@ -16,7 +16,7 @@ if [[ $# -lt 3 || $# -gt 4 ]]; then echo "Usage: sh run_infer_310.sh [AIR_PATH] [DATA_PATH] [ANN_FILE_PATH] [DEVICE_ID] - DEVICE_ID is optional, it can be setted by environment variable device_id, otherwise the value is zero" + DEVICE_ID is optional, it can be set by environment variable device_id, otherwise the value is zero" exit 1 fi @@ -47,10 +47,18 @@ echo $ann_file echo $device_id export ASCEND_HOME=/usr/local/Ascend/ -export PATH=$ASCEND_HOME/atc/ccec_compiler/bin:$ASCEND_HOME/atc/bin:$PATH -export LD_LIBRARY_PATH=/usr/local/lib:$ASCEND_HOME/atc/lib64:$ASCEND_HOME/acllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ones:$LD_LIBRARY_PATH -export PYTHONPATH=$ASCEND_HOME/atc/python/site-packages/te.egg:$ASCEND_HOME/atc/python/site-packages/topi.egg:$ASCEND_HOME/atc/python/site-packages/auto_tune.egg::$ASCEND_HOME/atc/python/site-packages/schedule_search.egg:$PYTHONPATH -export ASCEND_OPP_PATH=$ASCEND_HOME/opp +if [ -d ${ASCEND_HOME}/ascend-toolkit ]; then + export PATH=$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/ccec_compiler/bin:$ASCEND_HOME/ascend-toolkit/latest/atc/bin:$PATH + export LD_LIBRARY_PATH=/usr/local/lib:$ASCEND_HOME/ascend-toolkit/latest/atc/lib64:$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ones:$LD_LIBRARY_PATH + export TBE_IMPL_PATH=${ASCEND_HOME}/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe + export PYTHONPATH=${TBE_IMPL_PATH}:$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/python/site-packages:$PYTHONPATH + export ASCEND_OPP_PATH=$ASCEND_HOME/ascend-toolkit/latest/opp +else + export PATH=$ASCEND_HOME/atc/ccec_compiler/bin:$ASCEND_HOME/atc/bin:$PATH + export LD_LIBRARY_PATH=/usr/local/lib:$ASCEND_HOME/atc/lib64:$ASCEND_HOME/acllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ones:$LD_LIBRARY_PATH + export PYTHONPATH=$ASCEND_HOME/atc/python/site-packages:$PYTHONPATH + export ASCEND_OPP_PATH=$ASCEND_HOME/opp +fi function air_to_om() { @@ -94,7 +102,7 @@ if [ $? -ne 0 ]; then fi infer if [ $? -ne 0 ]; then - echo "excute inference failed" + echo "execute inference failed" exit 1 fi cal_acc diff --git a/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp b/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp index f825c6cc8e3..20b0e45b3cf 100755 --- a/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp +++ b/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp @@ -163,11 +163,16 @@ int AclProcess::WriteResult(const std::string& imageFile) { fileName.replace(fileName.find('.'), fileName.size() - fileName.find('.'), "_" + std::to_string(i) + ".bin"); std::string outFileName = homePath + "/" + fileName; - FILE * outputFile = fopen(outFileName.c_str(), "wb"); - fwrite(resHostBuf, output_size, sizeof(char), outputFile); + try { + FILE * outputFile = fopen(outFileName.c_str(), "wb"); + fwrite(resHostBuf, output_size, sizeof(char), outputFile); + fclose(outputFile); + outputFile = nullptr; + } catch (std::exception &e) { + std::cout << "write result file " << outFileName << " failed, error info: " << e.what() << std::endl; + std::exit(1); + } - fclose(outputFile); - outputFile = nullptr; ret = aclrtFreeHost(resHostBuf); if (ret != OK) { std::cout << "aclrtFree host output memory failed" << std::endl; diff --git a/model_zoo/official/cv/maskrcnn/ascend310_infer/src/CMakeLists.txt b/model_zoo/official/cv/maskrcnn/ascend310_infer/src/CMakeLists.txt index a4bf0708aae..6692617862b 100755 --- a/model_zoo/official/cv/maskrcnn/ascend310_infer/src/CMakeLists.txt +++ b/model_zoo/official/cv/maskrcnn/ascend310_infer/src/CMakeLists.txt @@ -22,20 +22,21 @@ set(PROJECT_SRC_ROOT ${CMAKE_CURRENT_LIST_DIR}/) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SRC_ROOT}/out) # Set include directory and library directory -#set(ACL_INC_DIR $ENV{ASCEND_HOME}/$ENV{ASCEND_VERSION}/$ENV{ARCH_PATTERN}/include) -#set(ACL_LIB_DIR $ENV{ASCEND_HOME}/$ENV{ASCEND_VERSION}/$ENV{ARCH_PATTERN}/lib64/stub) -set(ACL_INC_DIR $ENV{ASCEND_HOME}/acllib/include) -set(ACL_LIB_DIR $ENV{ASCEND_HOME}/acllib/lib64/stub) +set(ACL_LIB_DIR $ENV{ASCEND_HOME}/acllib) +set(ATLAS_ACL_LIB_DIR ${ASCEND_HOME}/ascend-toolkit/latest/acllib) # Header path -include_directories(${ACL_INC_DIR}) +include_directories(${ACL_LIB_DIR}/include/) +include_directories(${ATLAS_ACL_LIB_DIR}/include/}) include_directories(${PROJECT_SRC_ROOT}/../inc) # add host lib path link_directories(${ACL_LIB_DIR}) +find_library(acl libascendcl.so ${ACL_LIB_DIR}/lib64 ${ATLAS_ACL_LIB_DIR}/lib64) +find_library(acl_dvpp libacl_dvpp.so ${ACL_LIB_DIR}/lib64 ${ATLAS_ACL_LIB_DIR}/lib64) add_executable(main AclProcess.cpp DvppCommon.cpp ModelProcess.cpp main.cpp) -target_link_libraries(main ascendcl gflags acl_dvpp pthread) +target_link_libraries(main ${acl} gflags ${acl_dvpp} pthread) diff --git a/model_zoo/official/cv/maskrcnn/scripts/run_infer_310.sh b/model_zoo/official/cv/maskrcnn/scripts/run_infer_310.sh index 7da0a5f408b..a419dc4241c 100755 --- a/model_zoo/official/cv/maskrcnn/scripts/run_infer_310.sh +++ b/model_zoo/official/cv/maskrcnn/scripts/run_infer_310.sh @@ -16,7 +16,7 @@ if [[ $# -lt 3 || $# -gt 4 ]]; then echo "Usage: sh run_infer_310.sh [AIR_PATH] [DATA_PATH] [ANN_FILE_PATH] [DEVICE_ID] - DEVICE_ID is optional, it can be setted by environment variable device_id, otherwise the value is zero" + DEVICE_ID is optional, it can be set by environment variable device_id, otherwise the value is zero" exit 1 fi @@ -46,10 +46,18 @@ echo $ann_file echo $device_id export ASCEND_HOME=/usr/local/Ascend/ -export PATH=$ASCEND_HOME/atc/ccec_compiler/bin:$ASCEND_HOME/atc/bin:$PATH -export LD_LIBRARY_PATH=/usr/local/lib:$ASCEND_HOME/atc/lib64:$ASCEND_HOME/acllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ones:$LD_LIBRARY_PATH -export PYTHONPATH=$ASCEND_HOME/atc/python/site-packages/te.egg:$ASCEND_HOME/atc/python/site-packages/topi.egg:$ASCEND_HOME/atc/python/site-packages/auto_tune.egg::$ASCEND_HOME/atc/python/site-packages/schedule_search.egg:$PYTHONPATH -export ASCEND_OPP_PATH=$ASCEND_HOME/opp +if [ -d ${ASCEND_HOME}/ascend-toolkit ]; then + export PATH=$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/ccec_compiler/bin:$ASCEND_HOME/ascend-toolkit/latest/atc/bin:$PATH + export LD_LIBRARY_PATH=/usr/local/lib:$ASCEND_HOME/ascend-toolkit/latest/atc/lib64:$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ones:$LD_LIBRARY_PATH + export TBE_IMPL_PATH=${ASCEND_HOME}/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe + export PYTHONPATH=${TBE_IMPL_PATH}:$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/python/site-packages:$PYTHONPATH + export ASCEND_OPP_PATH=$ASCEND_HOME/ascend-toolkit/latest/opp +else + export PATH=$ASCEND_HOME/atc/ccec_compiler/bin:$ASCEND_HOME/atc/bin:$PATH + export LD_LIBRARY_PATH=/usr/local/lib:$ASCEND_HOME/atc/lib64:$ASCEND_HOME/acllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ones:$LD_LIBRARY_PATH + export PYTHONPATH=$ASCEND_HOME/atc/python/site-packages:$PYTHONPATH + export ASCEND_OPP_PATH=$ASCEND_HOME/opp +fi function air_to_om() { @@ -93,7 +101,7 @@ if [ $? -ne 0 ]; then fi infer if [ $? -ne 0 ]; then - echo "excute inference failed" + echo "execute inference failed" exit 1 fi cal_acc