HOWTO · TensorFlow

TensorFlow가 GPU를 사용하는지 확인

TensorFlow 프로세스에서 GPU가 감지되는지 확인하고 장치 목록을 해석하며, GPU가 표시되지 않을 때 점검할 항목을 알아봅니다.

이 페이지의 내용

TensorFlow가 GPU를 감지하는지 확인하려면 애플리케이션과 동일한 Python 프로세스, 인터프리터, 환경 및 시작 설정에서 물리적 장치 목록을 조회하세요. 별도의 터미널이나 노트북은 다른 TensorFlow 설치를 사용할 수 있으므로, 그 결과가 애플리케이션의 상태를 나타내지 않을 수 있습니다.

TensorFlow가 GPU를 사용하는지 확인하기

애플리케이션의 Python 환경에서 다음 예제를 실행하세요.

이 섹션의 코드와 표시되는 레이블 또는 출력은 영어로 유지됩니다.

import importlib.util

if importlib.util.find_spec("tensorflow") is None:
    print("TensorFlow is not installed in this Python environment.")
else:
    import tensorflow as tf

    devices = tf.config.list_physical_devices("GPU")
    print("TensorFlow GPU devices:", devices)
TensorFlow is not installed in this Python environment.

TensorFlow가 설치되어 있을 때 목록에 항목이 있으면 이 프로세스가 하나 이상의 GPU 장치를 감지한 것입니다. 목록이 비어 있으면 감지된 장치가 없다는 뜻입니다. 이 목록만으로는 장치가 표시되지 않는 이유를 알 수 없으며, GPU가 보인다고 해서 특정 모델이나 작업이 GPU에서 실행되었다고 단정할 수도 없습니다. 위에 표시된 메시지는 현재 Python 환경에 TensorFlow 패키지가 없다는 뜻입니다. 애플리케이션에서 사용하는 환경을 선택하거나 그 환경에 TensorFlow를 설치한 다음 다시 확인하세요.

애플리케이션에서 사용하는 것과 같은 진입점에서 확인을 실행하세요. 노트북에서는 선택된 커널을 확인하고, 서비스나 컨테이너에서는 해당 프로세스의 환경과 설정으로 실행하세요. 이렇게 하면 장치 검색 문제와 Python 환경 차이를 구분하는 데 도움이 됩니다.

TensorFlow가 GPU를 표시하지만 특정 작업이 어느 장치에서 실행되는지 확인해야 한다면, 애플리케이션과 같은 환경에서 대표 작업을 실행하고 배치 메시지와 result.device를 모두 살펴보세요. 이 예제는 행렬 곱셈 작업에 /GPU:0을 요청합니다. 작업과 입력값은 실제 워크로드에 맞게 조정하세요.

import importlib.util

if importlib.util.find_spec("tensorflow") is None:
    print("TensorFlow is not installed in this Python environment.")
else:
    import tensorflow as tf

    tf.debugging.set_log_device_placement(True)
    with tf.device("/GPU:0"):
        result = tf.matmul(tf.ones((2, 2)), tf.ones((2, 2)))

    print("Result device:", result.device)

제공된 런타임 환경에는 TensorFlow가 설치되어 있지 않으므로 TensorFlow가 필요한 이 예제의 장치 배치 출력은 표시할 수 없습니다. 설정된 컴퓨터에서는 배치 메시지와 result.device로 해당 작업의 실행 결과를 확인할 수 있으며, 정확한 장치 이름은 빌드와 하드웨어에 따라 달라집니다. 장치를 지정해 요청하는 것만으로 해당 작업이나 모델의 모든 작업이 GPU에서 실행되었다고 입증되지는 않습니다.

GPU 지원 여부는 TensorFlow 배포판, 운영 체제, 하드웨어, 드라이버 및 설치된 종속 항목에 따라 달라집니다. 모든 컴퓨터에 적용되는 단일 설정 명령은 없습니다. 사용 중인 플랫폼과 배포판에 맞는 지원 설치 방법은 TensorFlow 공식 설치 안내를 참고하세요. DirectML 같은 백엔드 이름만으로 이 프로세스가 GPU를 감지했음을 알 수는 없습니다. 버전이나 드라이버를 변경하기 전에 선택한 백엔드와 패키지의 최신 문서를 확인하세요. 이 안내에서는 특정 백엔드나 하드웨어 조합의 호환성을 주장하지 않습니다.

장치 목록이 비어 있으면 다음 항목을 순서대로 확인하세요.

  • 현재 인터프리터, 가상 환경 또는 노트북 커널이 애플리케이션에서 사용하는 것과 같은지 확인합니다.
  • 해당 환경에 설치된 TensorFlow 배포판을 확인하고, 사용 중인 플랫폼에서 GPU를 지원하는 공식 설치 안내를 따릅니다. GPU를 지원하지 않는 배포판은 GPU 장치를 표시하지 않습니다.
  • 운영 체제와 해당되는 경우 컨테이너에서 GPU를 볼 수 있는지 확인합니다. 컨테이너에는 호스트의 GPU 접근 권한과 호환되는 드라이버 지원도 필요합니다.
  • 선택한 TensorFlow 배포판이나 백엔드에 필요한 제조업체 드라이버와 종속 항목을 확인합니다. 환경을 변경한 뒤에는 Python 프로세스를 다시 시작하고 장치 조회를 실행하세요.

TensorFlow가 GPU를 감지했지만 작업이 CPU를 사용한다면 해당 작업 주변에서 장치 배치 로깅을 활성화하고 실행 장치를 확인하세요. 이를 통해 장치가 보이는지 여부와 작업이 실제로 배치된 위치를 구분하고, 다음에 조사할 구체적인 지점을 찾을 수 있습니다.