2019년 2월 12일 화요일

When CUDA_ERROR_UNKNOWN comes up to call cuInit,

The detailed error messge is

(venv) user@LifeNTech:~/Workspace/deep_neural_network$ python test_keras.py Using TensorFlow backend. Epoch 1/5 2019-02-11 17:45:26.303774: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA 2019-02-11 17:45:26.315447: E tensorflow/stream_executor/cuda/cuda_driver.cc:397] failed call to cuInit: CUDA_ERROR_UNKNOWN 2019-02-11 17:45:26.315530: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:163] retrieving CUDA diagnostic information for host: LifeNTech 2019-02-11 17:45:26.315552: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:170] hostname: LifeNTech 2019-02-11 17:45:26.315635: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:194] libcuda reported version is: 390.87.0 2019-02-11 17:45:26.315687: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:198] kernel reported version is: 390.87.0 2019-02-11 17:45:26.315695: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:305] kernel version seems to match DSO: 390.87.0 

This thing  might be helpful.
# nvidia-modprobe -u


2019년 1월 24일 목요일

Install nvidia-cuda-toolkit 9.0.176-2 on Debian (buster).

At first, need to download all the dependencies from http://ftp.riken.jp/Linux/debian/debian/pool/non-free/n/nvidia-cuda-toolkit/, and install these.

# dpkg -i libaccinj64-9.0_9.0.176-2_amd64.deb libnppig9.0_9.0.176-2_amd64.deb libcublas9.0_9.0.176-2_amd64.deb libnppim9.0_9.0.176-2_amd64.deb libcudart9.0_9.0.176-2_amd64.deb libnppist9.0_9.0.176-2_amd64.deb libcuinj64-9.0_9.0.176-2_amd64.deb libnppisu9.0_9.0.176-2_amd64.deb libcurand9.0_9.0.176-2_amd64.deb libnppitc9.0_9.0.176-2_amd64.deb libcusolver9.0_9.0.176-2_amd64.deb libnpps9.0_9.0.176-2_amd64.deb libcusparse9.0_9.0.176-2_amd64.deb libnvgraph9.0_9.0.176-2_amd64.deb libnppc9.0_9.0.176-2_amd64.deb libnvrtc9.0_9.0.176-2_amd64.deb libnppial9.0_9.0.176-2_amd64.deb libnvtoolsext1_9.0.176-2_amd64.deb libnppicc9.0_9.0.176-2_amd64.deb libnvvm3_9.0.176-2_amd64.deb libnppicom9.0_9.0.176-2_amd64.deb  libnppidei9.0_9.0.176-2_amd64.deb libnppif9.0_9.0.176-2_amd64.deb  

In order to prevent automatic upgrade, mark some packages as hold.

# apt-mark hold libnvtoolsext1 libnvvm3 nvidia-cuda-dev nvidia-cuda-toolkit nvidia-profiler

Indeed, minor dependencies should be downloaded and installed.
# apt install gcc-6 g++-6 clang-4.9

And, finalize the install of nvidia-cuda-toolkit.

# dpkg -i nvidia-profiler_9.0.176-2_amd64.deb
# dpkg -i nvidia-cuda-dev_9.0.176-2_amd64.deb
# dpkg -i nvidia-cuda-toolkit_9.0.176-2_amd64.deb 

Next, download and install remaining dependencies from https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/

# dpkg -i libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb
# dpkg -i libcudnn7-dev_7.0.5.15-1+cuda9.0_amd64.deb
# dpkg -i libcudnn7-doc_7.0.5.15-1+cuda9.0_amd64.deb

(venv) $ python3.6
>>> pip install tensorflow-gpu

In terms of virtualenv, please see the other post about it.

Install wxPython 4.0.4 in raspberry pi

1. preparation
1.2. sdhc >= 16GB installed raspbian
1.3. Install dependencies
# sudo apt install libjpeg-dev libtiff5-dev libnotify-dev libgtk2.0-dev libgtk-3-dev libsdl1.2-dev libgstreamer-plugins-base0.10-dev libwebkitgtk-dev freeglut3 freeglut3-dev

1.4. Turn off the GUI boot chaning to CLI
Preferences -> Raspberry Pi Configuration -> At Boot, select To CLI


