Программирование ARM Установка компилятора NPU для процессора GX8002 Sat, December 02 2023  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Установка компилятора NPU для процессора GX8002 Печать
Добавил(а) microsin   

Для установки необходимо следующее:

Linux Python2.7 или Python3.6
TensorFlow 1.4-1.15

Требование для Python важное: у меня ничего не устанавливалось, пока не попытался установить Python 3.6.15. Поэтому советую сначала установить pyenv [4], чтобы получить возможность экспериментировать с разными версиями Python.

Процесс установки по шагам:

1. Установка тулчейна gxnpuc.

$ pip install npu_compiler

2. Обновление тулчейна gxnpuc.

$ pip install --upgrade npu_compiler

3. Установка TensorFlow. Надо устанавливать версию не старше 1.14, иначе gxnpuc при запуске будет ругаться на отсутствие tensorflow.tools.graph_transforms.

$ pip install tensorflow==1.13.2

4. Проверка корректности установки. После того, как установка или обновление gxnpuc завершены, вы можете использовать следующую команду, чтобы проверить установку и отобразить версию тулчейна:

$ gxnpuc --version

$ pyenv install 3.6.15
$ pyenv global 3.6.15
$ pip install --upgrade pip
$ pip install libjpeg
$ pip install npu_compiler
$ pip install --upgrade npu_compiler
$ pip install tensorflow==1.13.2

[Устранение проблем]

Если наблюдается следующая ошибка, когда вы запускаете gxnpuc --version, то рассмотрите следующие 2 способа решения проблемы:

$ gxnpuc --version
bash: gxnpuc: command not found

Метод 1. Проверьте, что файл gxnpuc находится в каталоге ~/.local/bin. Если это так, то добавьте путь ~/.local/bin в переменную окружения PATH. Это можно сделать, добавив следующую команду в файл ~/.bashrc:

export PATH=~/.local/bin:$PATH

Если вы устанавливали из версии Python, установленной под управлением pyenv [4], то путь в команде export будет зависеть от текущей активной версии Python. Например, если командой pyenv global установлена версия Python 3.6.15, то добавляемая в ~/.bashrc строка будет такой:

export PATH=~/.pyenv/versions/3.6.15/bin:$PATH

Метод 2. Проверьте путь gxnpuc командой import npu_complier:

$ python
Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56)
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import npu_compiler as nc
>>> help(nc)

Вывод команды должен быть примерно такой:

Help on package npu_compiler:
 
NAME
    npu_compiler - #coding: utf-8
 
PACKAGE CONTENTS
    __main__
    v100 (package)
    v150 (package)
    v160 (package)
 
DATA
    VERSION = '1.5.6'
 
FILE
    /home/jindg/anaconda3/lib/python3.6/site-packages/npu_compiler/__init__.py

В завершение поменяйте /home/jindg/anaconda3/lib из лога выше на /home/jindg/anaconda3/bin, и затем добавьте этот путь в переменную PATH путем редактирования файла ~/.bashrc.

Если проблема все еще наблюдается, пожалуйста свяжитесь с инженерами Guoxin.

Проблема заключалась в том, что установленная версия TensorFlow была более новая, чем 1.14+, и теперь graph_transforms не поддерживается:

$ gxnpuc --version
2023-09-13 07:59:34.453991: W tensorflow/stream_executor/platform/default/dso_loader.cc:64]
 Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0:
  cannot open shared object file: No such file or directory
2023-09-13 07:59:34.454037: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above
 cudart dlerror if you do not have a GPU set up on your machine.
Traceback (most recent call last):
  File "~/.pyenv/versions/3.6.15/bin/gxnpuc", line 11, in < module>
    from npu_compiler.v120.config import Config as Config_1_2
  File "~/.pyenv/versions/3.6.15/lib/python3.6/site-packages/npu_compiler/v120/__init__.py", line 8, in < module>
    from npu_compiler.v120.config import Config
  File "npu_compiler/v120/config.py", line 10, in init npu_compiler.v120.config
ModuleNotFoundError: No module named 'tensorflow.tools.graph_transforms'
$ pip show tensorflow
Name: tensorflow
Version: 2.6.2
Summary: TensorFlow is an open source machine learning framework for everyone.
Home-page: https://www.tensorflow.org/
Author: Google Inc.
Author-email: packages@tensorflow.org
License: Apache 2.0
Location: ~/.pyenv/versions/3.6.15/lib/python3.6/site-packages
Requires: absl-py, astunparse, clang, flatbuffers, gast, google-pasta, grpcio, h5py, keras, keras-preprocessing,
 numpy, opt-einsum, protobuf, six, tensorboard, tensorflow-estimator, termcolor, typing-extensions, wheel, wrapt
Required-by:

Как сделать довнгрейд на версию 1.13.2, подсмотрел в статье [5]:

$ pip3 install --upgrade tensorflow==1.13.2
...
$ pip show tensorflow
Name: tensorflow
Version: 1.13.2
Summary: TensorFlow is an open source machine learning framework for everyone.
Home-page: https://www.tensorflow.org/
Author: Google Inc.
Author-email: opensource@google.com
License: Apache 2.0
Location: $HOME/.pyenv/versions/3.6.15/lib/python3.6/site-packages
Requires: absl-py, astor, gast, grpcio, keras-applications, keras-preprocessing, numpy, protobuf, six,
 tensorboard, tensorflow-estimator, termcolor, wheel
Required-by:

[Ссылки]

1. NPU compiler installation.
2. NPU overview.
3. jindg1986@nationalchip.com.
4. Управление несколькими версиями Python с помощью pyenv.
5. How to Upgrade or Downgrade TensorFlow site:phoenixnap.com.

 

 

Добавить комментарий


Защитный код
Обновить

Top of Page