Requirements
- Mac computers with Apple silicon or AMD GPUs
- macOS 12.0 or later (Get the latest beta)
- Python 3.8 or later
- Xcode command-line tools: xcode-select –install
Get started
1. 파이썬 가상환경 실행
2. TensorFlow 설치
For TensorFlow version 2.13 or later:
python -m pip install tensorflow
For TensorFlow version 2.12 or earlier:
python -m pip install tensorflow-macos
3. tensorflow-metal plug-in 설치
python -m pip install tensorflow-metal
4. 코드 실행하여 GPU 사용유무 확인
import tensorflow as tf
cifar = tf.keras.datasets.cifar100
(x_train, y_train), (x_test, y_test) = cifar.load_data()
model = tf.keras.applications.ResNet50(
include_top=True,
weights=None,
input_shape=(32, 32, 3),
classes=100,)
loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False)
model.compile(optimizer="adam", loss=loss_fn, metrics=["accuracy"])
model.fit(x_train, y_train, epochs=5, batch_size=64)
5. 결과
집에서 사용하는 mac-mini-m1 서버에 환경에 실행하여 확인한 결과 훈련시 Epoch당 3~5배 정도 훈련속도 차이가 있었습니다. Nvidia의 GPU와 비교하면 가격 대비 만족할만한 성능은 아니지만 macOS에서 개발시 시간을 조금 줄일 수 있습니다.
CPU
GPU
6. GPU 사용량 확인방법
- Activity Monitor 에서 GPU 사용량 확인
or
- 터미널에서 powermetrics 사용하여 스냅샷 확인
sudo powermetrics --samplers gpu_power -i500 -n1