2. Install wxpython 4.0.4
# sudo pip3 install wxpython

3. Wait and do not see .....

4. return to GUI
#sudo raspi-config
 -> 3. BootOptions -> B1 Desktop / CLI -> B4 Desktop Autologin -> double 'TAB' -> Finish

# reboot

5. Check the installation
$ python3

>>> import wx
>>> wx.__version__
'4.0.4'



Install log of tensorflow-gpu on Debian (buster)

1. Install nvidia driver
# apt install nvidia-driver

1.1. Driver check
# nvidia-smi
Thu Jan 24 15:06:13 2019 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 390.87 Driver Version: 390.87 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 GeForce GTX 105... Off | 00000000:01:00.0 On | N/A | | 45% 30C P8 N/A / 75W | 220MiB / 4038MiB | 0% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | 0 872 G /usr/lib/xorg/Xorg 135MiB | | 0 13044 G /usr/lib/firefox-esr/firefox-esr 1MiB | | 0 13275 G /usr/lib/firefox-esr/firefox-esr 79MiB | | 0 14283 G /usr/lib/firefox-esr/firefox-esr 1MiB | +-----------------------------------------------------------------------------+

1.2. Install cuda toolkit
# apt install nvidia-cuda-toolkit
# cudafe++ -v
cudafe: NVIDIA (R) Cuda Language Front End Portions Copyright (c) 2005-2018 NVIDIA Corporation Portions Copyright (c) 1988-2016 Edison Design Group Inc. Based on Edison Design Group C/C++ Front End, version 4.14 (Jun 12 2018 23:07:12) Cuda compilation tools, release 9.2, V9.2.148
# nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2018 NVIDIA Corporation Built on Tue_Jun_12_23:07:04_CDT_2018 Cuda compilation tools, release 9.2, V9.2.148

2. Install Python3.6
2.1. Check default python in Debian 10(buster)
# apt policy python3
python3: Installed: 3.7.1-3 Candidate: 3.7.1-3 Version table: *** 3.7.1-3 500 500 http://debian-archive.trafficmanager.net/debian testing/main amd64 Packages 100 /var/lib/dpkg/status

2.2. Install packages of python3.6 and virtualenv
 # apt install python3.6 virtualenv

3. build the private console with python3.6
$ virtualenv --system-site-packages -p python3.6 ./venv
$ source ./venv/bin/activate
(venv) $ pip install --upgrade pip
(venv) $ pip install tensorflow-gpu

4. (TODO) Check tensorflow-gpu

(venv) $ python
Python 3.6.8 (default, Jan 3 2019, 03:42:36) [GCC 8.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import tensorflow as tf Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in from tensorflow.python.pywrap_tensorflow_internal import * File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in _pywrap_tensorflow_internal = swig_import_helper() File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description) File "/home/user/Workspace/deep_neural_network/venv/lib/python3.6/imp.py", line 243, in load_module return load_dynamic(name, filename, file) File "/home/user/Workspace/deep_neural_network/venv/lib/python3.6/imp.py", line 343, in load_dynamic return _load(spec) ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory During handling of the above exception, another exception occurred: Traceback (most recent call last): File "", line 1, in File "/usr/local/lib/python3.6/dist-packages/tensorflow/__init__.py", line 22, in from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/__init__.py", line 49, in from tensorflow.python import pywrap_tensorflow File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 74, in raise ImportError(msg) ImportError: Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in from tensorflow.python.pywrap_tensorflow_internal import * File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in _pywrap_tensorflow_internal = swig_import_helper() File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description) File "/home/user/Workspace/deep_neural_network/venv/lib/python3.6/imp.py", line 243, in load_module return load_dynamic(name, filename, file) File "/home/user/Workspace/deep_neural_network/venv/lib/python3.6/imp.py", line 343, in load_dynamic return _load(spec) ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory Failed to load the native TensorFlow runtime. See https://www.tensorflow.org/install/install_sources#common_installation_problems for some common reasons and solutions. Include the entire stack trace above this error message when asking for help.

4.1. Fix the absence of libcublas.so.9.0

Have to do lots of works to install dependencies related to libcublas.so.9.0.
Please see my next post about installation of nvidia-cuda-toolkit.

P.S.
# prompt : root privilage
$ prompt : user prifilage

2018년 4월 30일 월요일

