Keras 설치
https://appsilon.com/ship-recognition-in-satellite-imagery-part-i/
https://appsilon.com/ship-recognition-in-satellite-imagery-part-ii/
Posted by Michal Maj 16 January, 2018
GPU version
GPU를 사용하기 위해서,
별도의 Python 가상환경이 설치되어 있지 않다면, miniconda를 설치여부를 결정하도록 한다.
> install_keras(tensorflow="gpu") Using virtual environment '~/.virtualenvs/r-reticulate' ... DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support ' Collecting tensorflow-gpu==1.14.0 Downloading https://files.pythonhosted.org/packages/41/6d/2348df00a34baaabdef0fdb4f46f962f7a8a6720362c26c3a44a249767ea/tensorflow_gpu-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl (377.0MB) Collecting tensorflow-hub Using cached https://files.pythonhosted.org/packages/ac/64/3bba86ca49ef21a4add11a4d37e3f6cd05d2e61d207ebe26a8a96b340826/tensorflow_hub-0.6.0-py2.py3-none-any.whl Collecting tensorflow-probability Using cached https://files.pythonhosted.org/packages/3e/3a/c10b6c22320531c774402ac7186d1b673374e2a9d12502cbc8d811e4601c/tensorflow_probability-0.7.0-py2.py3-none-any.whl Collecting keras Downloading https://files.pythonhosted.org/packages/1b/18/2e1ef121e5560ac24c7ac9e363aa5fa7006c40563c989e7211aba95b793a/Keras-2.3.0-py2.py3-none-any.whl (377kB) Collecting absl-py>=0.7.0 (from tensorflow-gpu==1.14.0) Collecting wrapt>=1.11.1 (from tensorflow-gpu==1.14.0) Collecting protobuf>=3.6.1 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/c7/60/19c2c3b563c8a5ebbc5f17982fd794f415cfc4633a8248ab3e23a47662bc/protobuf-3.9.1-cp27-cp27mu-manylinux1_x86_64.whl Collecting keras-preprocessing>=1.0.5 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/28/6a/8c1f62c37212d9fc441a7e26736df51ce6f0e38455816445471f10da4f0a/Keras_Preprocessing-1.1.0-py2.py3-none-any.whl Collecting gast>=0.2.0 (from tensorflow-gpu==1.14.0) Downloading https://files.pythonhosted.org/packages/1f/04/4e36c33f8eb5c5b6c622a1f4859352a6acca7ab387257d4b3c191d23ec1d/gast-0.3.2.tar.gz Collecting enum34>=1.1.6 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl Collecting astor>=0.6.0 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/d1/4f/950dfae467b384fc96bc6469de25d832534f6b4441033c39f914efd13418/astor-0.8.0-py2.py3-none-any.whl Collecting six>=1.10.0 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl Collecting tensorboard<1.15.0,>=1.14.0 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/f4/37/e6a7af1c92c5b68fb427f853b06164b56ea92126bcfd87784334ec5e4d42/tensorboard-1.14.0-py2-none-any.whl Collecting numpy<2.0,>=1.14.5 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/d7/b1/3367ea1f372957f97a6752ec725b87886e12af1415216feec9067e31df70/numpy-1.16.5-cp27-cp27mu-manylinux1_x86_64.whl Collecting tensorflow-estimator<1.15.0rc0,>=1.14.0rc0 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/3c/d5/21860a5b11caf0678fbc8319341b0ae21a07156911132e0e71bffed0510d/tensorflow_estimator-1.14.0-py2.py3-none-any.whl Collecting mock>=2.0.0 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/05/d2/f94e68be6b17f46d2c353564da56e6fb89ef09faeeff3313a046cb810ca9/mock-3.0.5-py2.py3-none-any.whl Collecting google-pasta>=0.1.6 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/35/95/d41cd87d147742ef72d5d1dc317318486e3fbffdadf24a60e70dedf01d56/google_pasta-0.1.7-py2-none-any.whl Collecting backports.weakref>=1.0rc1 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/88/ec/f598b633c3d5ffe267aaada57d961c94fdfa183c5c3ebda2b6d151943db6/backports.weakref-1.0.post1-py2.py3-none-any.whl Collecting termcolor>=1.1.0 (from tensorflow-gpu==1.14.0) Collecting grpcio>=1.8.6 (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/d6/c3/65db90ec27181edf491c26aa998ae631e50cd1f04ee8d8d513a95e3937f3/grpcio-1.23.0-cp27-cp27mu-manylinux1_x86_64.whl Collecting wheel (from tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/00/83/b4a77d044e78ad1a45610eb88f745be2fd2c6d658f9798a15e384b7d57c9/wheel-0.33.6-py2.py3-none-any.whl Collecting keras-applications>=1.0.6 (from tensorflow-gpu==1.14.0) Collecting cloudpickle>=0.6.1 (from tensorflow-probability) Downloading https://files.pythonhosted.org/packages/c1/49/334e279caa3231255725c8e860fa93e72083567625573421db8875846c14/cloudpickle-1.2.2-py2.py3-none-any.whl Collecting decorator (from tensorflow-probability) Using cached https://files.pythonhosted.org/packages/5f/88/0075e461560a1e750a0dcbf77f1d9de775028c37a19a346a6c565a257399/decorator-4.4.0-py2.py3-none-any.whl Collecting scipy>=0.14 (from keras) Using cached https://files.pythonhosted.org/packages/1d/f6/7c16d60aeb3694e5611976cb4f1eaf1c6b7f1e7c55771d691013405a02ea/scipy-1.2.2-cp27-cp27mu-manylinux1_x86_64.whl Collecting pyyaml (from keras) Collecting h5py (from keras) Using cached https://files.pythonhosted.org/packages/12/90/3216b8f6d69905a320352a9ca6802a8e39fdb1cd93133c3d4163db8d5f19/h5py-2.10.0-cp27-cp27mu-manylinux1_x86_64.whl Collecting setuptools (from protobuf>=3.6.1->tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/b2/86/095d2f7829badc207c893dd4ac767e871f6cd547145df797ea26baea4e2e/setuptools-41.2.0-py2.py3-none-any.whl Collecting futures>=3.1.1; python_version < "3" (from tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/d8/a6/f46ae3f1da0cd4361c344888f59ec2f5785e69c872e175a748ef6071cdb5/futures-3.3.0-py2-none-any.whl Collecting markdown>=2.6.8 (from tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/c0/4e/fd492e91abdc2d2fcb70ef453064d980688762079397f779758e055f6575/Markdown-3.1.1-py2.py3-none-any.whl Collecting werkzeug>=0.11.15 (from tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/b7/61/c0a1adf9ad80db012ed7191af98fa05faa95fa09eceb71bb6fa8b66e6a43/Werkzeug-0.15.6-py2.py3-none-any.whl Collecting funcsigs>=1; python_version < "3.3" (from mock>=2.0.0->tensorflow-gpu==1.14.0) Using cached https://files.pythonhosted.org/packages/69/cb/f5be453359271714c01b9bd06126eaf2e368f1fddfff30818754b5ac2328/funcsigs-1.0.2-py2.py3-none-any.whl Building wheels for collected packages: gast Building wheel for gast (setup.py): started Building wheel for gast (setup.py): finished with status 'done' Created wheel for gast: filename=gast-0.3.2-cp27-none-any.whl size=9678 sha256=0aefa032bbdca8e55cb00d63c4deb0b511e3b04198304652510c5f1f6919a858 Stored in directory: /home/sixx/.cache/pip/wheels/59/38/c6/234dc39b4f6951a0768fbc02d5b7207137a5b1d9094f0d54bf Successfully built gast Installing collected packages: enum34, six, absl-py, wrapt, setuptools, protobuf, numpy, keras-preprocessing, gast, astor, futures, markdown, grpcio, wheel, werkzeug, tensorboard, tensorflow-estimator, funcsigs, mock, google-pasta, backports.weakref, termcolor, h5py, keras-applications, tensorflow-gpu, tensorflow-hub, cloudpickle, decorator, tensorflow-probability, scipy, pyyaml, keras Successfully installed absl-py-0.8.0 astor-0.8.0 backports.weakref-1.0.post1 cloudpickle-1.2.2 decorator-4.4.0 enum34-1.1.6 funcsigs-1.0.2 futures-3.3.0 gast-0.3.2 google-pasta-0.1.7 grpcio-1.23.0 h5py-2.10.0 keras-2.3.0 keras-applications-1.0.8 keras-preprocessing-1.1.0 markdown-3.1.1 mock-3.0.5 numpy-1.16.5 protobuf-3.9.1 pyyaml-5.1.2 scipy-1.2.2 setuptools-41.2.0 six-1.12.0 tensorboard-1.14.0 tensorflow-estimator-1.14.0 tensorflow-gpu-1.14.0 tensorflow-hub-0.6.0 tensorflow-probability-0.7.0 termcolor-1.1.0 werkzeug-0.15.6 wheel-0.33.6 wrapt-1.11.2 Installation complete.
CPU version
Keras 패키지에서 install_keras()를 통해 설치한다.
> install_keras() Creating virtual environment '~/.virtualenvs/r-reticulate' ... Using python: /usr/bin/python3.5 New python executable in /home/sixx/.virtualenvs/r-reticulate/bin/python2 Also creating executable in /home/sixx/.virtualenvs/r-reticulate/bin/python Installing setuptools, pkg_resources, pip, wheel...done. Running virtualenv with interpreter /usr/bin/python2 DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support Collecting pip Using cached https://files.pythonhosted.org/packages/30/db/9e38760b32e3e7f40cce46dd5fb107b8c73840df38f0046d8e6514e675a1/pip-19.2.3-py2.py3-none-any.whl Collecting wheel Using cached https://files.pythonhosted.org/packages/00/83/b4a77d044e78ad1a45610eb88f745be2fd2c6d658f9798a15e384b7d57c9/wheel-0.33.6-py2.py3-none-any.whl Collecting setuptools Using cached https://files.pythonhosted.org/packages/b2/86/095d2f7829badc207c893dd4ac767e871f6cd547145df797ea26baea4e2e/setuptools-41.2.0-py2.py3-none-any.whl Installing collected packages: pip, wheel, setuptools Successfully installed pip-19.2.3 setuptools-41.2.0 wheel-0.33.6 Using virtual environment '~/.virtualenvs/r-reticulate' ... DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support Collecting tensorflow==1.14.0 Downloading https://files.pythonhosted.org/packages/d3/59/d88fe8c58ffb66aca21d03c0e290cd68327cc133591130c674985e98a482/tensorflow-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl (109.2MB) Collecting tensorflow-hub Downloading https://files.pythonhosted.org/packages/ac/64/3bba86ca49ef21a4add11a4d37e3f6cd05d2e61d207ebe26a8a96b340826/tensorflow_hub-0.6.0-py2.py3-none-any.whl (84kB) Collecting tensorflow-probability Downloading https://files.pythonhosted.org/packages/3e/3a/c10b6c22320531c774402ac7186d1b673374e2a9d12502cbc8d811e4601c/tensorflow_probability-0.7.0-py2.py3-none-any.whl (981kB) Collecting keras Downloading https://files.pythonhosted.org/packages/f8/ba/2d058dcf1b85b9c212cc58264c98a4a7dd92c989b798823cc5690d062bb2/Keras-2.2.5-py2.py3-none-any.whl (336kB) Collecting absl-py>=0.7.0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/3c/0d/7cbf64cac3f93617a2b6b079c0182e4a83a3e7a8964d3b0cc3d9758ba002/absl-py-0.8.0.tar.gz (102kB) Collecting wrapt>=1.11.1 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/23/84/323c2415280bc4fc880ac5050dddfb3c8062c2552b34c2e512eb4aa68f79/wrapt-1.11.2.tar.gz Collecting protobuf>=3.6.1 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/c7/60/19c2c3b563c8a5ebbc5f17982fd794f415cfc4633a8248ab3e23a47662bc/protobuf-3.9.1-cp27-cp27mu-manylinux1_x86_64.whl (1.2MB) Collecting keras-preprocessing>=1.0.5 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/28/6a/8c1f62c37212d9fc441a7e26736df51ce6f0e38455816445471f10da4f0a/Keras_Preprocessing-1.1.0-py2.py3-none-any.whl (41kB) Collecting gast>=0.2.0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/4d/17/a92e707853e2fb48aea76dcdc200ea9a2f7d1ce6d1eff07ddfcf326184cb/gast-0.3.1.tar.gz Collecting enum34>=1.1.6 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl Collecting astor>=0.6.0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/d1/4f/950dfae467b384fc96bc6469de25d832534f6b4441033c39f914efd13418/astor-0.8.0-py2.py3-none-any.whl Collecting six>=1.10.0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl Collecting tensorboard<1.15.0,>=1.14.0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/f4/37/e6a7af1c92c5b68fb427f853b06164b56ea92126bcfd87784334ec5e4d42/tensorboard-1.14.0-py2-none-any.whl (3.1MB) Collecting numpy<2.0,>=1.14.5 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/d7/b1/3367ea1f372957f97a6752ec725b87886e12af1415216feec9067e31df70/numpy-1.16.5-cp27-cp27mu-manylinux1_x86_64.whl (17.0MB) Collecting tensorflow-estimator<1.15.0rc0,>=1.14.0rc0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/3c/d5/21860a5b11caf0678fbc8319341b0ae21a07156911132e0e71bffed0510d/tensorflow_estimator-1.14.0-py2.py3-none-any.whl (488kB) Collecting mock>=2.0.0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/05/d2/f94e68be6b17f46d2c353564da56e6fb89ef09faeeff3313a046cb810ca9/mock-3.0.5-py2.py3-none-any.whl Collecting google-pasta>=0.1.6 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/35/95/d41cd87d147742ef72d5d1dc317318486e3fbffdadf24a60e70dedf01d56/google_pasta-0.1.7-py2-none-any.whl (55kB) Collecting backports.weakref>=1.0rc1 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/88/ec/f598b633c3d5ffe267aaada57d961c94fdfa183c5c3ebda2b6d151943db6/backports.weakref-1.0.post1-py2.py3-none-any.whl Collecting termcolor>=1.1.0 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz Collecting grpcio>=1.8.6 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/d6/c3/65db90ec27181edf491c26aa998ae631e50cd1f04ee8d8d513a95e3937f3/grpcio-1.23.0-cp27-cp27mu-manylinux1_x86_64.whl (2.2MB) Collecting wheel (from tensorflow==1.14.0) Using cached https://files.pythonhosted.org/packages/00/83/b4a77d044e78ad1a45610eb88f745be2fd2c6d658f9798a15e384b7d57c9/wheel-0.33.6-py2.py3-none-any.whl Collecting keras-applications>=1.0.6 (from tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/21/56/4bcec5a8d9503a87e58e814c4e32ac2b32c37c685672c30bc8c54c6e478a/Keras_Applications-1.0.8.tar.gz (289kB) Collecting cloudpickle>=0.6.1 (from tensorflow-probability) Downloading https://files.pythonhosted.org/packages/09/f4/4a080c349c1680a2086196fcf0286a65931708156f39568ed7051e42ff6a/cloudpickle-1.2.1-py2.py3-none-any.whl Collecting decorator (from tensorflow-probability) Downloading https://files.pythonhosted.org/packages/5f/88/0075e461560a1e750a0dcbf77f1d9de775028c37a19a346a6c565a257399/decorator-4.4.0-py2.py3-none-any.whl Collecting scipy>=0.14 (from keras) Downloading https://files.pythonhosted.org/packages/1d/f6/7c16d60aeb3694e5611976cb4f1eaf1c6b7f1e7c55771d691013405a02ea/scipy-1.2.2-cp27-cp27mu-manylinux1_x86_64.whl (24.8MB) Collecting pyyaml (from keras) Downloading https://files.pythonhosted.org/packages/e3/e8/b3212641ee2718d556df0f23f78de8303f068fe29cdaa7a91018849582fe/PyYAML-5.1.2.tar.gz (265kB) Collecting h5py (from keras) Downloading https://files.pythonhosted.org/packages/12/90/3216b8f6d69905a320352a9ca6802a8e39fdb1cd93133c3d4163db8d5f19/h5py-2.10.0-cp27-cp27mu-manylinux1_x86_64.whl (2.8MB) Collecting setuptools (from protobuf>=3.6.1->tensorflow==1.14.0) Using cached https://files.pythonhosted.org/packages/b2/86/095d2f7829badc207c893dd4ac767e871f6cd547145df797ea26baea4e2e/setuptools-41.2.0-py2.py3-none-any.whl Collecting futures>=3.1.1; python_version < "3" (from tensorboard<1.15.0,>=1.14.0->tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/d8/a6/f46ae3f1da0cd4361c344888f59ec2f5785e69c872e175a748ef6071cdb5/futures-3.3.0-py2-none-any.whl Collecting markdown>=2.6.8 (from tensorboard<1.15.0,>=1.14.0->tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/c0/4e/fd492e91abdc2d2fcb70ef453064d980688762079397f779758e055f6575/Markdown-3.1.1-py2.py3-none-any.whl (87kB) Collecting werkzeug>=0.11.15 (from tensorboard<1.15.0,>=1.14.0->tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/b7/61/c0a1adf9ad80db012ed7191af98fa05faa95fa09eceb71bb6fa8b66e6a43/Werkzeug-0.15.6-py2.py3-none-any.whl (328kB) Collecting funcsigs>=1; python_version < "3.3" (from mock>=2.0.0->tensorflow==1.14.0) Downloading https://files.pythonhosted.org/packages/69/cb/f5be453359271714c01b9bd06126eaf2e368f1fddfff30818754b5ac2328/funcsigs-1.0.2-py2.py3-none-any.whl Building wheels for collected packages: absl-py, wrapt, gast, termcolor, keras-applications, pyyaml ... Successfully built absl-py wrapt gast termcolor keras-applications pyyaml Installing collected packages: six, enum34, absl-py, wrapt, setuptools, protobuf, numpy, keras-preprocessing, gast, astor, futures, markdown, grpcio, wheel, werkzeug, tensorboard, tensorflow-estimator, funcsigs, mock, google-pasta, backports.weakref, termcolor, h5py, keras-applications, tensorflow, tensorflow-hub, cloudpickle, decorator, tensorflow-probability, scipy, pyyaml, keras Successfully installed absl-py-0.8.0 astor-0.8.0 backports.weakref-1.0.post1 cloudpickle-1.2.1 decorator-4.4.0 enum34-1.1.6 funcsigs-1.0.2 futures-3.3.0 gast-0.3.1 google-pasta-0.1.7 grpcio-1.23.0 h5py-2.10.0 keras-2.2.5 keras-applications-1.0.8 keras-preprocessing-1.1.0 markdown-3.1.1 mock-3.0.5 numpy-1.16.5 protobuf-3.9.1 pyyaml-5.1.2 scipy-1.2.2 setuptools-41.2.0 six-1.12.0 tensorboard-1.14.0 tensorflow-1.14.0 tensorflow-estimator-1.14.0 tensorflow-hub-0.6.0 tensorflow-probability-0.7.0 termcolor-1.1.0 werkzeug-0.15.6 wheel-0.33.6 wrapt-1.11.2 Installation complete.
설치시 에러 처리 (for mac)
The script wheel is installed in ‘/Users/onesixx/.virtualenvs/r-reticulate/bin’ which is not on PATH.
HDF5(Hierarchical Data Format) for Python — The h5py package is a Pythonic interface to the HDF5 binary data format.
GPU 설치전 사전 진행사항
https://www.cyberciti.biz/faq/linux-tell-which-graphics-vga-card-installed/
https://www.tensorflow.org/install/source#linux
Hardware requirements
NVIDIA® GPU card with CUDA® Compute Capability 3.5 or higher.
CUDA-enabled GPU cards에서 확인
ex> GeForce GTX 1080 / 8GB
설치된 GPU 확인
GPU Hardware 확인 (by PCI 아이템 리스트)
pci 리스트를 업데이트하고, 리스트를 읽어서 VGA compatible controller를 찾아보면,
찾은 GPU의 ID를 이용해서, 해당 카드의 세부정보를 찾아보면,
GPU driver 확인
Software requirements
Tutorial: GeForce GTX 1080Ti GPU NVIDIA Driver Installation in Ubuntu 18.04 (2019)
https://www.tensorflow.org/install/gpu#ubuntu_1604_cuda_10
ex> UBUNTU 16.04 , CUDA 10.0
1. Nvidia GPU driver 설치 (재설치/Upgrade)
- NVIDIA® GPU drivers —CUDA 10.0 requires 410.x or higher.
1. 설치된 이전 NVIDIA 드라이버 제거
2. repository PPA (Personal Package Archives) 추가후, apt 업데이트
3. NVIDIA 관련 드라이버 확인후, 적합한 NVIDIA driver 와 setting확인툴 설치후,
적용을 위해 Reboot . (추천 버전은 nvidia-driver-418
)
4. 드라이버 설치 확인하고, 드라이버의 상세정보 확인
cat /proc/driver/nvidia/gpus/{tab}/information
2. CUDA 관련 설치 (CUDA Toolkit/ CUPTI/cuDNN/ TensorRT)
- CUDA® Toolkit —TensorFlow supports CUDA 10.0 (TensorFlow >= 1.13.0)
https://tensorflow.rstudio.com/tools/local_gpu.html
https://www.tensorflow.org/install/install_linux#nvidia_requirements_to_run_tensorflow_with_gpu_support
현재 CUDA 설치 확인
Downgrade cuda 10.1 to 10.0
만약 버전이 10.0이 아인면, downgrade.
TensorFlow 최신버전이 아직 CUDA 10.1을 지원하지 않는다.
https://www.tensorflow.org/install/gpu
NVIDIA CUDA network repository installation package 설치
Add HTTPS support for apt-key
NVIDIA Machine Learning network repository 설치
CUDA Toolkit v10.0 와 CUPTI, cuDNN v7.x 설치
CUDA Toolkit을 설치한다.
CUPTI(CUDA Profiling Tools Interface)는 CUDA Toolkit 설치시 같이 설치되고, Nvidia Driver도 설치된다.
cuDNN(CUDA® Deep Neural Network library)
TensorRT 설치
위에서 libcudnn7 가 제대로 설치된 후, TensorRT설치한다.
환경변수 정의 – ENVIRONMENT VARIABLES
- CUDA HOME
- CUDA binary 와 CUPTI 의 binary 경로
- PATH 추가
기본
RStudio Server – MULTI-USER
기본적으로 bash startup file (/etc/profile
) 에 정의하여 모든 사용자에 동일하게 적용해야하지만,
RStudio Server를 활용하는 경우, RStudioServer가 R 세션에 대해 system profile 스크립트를 실행하지 않기 때문에, RStudio 설정파일(/etc/rstudio/rserver.conf )에 라이브러리경로를 정의한다.
CUDA Home과 PATH 는 /usr/lib/R/etc/Rprofile.site
활용
* TensorFlow 설치 for all user multi-user installation 섹션 참고
SINGLE-USER
기본적으로 bash startup file ( ~/.profile
) 에 정의한고, 적용을 위해 reboot한다.
(물론 ~/.bash_profile
이나 ~/.bash_login
이 있으면 ~/.profile을 읽지 않기 때문에 해당 파일이 있는지도 확인해야한다. ~/.bashrc
류는 Terminal 세션만 적용되지만, ~/.profile은 desktop application(RStudio)까지 읽어서 사용하므로 ~/.profile을 사용한다.)
CUDA Home과 PATH 는 ~/.Rprofile
활용
* <참고> 설치 packages
cuda-10-0
cuda-command-line-tools-10-0
cuda-compiler-10-0
cuda-cublas-10-0
cuda-cublas-dev-10-0
cuda-cudart-10-0
cuda-cudart-dev-10-0
cuda-cufft-10-0
cuda-cufft-dev-10-0
cuda-cuobjdump-10-0
cuda-cupti-10-0
cuda-curand-10-0
cuda-curand-dev-10-0
cuda-cusolver-10-0
cuda-cusolver-dev-10-0
cuda-cusparse-10-0
cuda-cusparse-dev-10-0
cuda-demo-suite-10-0
cuda-documentation-10-0
cuda-driver-dev-10-0
cuda-drivers 418.87.00-1
cuda-gdb-10-0
cuda-gpu-library-advisor-10-0
cuda-libraries-10-0
cuda-libraries-dev-10-0
cuda-license-10-0
cuda-memcheck-10-0
cuda-misc-headers-10-0
cuda-npp-10-0
cuda-npp-dev-10-0
cuda-nsight-10-0
cuda-nsight-compute-10-0
cuda-nvcc-10-0
cuda-nvdisasm-10-0
cuda-nvgraph-10-0
cuda-nvgraph-dev-10-0
cuda-nvjpeg-10-0
cuda-nvjpeg-dev-10-0
cuda-nvml-dev-10-0
cuda-nvprof-10-0
cuda-nvprune-10-0
cuda-nvrtc-10-0
cuda-nvrtc-dev-10-0
cuda-nvtx-10-0
cuda-nvvp-10-0
cuda-runtime-10-0
cuda-samples-10-0
cuda-toolkit-10-0
cuda-tools-10-0
cuda-visual-tools-10-0
libcuda1-418
nvidia-418
nvidia-418-dev
nvidia-modprobe
nvidia-opencl-icd-418
nvidia-settings
libcudnn7 7.6.2.24-1+cuda10.0
libcudnn7-dev 7.6.2.24-1+cuda10.0