출처: http://daewonyoon.tistory.com/246 [알락블록]
감사합니다.. 감사합니다..
ImportError: DLL load failed: DLL 초기화 루틴을 실행할 수 없습니다.
에러가 뜰 때
구글링을 해 보니, stackoverflow 에 CPU의 AVX 인스트럭션 지원 때문에 문제일 수 있다는 글이 보였다. 즉, tensorflow 1.6 부터는 패키지 빌드시에 AVX 지원을 활성화해서 빌드하였고, 따라서 AVX 를 지원하지 않는 CPU에서는 빌드된 pip tensorflow 패키지는 동작에 문제가 발생한다.
https://github.com/tensorflow/tensorflow/issues/17386
그래서, tensorflow 를 다시 1.6 아래로 다운시켜 ( pip install "tensorflow<1.6" ) 실행해 보니, import tensorflow as tf 가 성공했다.
그리고, 내 피씨의 Celeron CPU의 지원을 확인해 보니, http://www.cpu-world.com/CPUs/Celeron_Dual-Core/Intel-Mobile%20Celeron%202957U.html 아니나 다를까 AVX 기능을 지원하지 않는 것으로 나타났다. 조금 오래된 노트북을 사용하는 경우 문제를 만날 수 있겠다. 아이고, 이 피씨에서는 최신버전의 tensorflow 테스트는 못하겠네.
요약
ImportError: DLL load failed: DLL 초기화 루틴을 실행할 수 없습니다.
1. 에러가 뜨면 cpu가 AVX기능을 지원하는지 확인 해본다.
2. 지원하지 않는다면 텐서플로우를 지우고 pip install "tensorflow<1.6" 으로 다시 다운한다.