続・XIRのビルド

ビルドしたxirを検証したらこんな感じでパッケージを読んでくれない。

$ python3 -c "import pytorch_nndct"

[NNDCT_WARN]: Can't find xir package in your environment.

[NNDCT_NOTE]: Loading NNDCT kernels...

これダメなんだろうなぁ…

どこかでxirをpython2.7に入れる設定が紛れ込んでしまうのが原因だろう。

と、いうか、これいうのがあるからpythonって嫌いなんだよな。

pythonの設定箇所を探る

xirのソースディレクトリでpythonを調べると次のように教示される。

$ grep -R -i python 
cmake.sh:        -l help,clean,conda,build-only,build-python,user,home,type:,pack:,build-dir:,install-prefix:,cmake-options: \
cmake.sh:   --build-python) build_python=true;;
cmake.sh:# build python
cmake.sh:if ${build_python:=false}; then
cmake.sh:    args+=(-DBUILD_PYTHON=ON)
cmake.sh:    args+=(-DBUILD_PYTHON=OFF)
cmake.sh:    echo "    --build-python            build python. if --pack is declared, will build conda package"
README.md:XIR also provides Python APIs which named PyXIR. It enables Python users to fully access the XIR and get benefits in the pure Python environment, e.g. co-develop and integrate users' Python project with the current XIR based tools without massive dirty work to fix the gap between two languages.
README.md:./cmake.sh --build-python --user
.gitlab-ci.yml:       - ./cmake.sh --clean --build-python
.gitlab-ci.yml:       - ./cmake.sh --clean --build-python
src/python/wrapper/wrapper.cpp:// python 3.7 deprecate PyCreateThread, but pybind11 2.2.3 still uses
src/python/wrapper/wrapper.cpp:  m.doc() = "pyxir module for python bindings";
src/python/CMakeLists.txt:set(PYTHON_BUILD_PATH ${CMAKE_BINARY_DIR}/python)
src/python/CMakeLists.txt:  find_path(_PYBIND11_PATH pybind11 HINTS /usr/include/python3.7m)
src/python/CMakeLists.txt:    message(WARNING "PYBIND11 NOT FOUND. python extenions for vitis dpu runner will not be built.")
src/python/CMakeLists.txt:    find_package(Python3 REQUIRED COMPONENTS Development)
src/python/CMakeLists.txt:include/python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}m;${CMAKE_SOURCE_DIR}/include;${CMAKE_SOURCE_DIR}/src"
src/python/CMakeLists.txt:      -lpython${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}m
src/python/CMakeLists.txt:    set(PYTHON_SITE_PACKAGES_USER "lib/python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}/site-packages")
src/python/CMakeLists.txt:    set(PYTHON_SITE_PACKAGES "lib/python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}/site-packages")
src/python/CMakeLists.txt:  execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-m" "site" "--user-site"
src/python/CMakeLists.txt:    OUTPUT_VARIABLE PYTHON_SITE_PACKAGES_USER)
src/python/CMakeLists.txt:  string(REGEX REPLACE "\n" "" PYTHON_SITE_PACKAGES_USER ${PYTHON_SITE_PACKAGES_USER})
src/python/CMakeLists.txt:  install(TARGETS ${TARGET_NAME} DESTINATION lib/python)
src/python/CMakeLists.txt:  install(TARGETS ${TARGET_NAME} DESTINATION ${PYTHON_SITE_PACKAGES_USER})
src/python/CMakeLists.txt:  install(TARGETS ${TARGET_NAME} DESTINATION ${PYTHON_SITE_PACKAGES})
src/xir/op/shape_inference.cpp:  // https://www.tensorflow.org/api_docs/python/tf/keras/layers/Flatten,
src/CMakeLists.txt:if(BUILD_PYTHON)
src/CMakeLists.txt:  add_subdirectory(python)
CMakeLists.txt:option(BUILD_PYTHON "build python interface" OFF)
CMakeLists.txt:option(INSTALL_HOME "install python lib in cmake install path" OFF)
CMakeLists.txt:option(INSTALL_USER "install python lib in user space" OFF)

