ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๋ฐ˜์‘ํ˜•

๋งฅ๋ถ ๊ธฐ์ข… : ๋งฅ๋ถ ํ”„๋กœ m3 pro
ํŒŒ์ดํ† ์น˜ ver : 2.2.1
ํŒŒ์ด์ฌ ver : 3.9.13

๋งฅ๋ถ ํ”„๋กœ์—๋Š” GPU๊ฐ€ ๋‚ด์žฅ๋˜์–ด ์žˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— ๋”ฅ๋Ÿฌ๋‹ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ง€์›๋งŒ ๋œ๋‹ค๋ฉด Mac ๋‚ด์žฅ GPU๋ฅผ ๋”ฅ๋Ÿฌ๋‹์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
์œˆ๋„์šฐ์—์„œ๋Š” NVIDIA ๊ทธ๋ž˜ํ”ฝ ์นด๋“œ๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— Cuda๋ฅผ ์‚ฌ์šฉํ–ˆ์ง€๋งŒ Mac์—์„œ๋Š” mps๋ผ๋Š” ๊ฒƒ์„ ํ†ตํ•ด ํŒŒ์ดํ† ์น˜์—์„œ GPU ๊ฐ€์†์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

์•„๋ž˜ ์ฝ”๋“œ๋Š”๋ณธ์ธ์˜ Mac์ด GPU ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜์ง€ ํ™•์ธํ•˜๋Š” ์ฝ”๋“œ์ด๋‹ค.

# GPU Acceleration Check

if torch.backends.mps.is_available():
    mps_device = torch.device("mps")
    x = torch.ones(1, device=mps_device)
    print (x)
else:
    print ("MPS device not found.")

๋งŒ์•ฝ GPU ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฝ”๋“œ๊ฐ€ ์ถœ๋ ฅ๋  ๊ฒƒ์ด๋‹ค. ๋งŒ์•ฝ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด else ๋ฌธ์˜ "MPS device not found." ๋ฌธ์ž์—ด์ด ์ถœ๋ ฅ๋  ๊ฒƒ์ด๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋‘ ์ฝ”๋“œ ๋ชจ๋‘ True ๊ฐ’์ด ๋‚˜์˜ค๋ฉด build๊ฐ€ ๋˜์—ˆ๊ณ , ํ˜„์žฌ ๊ฐœ๋ฐœํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค.

# build ๋ฐ ์‚ฌ์šฉ ์œ ๋ฌด ํ™•์ธ
torch.backends.mps.is_built() 
torch.backends.mps.is_available()

Pytorch๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์•˜๋‹ค๋ฉด, ์œˆ๋„์šฐ๋‚˜ ๊ธฐํƒ€ OS์—์„œ๋Š” device ๋ณ€์ˆ˜๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ ์–ธํ–ˆ์„ ๊ฒƒ์ด๋‹ค.

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

๋งฅ์—์„œ๋Š” device ๋ฉ”์†Œ๋“œ ๋‚ด์— "mps" ๋ฌธ์ž์—ด์„ ๋„ฃ์–ด์ฃผ๋ฉด ๋œ๋‹ค.

# device ๋ณ€์ˆ˜ ์„ ์–ธ
device = torch.device("mps")

์ด์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ด๋ณด์ž.
์ •์ƒ์ ์œผ๋กœ GPU๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด Mac์—์„œ GPU๊ฐ€ ๋Œ์•„๊ฐ€๊ณ  ์žˆ์„ ๊ฒƒ์ด๋‹ค.

ํ™œ์„ฑ ์ƒํƒœ ๋ณด๊ธฐ ์•ฑ์„ ํ†ตํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

ํ™œ์„ฑ ์ƒํƒœ ๋ณด๊ธฐ - CPU - %GPU

256x256x1 ํฌ๊ธฐ์˜ ์ด๋ฏธ์ง€๋ฅผ Segmentation ๋ชจํ˜•์ธ U-net์— 450์žฅ์ •๋„ ํ•™์Šต ์‹œ์ผœ๋ณด์•˜๋‹ค.
์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ณ€ํ•˜๊ธด ํ•˜์ง€๋งŒ 70~80%์˜ GPU๊ฐ€ ๋ชจํ˜• ํ•™์Šต์— ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

vscode ์‚ฌ์šฉ ์ค‘ "ํ˜„์žฌ ์…€ ๋˜๋Š” ์ด์ „ ์…€ ์—์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ ํ•˜๋Š” ๋™์•ˆ kernel์ด ์ถฉ๋Œ ํ–ˆ์Šต๋‹ˆ๋‹ค" ์˜ค๋ฅ˜ ๋ฐœ์ƒ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์œ„์™€ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ชจํ˜• ํ•™์Šต์—์„œ ๋ฐœ์ƒํ•˜์˜€๋‹ค๋ฉด, Pytorch์™€ Python๊ฐ„์˜ ๋ฒ„์ „ ์ถฉ๋Œ์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค.
ํŒŒ์ด์ฌ์„ ๋‚ฎ์€ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•ด์„œ ํŒŒ์ดํ† ์น˜๋„ ๋ฒ„์ „์„ ๋‚ฎ์ท„๋Š”๋ฐ ์ด๊ฒŒ ๋ฌธ์ œ๊ฐ€ ๋˜์—ˆ๋‹ค.

torch, torchvision, torchaudio๋ฅผ ๋ชจ๋‘ uninstall ํ•˜๊ณ  ์ตœ์‹ ๋ฒ„์ „์˜ pytorch๋ฅผ ์„ค์น˜ํ•ด์ฃผ๋ฉด ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•œ๋‹ค.

Pytorch ์„ค์น˜ ํŽ˜์ด์ง€
https://pytorch.org/get-started/locally/

๋ฐ˜์‘ํ˜•
๋ฐ˜์‘ํ˜•
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
๋งํฌ
ยซ   2026/01   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
๊ธ€ ๋ณด๊ด€ํ•จ