Install Kicad 5.0.0 for Kicad 4.0.7 making "assertion failed" is workaround in debian testing

1. Add 'experimental repository' into apt source list
1.1. type 'deb http://ftp.de.debian.org/debian experimental main' into /etc/apt/source.list

2. Update source repository as typing 'apt update'

3. Verify Kicad 5.0.0 to be candidated.

# apt policy kicad
kicad:
  설치: (없음)
  후보: 4.0.7+dfsg1-1
  버전 테이블:
     5.0.0~rc1+dfsg1+20180318-3 1
          1 http://ftp.de.debian.org/debian experimental/main amd64 Packages
     4.0.7+dfsg1-1 500
        500 http://deb.debian.org/debian testing/main amd64 Packages

4. Install newer Kicad
4.1. Install basic packages
# apt install kicad=5.0.0~rc1+dfsg1+20180318-3
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다      
상태 정보를 읽는 중입니다... 완료
The following additional packages will be installed:
  kicad-demos kicad-footprints kicad-libraries kicad-symbols kicad-templates
  xsltproc
제안하는 패키지:
  kicad-doc-ca | kicad-doc-de | kicad-doc-en | kicad-doc-es | kicad-doc-fr
  | kicad-doc-it | kicad-doc-ja | kicad-doc-nl | kicad-doc-pl | kicad-doc-ru
  kicad-packages3d
다음 새 패키지를 설치할 것입니다:
  kicad kicad-demos kicad-footprints kicad-libraries kicad-symbols
  kicad-templates xsltproc
0개 업그레이드, 7개 새로 설치, 0개 제거 및 0개 업그레이드 안 함.
26.4 M바이트 아카이브를 받아야 합니다.
이 작업 후 194 M바이트의 디스크 공간을 더 사용하게 됩니다.
계속 하시겠습니까? [Y/n] 

4.2. Install additional packages
# apt install kicad-packages3d=5.0.0~rc1+dfsg1+20180318-1
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다      
상태 정보를 읽는 중입니다... 완료
추천하는 패키지:
  kicad
다음 새 패키지를 설치할 것입니다:
  kicad-packages3d
0개 업그레이드, 1개 새로 설치, 0개 제거 및 0개 업그레이드 안 함.
311 M바이트 아카이브를 받아야 합니다.
이 작업 후 4,612 M바이트의 디스크 공간을 더 사용하게 됩니다.
받기:1 http://ftp.de.debian.org/debian experimental/main amd64 kicad-packages3d all 5.0.0~rc1+20180318-1 [311 MB]
내려받기 154 M바이트, 소요시간 3분 4초 (841 k바이트/초)                       
Selecting previously unselected package kicad-packages3d.
(데이터베이스 읽는중 ...현재 314935개의 파일과 디렉터리가 설치되어 있습니다.)
Preparing to unpack .../kicad-packages3d_5.0.0~rc1+20180318-1_all.deb ...
Unpacking kicad-packages3d (5.0.0~rc1+20180318-1) ...
kicad-packages3d (5.0.0~rc1+20180318-1) 설정하는 중입니다 ...

5. Mark kicad packages to be prevented from downgrade.
# apt-mark hold kicad kicad-demos kicad-footprints kicad-symbols kicad-templates kicad-libraries
kicad was already set on hold.
kicad-demos set on hold.
kicad-footprints set on hold.
kicad-symbols set on hold.
kicad-templates set on hold.
kicad-libraries set on hold.

References

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=895008
https://people.debian.org/~tijuca/kicad/
https://packages.debian.org/experimental/amd64/kicad/download

2018년 4월 13일 금요일

Turn off power management of bluetooth mouse (i.e. Microsoft Designer Mouse)

/etc/bluetooth/input.conf

# Configuration file for the input service

# This section contains options which are not specific to any
# particular interface
[General]

# Set idle timeout (in minutes) before the connection will
# be disconnect (defaults to 0 for no timeout)
#IdleTimeout=30
IdleTimeout= 0

# Enable HID protocol handling in userspace input profile
# Defaults to false (HIDP handled in HIDP kernel module)
#UserspaceHID=true

reboot.

2018년 4월 11일 수요일

Install QTCreator in Debian

# apt install qtcreator qtbase5-dev libqt5serialport-dev