https://www.steemzzang.com/zzan/@fillow/tensorflow-gpu-c
c++에서 tensorflow 사용을 위해 보는 것이라면 위 링크한 게시물도 보고 오시기를 추천합니다.
bazel build tensorflow만 하면 되는줄 알았는데 libtensorflow_cc.so를 빌드해줘야한다고한다.
먼저
./configure
는 했다고 가정 한다. 만약 이게 뭐지 라고 한다면 위게시물을 보고오기 바란다.
먼저 빌드 하기 전에 중요한 점은
만약 tensorflow 성능 향상을 위해 avx sse4.1 등등을 지원하고 싶다면
옵션을 추가 해야 한다.
옵션은 아래와 같다
--copt=-mavx
--copt=-mavx2
--copt=-mfma
--copt=-msse4.2
--copt=-msse4.1
이런 옵션 들이 있고
특히 gpu에서 사용하고 싶다면
--config=cuda
를 반드시 해주어야 한다.
뭐 예를 들어 gpu를 사용하고 싶고 libtensorflow_cc.so 를 빌드하려고 한다면
bazel build --config=cuda //tensorflow:libtensorflow_cc.so
이런 식으로 하면 된다.
말은 쉬워 보이는데
문제는 cuda 버전이 tensorflow 버전과 안맞는다거나 그러는 경우
기껏 30분 동안 빌드 했는데 build failed 가 뜨는 경우가 발생한다.
그뿐만 아니라 gcc에 avx나 sse 같은게 연결이 안되있는 경우
또 한 20분 빌드하고 build failed 뜨는 경우가 있다.
꼭 cuda 버전과 tensorflow 버전을
https://www.tensorflow.org/install/source#tested_build_configurations 여기서 확인한 후
삽질을 하기 바란다.( 안그러면 나처럼 몇시간 날린다.)
이왕 삽질 하게 된거 다음글에는 cuda 깔린거 다 삭제하고 다시 설치 하는 것을 올려보겠다. 내일 거의 예정된 삽질 이거든..