これからすると次のファイルのどこかだと思われる。

  • cmake.sh
  • .gitlab-ci.yml
  • src/python/CMakeLists.txt
  • src/CMakeLists.txt
  • CMakeLists.txt

順当に行けば、cmake.sh.gitlab-ci.ymlCMakeLists.txtは除外されるだろう。

それとPython3_も省いてよいだろう。

残る部分は下記のところかな?

$ grep -R -i python 
src/python/CMakeLists.txt:  execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-m" "site" "--user-site"
src/python/CMakeLists.txt:    OUTPUT_VARIABLE PYTHON_SITE_PACKAGES_USER)
src/python/CMakeLists.txt:  string(REGEX REPLACE "\n" "" PYTHON_SITE_PACKAGES_USER ${PYTHON_SITE_PACKAGES_USER})
src/python/CMakeLists.txt:  install(TARGETS ${TARGET_NAME} DESTINATION lib/python)
src/python/CMakeLists.txt:  install(TARGETS ${TARGET_NAME} DESTINATION ${PYTHON_SITE_PACKAGES_USER})
src/python/CMakeLists.txt:  install(TARGETS ${TARGET_NAME} DESTINATION ${PYTHON_SITE_PACKAGES})
src/CMakeLists.txt:  add_subdirectory(python)

そうなると一番怪しいのはPYTHON_EXECUTABLEなんだな。

messageをだしてみると、/usr/bin/pythonに向いていた。

src/python/CMakeLists.txtの次のところでPYTHON_SITE_PACKAGES_USER/home/hidemi/.local/lib/python2.7/site-packagesに向いていた。

  execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-m" "site" "--user-site"
    OUTPUT_VARIABLE PYTHON_SITE_PACKAGES_USER)

じゃぁ、PYTHON_EXECUTABLEって、どこから設定されるの?

それがわからないのでちょっと強引だけど次のように修正した。

  execute_process(COMMAND "${PYTHON_EXECUTABLE}3" "-m" "site" "--user-site"
    OUTPUT_VARIABLE PYTHON_SITE_PACKAGES_USER)

そしてビルドして…

$  ./cmake.sh --build-python --user
Native-platform building...
No LSB modules are available.
No LSB modules are available.
cd /home/hidemi/build/build.Ubuntu.20.04.x86_64.Debug/xir
cmake -DBUILD_TEST=ON -DBUILD_CONTRIB=OFF -DBUILD_DOC=OFF -DCMAKE_BUILD_TYPE=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_PYTHON=ON -DINSTALL_HOME=OFF -DINSTALL_USER=ON -DCMAKE_INSTALL_PREFIX=/home/hidemi/.local/Ubuntu.20.04.x86_64.Debug /home/hidemi/workspace/VitisAI/VitisAI_2020.2/Vitis-AI/tools/Vitis-AI-Runtime/VART/xir
-- Found importable target unilog::unilog: /usr/local/lib/libunilog.so.1.3.0
PYTHON_BUILD_PATH is /home/hidemi/build/build.Ubuntu.20.04.x86_64.Debug/xir/python
PYTHON_EXECUTABLE is /usr/bin/python
PYTHON_SITE_PACKAGES_USER is /home/hidemi/.local/lib/python3.8/site-packages

