BLOG main image
분류 전체보기 (12)
[Python] Tips (1)
잡답 (2)
Programing - python3 (0)
Blockchain - Bitcoin - 4th .. (0)
Visitors up to today!
Today hit, Yesterday hit
daisy rss
tistory 티스토리 가입하기!
2019. 7. 17. 22:11

Keras.application 에는 ResNeXt101 등이 없음. Keras_application을 import 하면 존재하는데,

문제는 이걸 수행 시 아래와 같은 에러가 발생한다.

 

AttributeError: 'NoneType' object has no attribute 'image_data_format'

 

이의 해결책으로 

import keras

keras_application.resnext.ResNeXt101(input_shape, input_tensor = None, include_top = False, weights = 'imagenet',

        backend = keras.backend, layers = keras.layers, models = keras.models, utils = keras.utils)

를 사용하면 된다. 

2019. 6. 26. 14:45

1. 맥에선 유독 pip install 또는 build에서 문제가 발생하는 현상

   : colorcorrect 라이브러리 설치시 우분투, windows에서는 문제가 없는데 mac 에서만 pip 설치가 안됨.

 

[ Error message] 

(tensorflow) iMac-Pro-mlsee21:colorcorrect-0.8 mslee21$ python setup.py build

/Users/mslee21/anaconda3/envs/tensorflow/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'test_requires'

  warnings.warn(msg)

running build

running build_py

running build_ext

building 'colorcorrect._cutil' extension

gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/mslee21/anaconda3/envs/tensorflow/include -arch x86_64 -I/Users/mslee21/anaconda3/envs/tensorflow/include -arch x86_64 -Icutil -I/Users/mslee21/anaconda3/envs/tensorflow/include/python3.6m -c cutil/cutil.cpp -o build/temp.macosx-10.7-x86_64-3.6/cutil/cutil.o

warning: include path for stdlibc++ headers not found; pass '-stdlib=libc++' on

      the command line to use the libc++ standard library instead

      [-Wstdlibcxx-not-found]

cutil/cutil.cpp:2:10: fatal error: 'vector' file not found

#include <vector>

         ^~~~~~~~

1 warning and 1 error generated.

error: command 'gcc' failed with exit status 1

 

[ 해결과정 ] 솔루션을 찾아보니 xcode가 10으로 업그레드 하면서 libstdc++.tbd, libstdc++.6.0.9.tbd  등이 libc++로 변경된 이유라 함

  1) xcode9에서 해당 파일을 찾아 xcode10 에 복사

  2) 다음 사이트 참조 : https://medium.com/@devfallingstar/konlpy-%EC%84%A4%EC%B9%98-macos%EC%97%90%EC%84%9C-konlpy%EC%84%A4%EC%B9%98-%EC%8B%9C-%EC%98%A4%EB%A5%98-93c1675875ef 

 

[Konlpy 설치] macOS에서 konlpy설치 시 오류

파이썬에서 NLP를 다룰 때 한 줄기 빛 같은 존재인 Konlpy를 설치할 때, 사전 필요 library인 JPype1를 설치하는 도중

medium.com

 

[ 해결 방법] 

 

(tensorflow) iMac-Pro-mlsee21:colorcorrect-0.8 mslee21$ export MACOSX_DEPLOYMENT_TARGET=10.10

(tensorflow) iMac-Pro-mlsee21:colorcorrect-0.8 mslee21$ CFLAGS='-stdlib=libc++' pip install colorcorrect

 

Collecting colorcorrect

  Using cached https://files.pythonhosted.org/packages/d4/6c/2592a0e68ef92c12b3282453ca9cdec4413e0ee7785ed06667101ef73b72/colorcorrect-0.8.tar.gz

Requirement already satisfied: numpy in /Users/mslee21/anaconda3/envs/tensorflow/lib/python3.6/site-packages (from colorcorrect) (1.15.4)

Requirement already satisfied: Pillow in /Users/mslee21/anaconda3/envs/tensorflow/lib/python3.6/site-packages (from colorcorrect) (5.4.1)

Requirement already satisfied: six in /Users/mslee21/anaconda3/envs/tensorflow/lib/python3.6/site-packages (from colorcorrect) (1.12.0)

Building wheels for collected packages: colorcorrect

  Running setup.py bdist_wheel for colorcorrect ... done

  Stored in directory: /Users/mslee21/Library/Caches/pip/wheels/83/ac/d2/c18fefea61cd3e13ff9247690d8cfbdce0ef74e2ed0bc76b20

Successfully built colorcorrect

Installing collected packages: colorcorrect

Successfully installed colorcorrect-0.8

2019. 6. 11. 22:18

