tensorflow 만 쓰면 문제가 없는데, tensflow 와 pytorch 를 혼합해서 쓰는 경우 발생한다고 한다. tensorflow 는 GPU를 미리 다 할당받은 다음, 사용하는 구조라서 그걸 코드로 방지해야 한다.
import tensorflow as tf
gpus = tf.config.experimental.list_physical_devices('GPU')
if gpus:
try:
# Currently, memory growth needs to be the same across GPUs
for gpu in gpus:
tf.config.experimental.set_memory_growth(gpu, True)
logical_gpus = tf.config.experimental.list_logical_devices('GPU')
print(len(gpus), "Physical GPUs,", len(logical_gpus), "Logical GPUs")
except RuntimeError as e:
# Memory growth must be set before GPUs have been initialized
print(e)
위 코드를 앞쪽에 삽입해주면 해결된다
'NLP > error' 카테고리의 다른 글
[error] 파라미터 제대로 frozen 하세요 (0) | 2024.06.28 |
---|---|
[error] conda 에서 local 에 설치된 라이브러리에 접근해요 (0) | 2024.02.23 |
[error] PeftModelForCausalLM.generate() takes 1 positional argument and 2 were given (0) | 2023.09.19 |
[error] 파이썬 엑셀 인코딩 문제 해결 (0) | 2023.09.19 |
[error] RuntimeError: CUDA error: invalid device ordinal (0) | 2022.08.03 |