-- Configuring done
-- Generating done
-- Build files have been written to: /home/hidemi/build/build.Ubuntu.20.04.x86_64.Debug/xir
Scanning dependencies of target xir
[  1%] Building C object src/xir/CMakeFiles/xir.dir/version.c.o
[  3%] Linking CXX shared library libxir.so
[ 45%] Built target xir
[ 46%] Linking CXX executable test_c_api
[ 48%] Linking CXX shared module xir.so
[ 50%] Linking CXX executable test_deserialize_model.bin
[ 53%] Linking CXX executable test_graph_impl.bin
[ 53%] Linking CXX executable test_graph_iso.bin
[ 54%] Linking CXX executable test_graph_template.bin
[ 56%] Linking CXX executable test_c_api.bin
[ 58%] Linking CXX executable test_deserialize.bin
[ 59%] Linking CXX executable demo.bin
[ 61%] Linking CXX executable test_subgraph_iso.bin
[ 62%] Linking CXX executable test_subgraph_topo.bin
[ 64%] Linking CXX executable xir
[ 66%] Linking CXX executable test_subgraph.bin
[ 67%] Built target test_subgraph_iso.bin
[ 69%] Built target test_subgraph.bin
[ 70%] Built target test_c_api
[ 72%] Built target demo.bin
[ 74%] Built target test_c_api.bin
[ 75%] Built target test_graph_template.bin
[ 77%] Built target test_deserialize_model.bin
[ 79%] Built target test_graph_iso.bin
[ 80%] Built target test_graph_impl.bin
[ 82%] Built target test_deserialize.bin
[ 83%] Built target test_subgraph_topo.bin
[ 96%] Built target xir_util
[100%] Built target wrapper
[ 45%] Built target xir
[ 50%] Built target wrapper
[ 64%] Built target xir_util
[ 67%] Built target test_c_api
[ 70%] Built target test_deserialize_model.bin
[ 74%] Built target test_graph_impl.bin
[ 77%] Built target test_graph_iso.bin
[ 80%] Built target test_graph_template.bin
[ 83%] Built target test_subgraph_iso.bin
[ 87%] Built target demo.bin
[ 90%] Built target test_c_api.bin
[ 93%] Built target test_deserialize.bin
[ 96%] Built target test_subgraph.bin
[100%] Built target test_subgraph_topo.bin
Install the project...
-- Install configuration: "Debug"
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-config.cmake
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-config-version.cmake
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so.1.3.0
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so.1
-- Set runtime path of "/home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so.1.3.0" to "/usr/local/lib"
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/xir.h
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/op/op.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/op/op_def.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/attrs/attrs.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/attrs/attr_def.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/attrs/attr_expander.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/util/any.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/util/tool_function.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/util/data_type.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/graph/graph.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/graph/graph_template.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/graph/subgraph.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/tensor/tensor.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-targets.cmake
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-targets-debug.cmake
-- Installing: /home/hidemi/.local/lib/python3.8/site-packages/xir.so
-- Set runtime path of "/home/hidemi/.local/lib/python3.8/site-packages/xir.so" to "/usr/local/lib"
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/bin/xir
-- Set runtime path of "/home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/bin/xir" to "/usr/local/lib"

なんとか、/home/hidemi/.local/lib/python3.8/site-packages/xir.soにインストールされた。

でも、これでうまく行くとは限らない。

$  python3 -c "import pytorch_nndct"

[NNDCT_WARN]: Can't find xir package in your environment.

[NNDCT_NOTE]: Loading NNDCT kernels...

やっぱり…

念のため、packageを確認するといるんだけどなぁ。

$ pip3 list
xir                     0.0.3

nndctも確認するか…

pytorch-nndct           0.1.0+eeafe77        /usr/local/lib/python3.8/dist-packages

nndctはLocationがでているけど、xirは出ていない。

ここの差か?

ちょっと頑張って調べたら、pytorch-nndctの次のところでエラーしてるようだ。

from xir import Graph

もしかして、これ?

$ python3 -c "import xir"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: /home/hidemi/.local/lib/python3.8/site-packages/xir.so: undefined symbol: _Py_ZeroStruct

_Py_ZeroStructってなんなのぉ〜!!!

どうも、バージョン違いでビルドしちゃってるみたいなのだ。

あ、xirのビルドログをよく見ると2.7を見ているっぽい。

-- Found PythonInterp: /usr/bin/python (found version "2.7.18") 
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython2.7.so

もう、嫌になってきたのでpython2.7のlinkを変更した。

$ sudo rm /usr/bin/python
$ ln -s /usr/bin/python3 /usr/bin/python

これでpython3.8に振り向いただろう。