### 전체적 설치 참고: https://tech.amikelive.com/node-669/guide-installing-cuda-toolkit-9-1-on-ubuntu-16-04/

 

Guide: Installing Cuda Toolkit 9.1 on Ubuntu 16.04

With advances in GPU technologies, performing complex computation is not an exclusive feat of multicore CPUs anymore. It is not uncommon to perform computation for linear algebra, image and video p…

tech.amikelive.com

1. apt 패키지 업데이트

euler@euler:~$ sudo apt-get update
[sudo] password for euler: 
Hit:1 http://kr.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://kr.archive.ubuntu.com/ubuntu xenial-updates InRelease             
Hit:3 http://kr.archive.ubuntu.com/ubuntu xenial-backports InRelease           
Get:4 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]     
Fetched 109 kB in 2s (54.1 kB/s)   
Reading package lists... Done

 

euler@euler:~$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
  libllvm5.0 snapd-login-service
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

 

[Error 1]

E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)

E: Unable to lock the administration directory (/var/lib/dpkg/) is another process using it?

[solution]  (참고: https://www.hahwul.com/2016/08/debian-apt-get-could-not-get-lock.html )

 #> rm /var/lib/dpkg/lock

 

2. GPU가 CUDA를 지원하는지 확인 ( 치포스 750Ti, 1080Ti)

euler@euler:~$ lspci | grep -i nvidia
01:00.0 VGA compatible controller: NVIDIA Corporation GM107 [GeForce GTX 750 Ti] (rev a2)
01:00.1 Audio device: NVIDIA Corporation Device 0fbc (rev a1)
02:00.0 VGA compatible controller: NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (rev a1)
02:00.1 Audio device: NVIDIA Corporation GP102 HDMI Audio Controller (rev a1)

 

3. Ubuntu 버전 확인

euler@euler:~$ uname -m && cat /etc/*release
x86_64
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.6 LTS"
NAME="Ubuntu"
VERSION="16.04.6 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.6 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial

 

4. GCC 버전확인

euler@euler:~$ gcc --version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

 

5. kernel 버전 확인

euler@euler:~$ uname -r
4.13.0-36-generic

 

6. kernel header 설치

euler@euler:~$ sudo apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
linux-headers-4.13.0-36-generic is already the newest version (4.13.0-36.40~16.04.1).
The following packages were automatically installed and are no longer required:
  libllvm5.0 snapd-login-service
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

 

7. Cuda 다운로드

  https://developer.nvidia.com/cuda-downloads에서 deb (network) 버전을 다운로드함

 

8. Cuda 툴킷 설치

euler@euler:~/Downloads$ sudo dpkg -i cuda-repo-ubuntu1604_10.1.105-1_amd64.deb Selecting previously unselected package cuda-repo-ubuntu1604.
(Reading database ... 214063 files and directories currently installed.)
Preparing to unpack cuda-repo-ubuntu1604_10.1.105-1_amd64.deb ...
Unpacking cuda-repo-ubuntu1604 (10.1.105-1) ...
Setting up cuda-repo-ubuntu1604 (10.1.105-1) ...

The public CUDA GPG key does not appear to be installed.
To install the key, run this command:
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub

 

설치하는 중에 CUDA GPG 키를 설치하라고 함. 나온대로 설치를 진행

euler@euler:~/Downloads$ sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
Executing: /tmp/tmp.fnXOs1IEOM/gpg.1.sh --fetch-keys
http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
gpg: key 7FA2AF80: public key "cudatools <cudatools@nvidia.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

 

apt 패키지 인덱스를 다시 업데이트

euler@euler:~/Downloads$ sudo apt-get update
Hit:1 http://kr.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://kr.archive.ubuntu.com/ubuntu xenial-updates InRelease             
Hit:3 http://kr.archive.ubuntu.com/ubuntu xenial-backports InRelease           
Ign:4 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  InRelease
Get:5 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  Release [564 B]
Get:6 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  Release.gpg [801 B]
Get:7 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  Packages [209 kB]
Get:8 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]
Fetched 320 kB in 1s (216 kB/s)    
Reading package lists... Done

 

Cuda 설치

euler@euler:~/Downloads$ sudo apt-get install cuda
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libllvm5.0 snapd-login-service
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  bbswitch-dkms ca-certificates-java cuda-10-1 cuda-command-line-tools-10-1
  cuda-compiler-10-1 cuda-cudart-10-1 cuda-cudart-dev-10-1 cuda-cufft-10-1
  cuda-cufft-dev-10-1 cuda-cuobjdump-10-1 cuda-cupti-10-1 cuda-curand-10-1
  cuda-curand-dev-10-1 cuda-cusolver-10-1 cuda-cusolver-dev-10-1

...............................

시스템 reboot

 

nvidia 그래픽드라이버 설치확인

(참고: https://hiseon.me/2018/02/17/install_nvidia_driver/)

euler@euler:~$ cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module  418.67  Sat Apr  6 03:07:24 CDT 2019
GCC version:  gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.11) 

euler@euler:~$ lspci -k

....

01:00.0 VGA compatible controller: NVIDIA Corporation GM107 [GeForce GTX 750 Ti] (rev a2)
Subsystem: Gigabyte Technology Co., Ltd GM107 [GeForce GTX 750 Ti]
Kernel driver in use: nvidia
Kernel modules: nvidiafb, nouveau, nvidia_418_drm, nvidia_418
01:00.1 Audio device: NVIDIA Corporation Device 0fbc (rev a1)
Subsystem: Gigabyte Technology Co., Ltd Device 36e2
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
02:00.0 VGA compatible controller: NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (rev a1)
Subsystem: Gigabyte Technology Co., Ltd Device 3752
Kernel driver in use: nvidia
Kernel modules: nvidiafb, nouveau, nvidia_418_drm, nvidia_418
02:00.1 Audio device: NVIDIA Corporation GP102 HDMI Audio Controller (rev a1)
Subsystem: Gigabyte Technology Co., Ltd Device 3752
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel

.....

 

드라이버 버전 확인

euler@euler:~$ sudo cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module  418.67  Sat Apr  6 03:07:24 CDT 2019
GCC version:  gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.11) 

 

euler@euler:~$ nvidia-smi
Tue Jun 11 20:45:23 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.67       Driver Version: 418.67       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| 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 750 Ti  Off  | 00000000:01:00.0 Off |                  N/A |
| 45%   37C    P8     1W /  46W |      1MiB /   981MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 108...  Off  | 00000000:02:00.0  On |                  N/A |
|  0%   54C    P2    58W / 250W |    350MiB / 11177MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    1      1062      G   /usr/lib/xorg/Xorg                           184MiB |
|    1      1839      G   compiz                                       163MiB |
+-----------------------------------------------------------------------------+

 

CUDA 경로 설정

 

euler@euler:~$ nano ~/.profile

PATH="/usr/local/cuda-10.1/bin:$HOME/bin:$HOME/.local/bin:$PATH"

 

NVIDIA persistence service 설정

( 참고사이트와 달리 /usr/lib/... 가 아니라 /lib/ 에 있음)

euler@euler:~$ cd /lib/systemd/system && sudo touch nvidia-persistenced
euler@euler:/lib/systemd/system$ sudo nano nvidia-persistenced

 

[Unit]

Description=NVIDIA Persistence Daemon

Wants=syslog.target

 

[Service]

Type=forking

PIDFile=/var/run/nvidia-persistenced/nvidia-persistenced.pid

Restart=always

ExecStart=/usr/bin/nvidia-persistenced --verbose

ExecStopPost=/bin/rm -rf /var/run/nvidia-persistenced

 

[Install]

WantedBy=multi-user.target

 

persistence 실행

euler@euler:/lib/systemd/system$ sudo systemctl enable nvidia-persistenced

 

euler@euler:/lib/udev/rules.d$ sudo nano 40-vm-hotadd.rules 

.....

# Memory hotadd request
SUBSYSTEM=="memory", ACTION=="add", DEVPATH=="/devices/system/memory/memory[0-9]*", TEST=="state", ATTR{state}="online"

......

 

시스템 reboot

euler@euler:~$ sudo reboot

 

Nvidia driver버전 확인

euler@euler:~$ cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module  418.67  Sat Apr  6 03:07:24 CDT 2019
GCC version:  gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.11)

 

nvidia CUDA toolkit 버전 확인

euler@euler:~$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Wed_Apr_24_19:10:27_PDT_2019
Cuda compilation tools, release 10.1, V10.1.168

 

(이상한 점)

CUDA toolkit 을 설치중 아래와 같은 에러 발생

----

Errors were encountered while processing:
 /var/cache/apt/archives/nvidia-cuda-dev_7.5.18-0ubuntu1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

----

 

일단 확인하기는 아래와 같이 해서 재설치

mslee21@euler:~/Downloads$ sudo dpkg --configure -a
[sudo] password for mslee21: 
dpkg: dependency problems prevent configuration of nvidia-cuda-toolkit:
 nvidia-cuda-toolkit depends on nvidia-cuda-dev (= 7.5.18-0ubuntu1); however:
  Package nvidia-cuda-dev is not installed.

dpkg: error processing package nvidia-cuda-toolkit (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 nvidia-cuda-toolkit

mslee21@euler:~/Downloads$ sudo apt-get clean