$ ./cmake.sh --build-python --user --pack deb
Native-platform building...
No LSB modules are available.
No LSB modules are available.
cd /home/hidemi/build/build.Ubuntu.20.04.x86_64.Debug/xir
cmake -DBUILD_TEST=ON -DBUILD_CONTRIB=OFF -DBUILD_DOC=OFF -DCPACK_GENERATOR=DEB -DCMAKE_BUILD_TYPE=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_PYTHON=ON -DINSTALL_HOME=OFF -DINSTALL_USER=ON -DCMAKE_INSTALL_PREFIX=/home/hidemi/.local/Ubuntu.20.04.x86_64.Debug /home/hidemi/workspace/VitisAI/VitisAI_2020.2/Vitis-AI/tools/Vitis-AI-Runtime/VART/xir
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found importable target unilog::unilog: /usr/local/lib/libunilog.so.1.3.0
-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1f")  
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0")  
-- Found Protobuf: /usr/lib/x86_64-linux-gnu/libprotobuf.so;-lpthread (found version "3.6.1") 
PYTHON_BUILD_PATH is /home/hidemi/build/build.Ubuntu.20.04.x86_64.Debug/xir/python
-- Found PythonInterp: /usr/bin/python (found version "3.8.5") 
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.8.so
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- LTO enabled
PYTHON_EXECUTABLE is /usr/bin/python
PYTHON_SITE_PACKAGES_USER is /home/hidemi/.local/lib/python3.8/site-packages

-- Configuring done
-- Generating done
-- Build files have been written to: /home/hidemi/build/build.Ubuntu.20.04.x86_64.Debug/xir
[  1%] Running cpp protocol buffer compiler on /home/hidemi/workspace/VitisAI/VitisAI_2020.2/Vitis-AI/tools/Vitis-AI-Runtime/VART/xir/src/xir/proto/graph_proto_v2.proto
[  3%] Running cpp protocol buffer compiler on /home/hidemi/workspace/VitisAI/VitisAI_2020.2/Vitis-AI/tools/Vitis-AI-Runtime/VART/xir/src/xir/proto/graph_proto_v1.proto
Scanning dependencies of target xir
[  4%] Building CXX object src/xir/CMakeFiles/xir.dir/graph_proto_v1.pb.cc.o
[  6%] Building CXX object src/xir/CMakeFiles/xir.dir/graph_proto_v2.pb.cc.o
[  8%] Building CXX object src/xir/CMakeFiles/xir.dir/util/data_type.cpp.o
[  9%] Building CXX object src/xir/CMakeFiles/xir.dir/util/error_code.cpp.o
[ 11%] Building CXX object src/xir/CMakeFiles/xir.dir/util/internal_util.cpp.o
[ 12%] Building CXX object src/xir/CMakeFiles/xir.dir/util/tool_function.cpp.o
[ 14%] Building CXX object src/xir/CMakeFiles/xir.dir/attrs/attr_def.cpp.o
[ 16%] Building CXX object src/xir/CMakeFiles/xir.dir/attrs/attr_expander_imp.cpp.o
[ 17%] Building CXX object src/xir/CMakeFiles/xir.dir/attrs/attrs.cpp.o
[ 19%] Building CXX object src/xir/CMakeFiles/xir.dir/attrs/attrs_imp.cpp.o
[ 20%] Building CXX object src/xir/CMakeFiles/xir.dir/op/built_in_ops.cpp.o
[ 22%] Building CXX object src/xir/CMakeFiles/xir.dir/op/op_def.cpp.o
[ 24%] Building CXX object src/xir/CMakeFiles/xir.dir/op/op_def_factory_imp.cpp.o
[ 25%] Building CXX object src/xir/CMakeFiles/xir.dir/op/op_imp.cpp.o
[ 27%] Building CXX object src/xir/CMakeFiles/xir.dir/op/shape_inference.cpp.o
[ 29%] Building CXX object src/xir/CMakeFiles/xir.dir/graph/elf2xir.cpp.o
[ 30%] Building CXX object src/xir/CMakeFiles/xir.dir/graph/graph.cpp.o
[ 32%] Building CXX object src/xir/CMakeFiles/xir.dir/graph/graph_imp.cpp.o
[ 33%] Building CXX object src/xir/CMakeFiles/xir.dir/graph/graph_template.cpp.o
[ 35%] Building CXX object src/xir/CMakeFiles/xir.dir/graph/graph_template_imp.cpp.o
[ 37%] Building CXX object src/xir/CMakeFiles/xir.dir/graph/serialize_v2.cpp.o
[ 38%] Building CXX object src/xir/CMakeFiles/xir.dir/graph/subgraph_imp.cpp.o
[ 40%] Building CXX object src/xir/CMakeFiles/xir.dir/tensor/tensor.cpp.o
[ 41%] Building CXX object src/xir/CMakeFiles/xir.dir/tensor/tensor_imp.cpp.o
[ 43%] Building C object src/xir/CMakeFiles/xir.dir/version.c.o
[ 45%] Linking CXX shared library libxir.so
[ 45%] Built target xir
Scanning dependencies of target wrapper
Scanning dependencies of target test_c_api
Scanning dependencies of target xir_util
Scanning dependencies of target test_deserialize_model.bin
Scanning dependencies of target test_graph_impl.bin
Scanning dependencies of target test_graph_template.bin
Scanning dependencies of target test_graph_iso.bin
Scanning dependencies of target test_subgraph_iso.bin
Scanning dependencies of target test_subgraph.bin
Scanning dependencies of target demo.bin
Scanning dependencies of target test_c_api.bin
Scanning dependencies of target test_deserialize.bin
Scanning dependencies of target test_subgraph_topo.bin
[ 46%] Building C object test/CMakeFiles/test_c_api.dir/test_c_api.c.o
[ 48%] Building CXX object test/CMakeFiles/test_deserialize_model.bin.dir/test_deserialize_model.cpp.o
[ 50%] Building CXX object test/CMakeFiles/test_graph_template.bin.dir/test_graph_template.cpp.o
[ 51%] Building CXX object test/CMakeFiles/test_graph_impl.bin.dir/test_graph_impl.cpp.o
[ 53%] Building CXX object test/CMakeFiles/test_graph_iso.bin.dir/test_graph_iso.cpp.o
[ 56%] Building CXX object src/python/CMakeFiles/wrapper.dir/wrapper/wrapper.cpp.o
[ 56%] Building CXX object test/CMakeFiles/test_subgraph_iso.bin.dir/test_subgraph_iso.cpp.o
[ 59%] Building C object test/CMakeFiles/test_c_api.bin.dir/test_c_api.c.o
[ 59%] Building CXX object test/CMakeFiles/test_deserialize.bin.dir/test_deserialize.cpp.o
[ 61%] Building CXX object src/python/CMakeFiles/wrapper.dir/wrapper/pyxir_error_code.cpp.o
[ 62%] Building CXX object test/CMakeFiles/test_subgraph.bin.dir/test_subgraph.cpp.o
[ 64%] Building CXX object test/CMakeFiles/demo.bin.dir/demo.cpp.o
[ 66%] Building CXX object test/CMakeFiles/test_subgraph_topo.bin.dir/test_subgraph_topo.cpp.o
[ 67%] Building CXX object tools/CMakeFiles/xir_util.dir/xir_util.cpp.o
[ 70%] Building CXX object tools/CMakeFiles/xir_util.dir/cmd_png.cpp.o
[ 70%] Building CXX object tools/CMakeFiles/xir_util.dir/cmd_dump_reg.cpp.o
[ 72%] Building CXX object tools/CMakeFiles/xir_util.dir/cmd_svg.cpp.o
[ 74%] Building CXX object tools/CMakeFiles/xir_util.dir/cmd_dump_txt.cpp.o
[ 75%] Building CXX object tools/CMakeFiles/xir_util.dir/cmd_subgraph.cpp.o
[ 77%] Building CXX object tools/CMakeFiles/xir_util.dir/cmd_dump_code.cpp.o
[ 79%] Building CXX object tools/CMakeFiles/xir_util.dir/cmd_graph.cpp.o
[ 80%] Linking CXX executable test_c_api
[ 82%] Linking CXX executable test_c_api.bin
[ 82%] Built target test_c_api
[ 82%] Built target test_c_api.bin
[ 83%] Linking CXX executable test_deserialize.bin
[ 85%] Linking CXX executable test_deserialize_model.bin
[ 87%] Linking CXX executable test_graph_template.bin
[ 88%] Linking CXX executable test_graph_impl.bin
[ 88%] Built target test_deserialize.bin
[ 88%] Built target test_deserialize_model.bin
[ 88%] Built target test_graph_template.bin
[ 90%] Linking CXX executable test_subgraph_iso.bin
[ 91%] Linking CXX executable test_subgraph.bin
[ 91%] Built target test_graph_impl.bin
[ 93%] Linking CXX executable test_subgraph_topo.bin
[ 95%] Linking CXX executable demo.bin
[ 96%] Linking CXX executable test_graph_iso.bin
[ 96%] Built target test_subgraph.bin
[ 96%] Built target test_subgraph_iso.bin
[ 96%] Built target test_subgraph_topo.bin
[ 96%] Built target demo.bin
[ 96%] Built target test_graph_iso.bin
[ 98%] Linking CXX executable xir
[ 98%] Built target xir_util
[100%] Linking CXX shared module xir.cpython-38-x86_64-linux-gnu.so
[100%] Built target wrapper
[ 45%] Built target xir
[ 50%] Built target wrapper
[ 64%] Built target xir_util
[ 67%] Built target test_c_api
[ 70%] Built target test_deserialize_model.bin
[ 74%] Built target test_graph_impl.bin
[ 77%] Built target test_graph_iso.bin
[ 80%] Built target test_graph_template.bin
[ 83%] Built target test_subgraph_iso.bin
[ 87%] Built target demo.bin
[ 90%] Built target test_c_api.bin
[ 93%] Built target test_deserialize.bin
[ 96%] Built target test_subgraph.bin
[100%] Built target test_subgraph_topo.bin
Install the project...
-- Install configuration: "Debug"
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-config.cmake
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-config-version.cmake
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so.1.3.0
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so.1
-- Set runtime path of "/home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so.1.3.0" to "/usr/local/lib"
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/lib/libxir.so
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/xir.h
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/op/op.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/op/op_def.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/attrs/attrs.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/attrs/attr_def.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/attrs/attr_expander.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/util/any.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/util/tool_function.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/util/data_type.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/graph/graph.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/graph/graph_template.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/graph/subgraph.hpp
-- Up-to-date: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/include/xir/tensor/tensor.hpp
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-targets.cmake
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/share/cmake/xir/xir-targets-debug.cmake
-- Installing: /home/hidemi/.local/lib/python3.8/site-packages/xir.cpython-38-x86_64-linux-gnu.so
-- Set runtime path of "/home/hidemi/.local/lib/python3.8/site-packages/xir.cpython-38-x86_64-linux-gnu.so" to "/usr/local/lib"
-- Installing: /home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/bin/xir
-- Set runtime path of "/home/hidemi/.local/Ubuntu.20.04.x86_64.Debug/bin/xir" to "/usr/local/lib"
[ 45%] Built target xir
[ 50%] Built target wrapper
[ 64%] Built target xir_util
[ 67%] Built target test_c_api
[ 70%] Built target test_deserialize_model.bin
[ 74%] Built target test_graph_impl.bin
[ 77%] Built target test_graph_iso.bin
[ 80%] Built target test_graph_template.bin
[ 83%] Built target test_subgraph_iso.bin
[ 87%] Built target demo.bin
[ 90%] Built target test_c_api.bin
[ 93%] Built target test_deserialize.bin
[ 96%] Built target test_subgraph.bin
[100%] Built target test_subgraph_topo.bin
Run CPack packaging tool...
CPack: Create package using DEB
CPack: Install projects
CPack: - Run preinstall target for: xir
CPack: - Install project: xir []
CPack: Create package
CPack: - package: /home/hidemi/build/build.Ubuntu.20.04.x86_64.Debug/xir/libxir_1.3.0_amd64.deb generated.

よし、ひとまずOKだ。

$ python3 -c "import pytorch_nndct"

[NNDCT_NOTE]: Loading NNDCT kernels...
write: 2021/01/26/ 23:46:13