Tensorflow: CuDNN 7 ๋ฐ CUDA 9๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ

์— ๋งŒ๋“  2017๋…„ 08์›” 05์ผ  ยท  170์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: tensorflow/tensorflow

์‹œ์Šคํ…œ ์ •๋ณด

  • ์‚ฌ์šฉ์ž ์ง€์ • ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๊นŒ(TensorFlow์—์„œ ์ œ๊ณต๋˜๋Š” ์Šคํ†ก ์˜ˆ์ œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ ๋ฐ˜๋Œ€) : ์•„๋‹ˆ์š”
  • OS ํ”Œ๋žซํผ ๋ฐ ๋ฐฐํฌ(์˜ˆ: Linux Ubuntu 16.04) : Windows Server 2012
  • (์†Œ์Šค ๋˜๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ)์—์„œ ์„ค์น˜๋œ TensorFlow : ๋ฐ”์ด๋„ˆ๋ฆฌ
  • TensorFlow ๋ฒ„์ „(์•„๋ž˜ ๋ช…๋ น ์‚ฌ์šฉ) : 1.3.0-rc1
  • ํŒŒ์ด์ฌ ๋ฒ„์ „ : 3.5.2
  • Bazel ๋ฒ„์ „(์†Œ์Šค์—์„œ ์ปดํŒŒ์ผํ•˜๋Š” ๊ฒฝ์šฐ) : N/A
  • CUDA/cuDNN ๋ฒ„์ „ : CUDA V8.0.44, CuDNN 6.0
  • GPU ๋ชจ๋ธ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ : Nvidia GeForce GTX 1080 Ti, 11GB
  • ์ •ํ™•ํ•œ ์žฌํ˜„ ๋ช…๋ น : N/A

๋ฌธ์ œ ์„ค๋ช…

CUDA 9 ๋ฐ CuDNN 7์„ ์ง€์›ํ•˜๋„๋ก TensorFlow๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค. Nvidia๋Š” ์ด๊ฒƒ์ด Pascal GPU์—์„œ 2๋ฐฐ์˜ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์ œ๊ณตํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ฃผ์žฅํ•ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ถ”๊ฐ€๋  ๋ฉ”์†Œ๋“œ์— ๋Œ€ํ•ด ๋งํ•˜์ž๋ฉด, cudnn7์˜ ๊ทธ๋ฃน ์ปจ๋ณผ๋ฃจ์…˜์€ ๋น„์ „ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ชจ๋“  170 ๋Œ“๊ธ€

@tfboyd ์ด์— ๋Œ€ํ•œ ์˜๊ฒฌ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

cuDNN 7์€ ์•„์ง ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋ชจ๋“œ์ด๋ฉฐ ์ž‘์—… ์ค‘์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” 1.3๊ณผ ํ•จ๊ป˜ cuDNN 6.0์œผ๋กœ ๋ฐฉ๊ธˆ ์˜ฎ๊ฒผ์Šต๋‹ˆ๋‹ค. ์ด ๋ฒ„์ „์€ ๋ช‡ ์ฃผ ์•ˆ์— ์ตœ์ข… ๋ฒ„์ „์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ด€์‹ฌ์ด ์žˆ๋Š” ๊ฒฝ์šฐ cuDNN 1.3.0rc2๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„์ง cuDNN 7 ๋˜๋Š” CUDA 9๋กœ ์ปดํŒŒ์ผํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. CUDA 9๋Š” ๋ชจ๋“  ํ”Œ๋žซํผ์— ์„ค์น˜ํ•˜๊ธฐ ์‰ฝ์ง€ ์•Š์œผ๋ฉฐ ์ผ๋ถ€ ์„ค์น˜ ํŒจํ‚ค์ง€๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ตœ์ข… ์™„์„ฑ๋˜๋ฉด ์ตœ์ข… ํ‰๊ฐ€๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. NVIDIA๋Š” ๋˜ํ•œ ์ด๋Ÿฌํ•œ ์ƒˆ๋กœ์šด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ธก๋ฉด์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ์ฃผ์š” ML ํ”Œ๋žซํผ์— ํŒจ์น˜๋ฅผ ๋ณด๋‚ด๊ธฐ ์‹œ์ž‘ํ–ˆ์œผ๋ฉฐ ์ถ”๊ฐ€ ์ž‘์—…์ด ์žˆ์„ ๊ฒƒ์œผ๋กœ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

ํŽธ์ง‘: CUDA 9๋Š” ๋ชจ๋“  ํ”Œ๋žซํผ์— ์„ค์น˜ํ•˜๊ธฐ ์‰ฝ์ง€ ์•Š๊ณ  ๋Œ€์‹  cuDNN์ด๋ผ๊ณ  ๋งํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋˜ํ•œ ์ถ”๊ฐ€ ์ž‘์—…์ด์žˆ์„ ๊ฒƒ์ด๋ผ๊ณ  ์˜์‹ฌ๋˜๋Š” ์ž‘์—…์ด ์žˆ๋Š”์ง€ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋‚จ๊ธด ์–ด๋ฆฌ์„์€ ์ง„์ˆ ์˜ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„์€ ์˜ˆ๋ฅผ ๋“ค์–ด ์–ด์ œ cuDNN 7์ด ์‹คํ–‰๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ซ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

์›น์‚ฌ์ดํŠธ๋ฅผ ์–ด๋–ป๊ฒŒ ์ฝ์–ด์•ผ ํ•˜๋Š”์ง€ ๋งํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํŒŒ์Šค์นผ์—์„œ 2๋ฐฐ ๋” ๋น ๋ฅธ ๊ฒƒ์€ CUDA 8 ๋ฆด๋ฆฌ์Šค์˜ ์ผ๋ถ€์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์‚ฌ์ดํŠธ๋ฅผ ์–ด๋–ป๊ฒŒ ๋ณด๋Š๋ƒ์— ๋”ฐ๋ผ ๋‹ค๋ฅผ ๊ฒƒ ๊ฐ™์•„์š”. NVIDIA๋Š” CUDA 9๊ฐ€ Pascal์˜ ์†๋„๋ฅผ (๋ชจ๋“  ๊ฒƒ์—์„œ) 2๋ฐฐ ํ–ฅ์ƒ์‹œํ‚ฌ ๊ฒƒ์ด๋ผ๊ณ  ์–ธ๊ธ‰ํ•˜์ง€ ์•Š์•˜์œผ๋ฉฐ ๋ชจ๋“  ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ๊ทธ๋Ÿฐ ์ผ์ด ์ผ์–ด๋‚˜๋ฆฌ๋ผ๊ณ  ๊ธฐ๋Œ€ํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

https://developer.nvidia.com/cuda-toolkit/whatsnew

์‚ฌ์ดํŠธ๊ฐ€ ์•ฝ๊ฐ„ ํ˜ผ๋ž€์Šค๋Ÿฝ๊ธด ํ•˜์ง€๋งŒ ์ธ์šฉํ•˜๊ณ  ์žˆ๋Š” ์„น์…˜์ด CUDA 8 ์•„๋ž˜์— ์ค‘์ฒฉ๋˜์–ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ถ€๋ถ„๋งŒ ์–ธ๊ธ‰ํ•œ ๊ฒƒ์ด๋ฏ€๋กœ ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ ๋น„ํ˜„์‹ค์ ์ธ ๊ธฐ๋Œ€๋ฅผ ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. Volta์˜ ๊ฒฝ์šฐ ๋‚ด๊ฐ€ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์—์„œ ์ƒ๋‹นํ•œ ์ด๋“์ด ์žˆ์–ด์•ผ ํ•˜๋ฉฐ (์ง€๊ธˆ์€ ํ™•์‹คํ•˜์ง€ ์•Š์Œ) ์‚ฌ๋žŒ๋“ค์ด ์ „์ฒด ๋ฆด๋ฆฌ์Šค๋ฅผ ์ค€๋น„ํ•˜๊ธฐ ์œ„ํ•ด ๋†’์€ ์ˆ˜์ค€์˜ ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด Volta์˜ ์—”์ง€๋‹ˆ์–ด๋ง ์ƒ˜ํ”Œ์„ ์–ป๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

@tfboyd cuDNN 7์€ ์–ด์ œ๋ถ€๋กœ ๋” ์ด์ƒ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋ชจ๋“œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. CUDA 8.0 ๋ฐ CUDA 9.0 RC์šฉ์œผ๋กœ ๊ณต์‹ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์•„, ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋†“์ณค๋‹ค. @sclarkson ์—๊ฒŒ ๊ฐ์‚ฌํ•˜๊ณ  ์ž˜๋ชป๋œ ์ •๋ณด์— ๋Œ€ํ•ด ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.

๋งˆ์นจ๋‚ด gcc 6์ด CUDA 9์—์„œ ์ง€์›๋˜๊ณ  Ubuntu 17.04๊ฐ€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๊ธฐ ๋•Œ๋ฌธ์— ํ™•์‹คํžˆ ์‹œ๋„ํ•ด ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์šด์ด ์ข‹์œผ๋ฉด ์Šค๋ ˆ๋“œ์—๊ฒŒ ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค. ์ €๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ์ด์ œ ๋ง‰ ์‹œ์ž‘ํ•˜๋Š”
cuDNN 6์„ ์™„์ „ํžˆ ํ…Œ์ŠคํŠธํ•ฉ๋‹ˆ๋‹ค(๋‚ด๋ถ€์ ์œผ๋กœ ๋งŽ์ด ํ…Œ์ŠคํŠธ๋˜์—ˆ์ง€๋งŒ
๊ฐœ์ธ์ ์œผ๋กœ ์‚ฌ์šฉ). ๋‚˜๋Š” ์ข…์ข… ์ตœ์‹  ํ•ญ๋ชฉ์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ด ๋Š๋ฆฝ๋‹ˆ๋‹ค. ๋‚˜์˜
๋ชจ๋“  ๊ฒƒ์ด ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ cuDNN 7์—์„œ ์‹ค์ œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ณด์ง€ ๋ชปํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
์ตœ์‹  API๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ํŒจ์น˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋‹ค ํ‹€๋ ธ๋‹ค๋Š” ๊ฒƒ์„ ๋‹ค์‹œ ๊ฐ•์กฐํ•˜๊ณ  ์‹ถ๋‹ค
์‹œ๊ฐ„์˜. ๋‚ด๊ฐ€ ์™ธ๋ถ€์ธ์œผ๋กœ์„œ ๋ณธ ๊ฒƒ์€ ์ƒˆ๋กœ์šด cuDNN ๋ฒ„์ „์ด ์ถ”๊ฐ€๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ƒˆ๋กœ์šด ๋ฐฉ๋ฒ•/API. ์ผ๋ถ€๋Š” ํฅ๋ฏธ๋กญ๊ณ  ์ผ๋ถ€๋Š” ์ฆ‰์‹œ ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์œ ์šฉํ•œ. ๊ทธ๋Ÿฐ ๋‹ค์Œ ํ•ด๋‹น API๋Š” TensorFlow API๋ฅผ ํ†ตํ•ด ๋…ธ์ถœ๋˜๊ฑฐ๋‚˜ ๊ทธ๋ƒฅ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
๋ฐฐํ›„์—์„œ ๊ธฐ์กด ๋ฐฉ๋ฒ•์„ ๋” ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋‚ด ๋งค์šฐ ๋†’์€ ์ˆ˜์ค€
cuDNN 7 + CUDA 9๋Š”
๋ณผํƒ€. ์ฃผ์š” ์ดˆ์  ์ค‘ ํ•˜๋‚˜๋Š” ๋ชจ๋ธ์„ ์–ป๋Š” ๋ฐฉ๋ฒ•์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
๋ช‡) ๋์—†์ด ์˜ค๋ฅธ์ชฝ์„ ์ถ”์ธกํ•  ํ•„์š” ์—†์ด FP16์œผ๋กœ ์ˆ˜๋ ด
์‚ฌ์šฉํ•  ๊ตฌ์„ฑ/์ดˆ๋งค๊ฐœ๋ณ€์ˆ˜. ๋‚˜๋Š” ์ด๊ฒƒ์ด ๋‚ด๊ฐ€ ํ•˜๋Š” ๋ฐฉ์‹์ž„์„ ๊ฐ•์กฐํ•˜๊ณ  ์‹ถ๋‹ค.
๋Œ€ํ™”๋ฅผ ์ดํ•ดํ–ˆ๊ณ  ๋‚ด๊ฐ€ ํ‹€๋ฆด ์ˆ˜๋„ ์žˆ๊ณ  ๋ฐ˜์ฏค ๋งž์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ŠคํŠธ๋ ˆ์Šค: ์ถ”๊ฐ€ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋Š” ๊ฒฝ์šฐ(๋˜๋Š”
์„ฑ๋Šฅ)์„ cuDNN์—์„œ TensorFlow๋กœ ๋ณ€ํ™˜ํ•˜๋ ค๋ฉด ํ•ญ์ƒ ๋ชฉ๋ก์— ๊ด€์‹ฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋‚ด๋ถ€์ ์œผ๋กœ ์ด๊ฒƒ์€ cuDNN 6์—์„œ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ ์šฐ๋ฆฌ๋Š” ๊ตฌํ˜„์— ์ง‘์ค‘ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ธฐ๋Šฅ ํŒ€์€ ํ”„๋กœ์ ํŠธ์— ๋„์›€์ด ๋  ๊ฒƒ์ด๋ผ๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.

2017๋…„ 8์›” 5์ผ ํ† ์š”์ผ ์˜ค์ „ 8์‹œ 46๋ถ„, ํ”Œ๋กœ๋ฆฌ์•ˆ ์•Œ๋ฆผ @github.com
์ผ๋‹ค:

๋งˆ์นจ๋‚ด gcc 6์ด CUDA 9์—์„œ ์ง€์›๋˜๊ณ 
์šฐ๋ถ„ํˆฌ 17.04๊ฐ€ ํ•จ๊ป˜ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-320450756 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZessKqj_nPY1br9SD9L9SX-8Kf5Dbtks5sVI5TgaJpZM4OuRL7
.

์ถ”๊ฐ€๋  ๋ฉ”์†Œ๋“œ์— ๋Œ€ํ•ด ๋งํ•˜์ž๋ฉด, cudnn7์˜ ๊ทธ๋ฃน ์ปจ๋ณผ๋ฃจ์…˜์€ ๋น„์ „ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฉ‹์ ธ์š”. ์‹œ์ž‘ํ•˜๋Š” ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์žŠ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ž์œ ๋กญ๊ฒŒ
๋‚ด๊ฐ€ ๋ช‡ ๊ฐ€์ง€ ์ง€์นจ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์ข…์˜ ๋ชฉ๋ก์„ ๊ฒŒ์‹œํ•˜๋„๋ก ์ƒ๊ธฐ์‹œํ‚ค๊ธฐ ์œ„ํ•ด
์ž‘์—… ์ค‘์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์•ฝ์†์€ ์•„๋‹ˆ์ง€๋งŒ ์šฐ๋ฆฌ๋Š” ์›ํ•œ๋‹ค
์‚ฌ๋žŒ๋“ค์ด ์›ํ•˜๊ณ  ํ•„์š”๋กœ ํ•˜๋Š” ๊ฒƒ์˜ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Yuxin๋‹˜, ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

2017๋…„ 8์›” 5์ผ ํ† ์š”์ผ ์˜คํ›„ 12์‹œ 26๋ถ„์— Yuxin Wu [email protected]์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

์ถ”๊ฐ€ํ•  ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•ด ๋งํ•˜๋ฉด cudnn7์˜ ๊ทธ๋ฃน ์ปจ๋ณผ๋ฃจ์…˜์€
๋น„์ „ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-320465264 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesv9udRRxy9WvsK2eUEZCj7LAGM8bks5sVMHVgaJpZM4OuRL7
.

๋ฐฉ๊ธˆ CUDA 8๊ณผ ํ•จ๊ป˜ cuDNN 7๋กœ ์ปดํŒŒ์ผ์„ ์‹œ๋„ํ–ˆ๋Š”๋ฐ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.
์˜ˆ์ƒ. ๋ผ์ธ์„ ๋„์™€์•ผ ํ•˜๋Š” NVIDIA์—์„œ ๋“ค์–ด์˜ค๋Š” ํŒจ์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
์ผ์„ ์œ„๋กœ. ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์‹œ๋„ํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ์ฃผ์˜ํ•˜์‹ญ์‹œ์˜ค.

2017๋…„ 8์›” 5์ผ ํ† ์š”์ผ ์˜คํ›„ 1์‹œ 47๋ถ„์— Toby Boyd [email protected]์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

๋ฉ‹์ ธ์š”. ์‹œ์ž‘ํ•˜๋Š” ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์žŠ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ž์œ ๋กญ๊ฒŒ
๋‚ด๊ฐ€ ๋ช‡ ๊ฐ€์ง€ ์ง€์นจ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์ข…์˜ ๋ชฉ๋ก์„ ๊ฒŒ์‹œํ•˜๋„๋ก ์ƒ๊ธฐ์‹œํ‚ค๊ธฐ ์œ„ํ•ด
์ž‘์—… ์ค‘์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์•ฝ์†์€ ์•„๋‹ˆ์ง€๋งŒ ์šฐ๋ฆฌ๋Š” ์›ํ•œ๋‹ค
์‚ฌ๋žŒ๋“ค์ด ์›ํ•˜๊ณ  ํ•„์š”๋กœ ํ•˜๋Š” ๊ฒƒ์˜ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Yuxin๋‹˜, ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

2017๋…„ 8์›” 5์ผ ํ† ์š”์ผ ์˜คํ›„ 12์‹œ 26๋ถ„, Yuxin Wu [email protected]
์ผ๋‹ค:

์ถ”๊ฐ€ํ•  ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•ด ๋งํ•˜๋ฉด cudnn7์˜ ๊ทธ๋ฃน ์ปจ๋ณผ๋ฃจ์…˜์€
๋น„์ „ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-320465264 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesv9udRRxy9WvsK2eUEZCj7LAGM8bks5sVMHVgaJpZM4OuRL7
.

CUDA 8/9๊ฐ€ ์‹คํ–‰๋˜๋Š” cuDNN 7์„ ์–ป์œผ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. CUDA 8์€ GTX 1080 Ti์—์„œ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค - ์ ์–ด๋„ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์€ ๊ทธ๋ ‡๊ฒŒ ๋งํ•ฉ๋‹ˆ๋‹ค ^^

ํ•จ๊ป˜ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ํฐ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์ด๋ฏธ ์‹œ๋„ํ•œ ๊ฒƒ์„ ์š”์•ฝํ•œ ์ด ํ›Œ๋ฅญํ•œ ๊ธฐ์‚ฌ๋ฅผ ์ง€์ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. https://nitishmutha.github.io/tensorflow/2017/01/22/TensorFlow-with-gpu-for-windows.html

CUDA ์˜ˆ์ œ๋Š” ๋‘ ์„ค์ • ์กฐํ•ฉ์—์„œ Visual-Studio๋ฅผ ํ†ตํ•ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
Visual-Studio๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํŒŒ์ผ๋œ deviceQuery.exe์˜ ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

PS C:\ProgramData\NVIDIA Corporation\CUDA Samples\v9.0\bin\win64\Release> deviceQuery.exe
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v9.0\bin\win64\Release\deviceQuery.exe Starting...

 CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: "GeForce GTX 1080 Ti"
  CUDA Driver Version / Runtime Version          9.0 / 9.0
  CUDA Capability Major/Minor version number:    6.1
  Total amount of global memory:                 11264 MBytes (11811160064 bytes)
  (28) Multiprocessors, (128) CUDA Cores/MP:     3584 CUDA Cores
  GPU Max Clock rate:                            1683 MHz (1.68 GHz)
  Memory Clock rate:                             5505 Mhz
  Memory Bus Width:                              352-bit
  L2 Cache Size:                                 2883584 bytes
  Maximum Texture Dimension Size (x,y,z)         1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)
  Maximum Layered 1D Texture Size, (num) layers  1D=(32768), 2048 layers
  Maximum Layered 2D Texture Size, (num) layers  2D=(32768, 32768), 2048 layers
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       49152 bytes
  Total number of registers available per block: 65536
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  2048
  Maximum number of threads per block:           1024
  Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
  Max dimension size of a grid size    (x,y,z): (2147483647, 65535, 65535)
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and kernel execution:          Yes with 2 copy engine(s)
  Run time limit on kernels:                     Yes
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support:                        Disabled
  CUDA Device Driver Mode (TCC or WDDM):         WDDM (Windows Display Driver Model)
  Device supports Unified Addressing (UVA):      Yes
  Supports Cooperative Kernel Launch:            No
  Supports MultiDevice Co-op Kernel Launch:      No
  Device PCI Domain ID / Bus ID / location ID:   0 / 1 / 0
  Compute Mode:
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 9.0, CUDA Runtime Version = 9.0, NumDevs = 1, Device0 = GeForce GTX 1080 Ti
Result = PASS

@tfboyd Nvidea ์˜ cuDNN ์—…๋ฐ์ดํŠธ๋ฅผ ํ™•์ธํ•˜๋Š” ๋งํฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

@4F2E4A2E 1080 Ti๋Š” ํ™•์‹คํžˆ CUDA 8.0์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ œ๊ฐ€ ์ง€๋‚œ ๋ช‡ ๋‹ฌ ๋™์•ˆ TensorFlow์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•ด ์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”, ์ €๋Š” cuda 8.0์ด ์„ค์น˜๋œ gtx 1080 ti๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. tensorflow-gpu๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. cuDNN 5.1, 6.0 ๋˜๋Š” 7.0์œผ๋กœ ๊ฐˆ๊นŒ์š”?

๋‹น๋ถ„๊ฐ„์€ 5.1์„ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋” ๊นŠ์€ ์„ฑ๋Šฅ์„ ์‹คํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค.
6์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ์™€ ์•Œ์•„๋‚ด๊ธฐ ์œ„ํ•ด ๋” ๋งŽ์€ ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ•œ ํ˜ผํ•ฉ ๊ฒฐ๊ณผ๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.

2017๋…„ 8์›” 6์ผ ์˜คํ›„ 9์‹œ 30๋ถ„์— "colmantse" [email protected]์ด ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”, ์ €๋Š” cuda 8.0์ด ์„ค์น˜๋œ gtx 1080 ti๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์„ค์น˜ํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค
tensorflow-gpu, cuDNN 5.1, 6.0 ๋˜๋Š” 7.0์„ ์„ ํƒํ•ฉ๋‹ˆ๊นŒ?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-320566071 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZeshvEFsdeWz-1uyzl_L6HE15E0BzSks5sVpLlgaJpZM4OuRL7
.

๊ณ ๋งˆ์›Œ, ๋‚˜๋Š” cudnn 6.0์œผ๋กœ ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋‚ด ๋”๋ฏธ tf-gpu ์„ค์น˜ ๋•Œ๋ฌธ์— ์ถ”์ธก๋œ๋‹ค. cudnn 5.1์€ python 3.6์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

@tpankaj ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! CUDA 8 ๋ฐ cuDNN 5.1์—์„œ ์‹คํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค.

cuDNN 7์˜ ์ „์ฒด ๊ธฐ๋Šฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ฃผ์š” ๊ธฐ๋Šฅ ๋ฐ ๊ฐœ์„  ์‚ฌํ•ญ
์ด cuDNN ๋ฆด๋ฆฌ์Šค์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฃผ์š” ๊ธฐ๋Šฅ ๋ฐ ๊ฐœ์„  ์‚ฌํ•ญ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
ํ…์„œ ์ฝ”์–ด
cuDNN ๋ฒ„์ „ 7.0.1์€ ํ…์„œ ์ฝ”์–ด ์ž‘์—…์„ ์ง€์›ํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.
๊ตฌํ˜„. Tensor Core๋Š” ๊ณ ๋„๋กœ ์ตœ์ ํ™”๋œ ํ–‰๋ ฌ ๊ณฑ์…ˆ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
์ „ํ†ต์ ์ธ ๋ฐฉ์‹์—์„œ ๋™๋“ฑํ•œ ์ˆ˜์น˜์  ํ–‰๋™์„ ํ•˜์ง€ ์•Š๋Š” ๋นŒ๋”ฉ ๋ธ”๋ก
๋”ฐ๋ผ์„œ ๋ช…๋ น์–ด์˜ ์ˆ˜์น˜์  ๋™์ž‘์€ ์•ฝ๊ฐ„ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.
cudnnSetConvolutionMathType, cudnnSetRNNMatrixMathType ๋ฐ
cudnn์ˆ˜ํ•™ ์œ ํ˜•_t
cudnnSetConvolutionMathType ๋ฐ cudnnSetRNNMatrixMathType
๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด Tensor Core ์ž‘์—…์„ ์‚ฌ์šฉํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ˆ˜ํ•™ ๋ชจ๋“œ๋ฅผ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜๋กœ ์„ค์ •ํ•˜์—ฌ ๊ฐ๊ฐ ์ปจ๋ณผ๋ฃจ์…˜ ๋ฐ RNN ๋ ˆ์ด์–ด
CUDNN_TENSOR_OP_MATH ๋˜๋Š” CUDNN_DEFAULT_MATH.
Tensor Core ์—ฐ์‚ฐ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ณ‘๋ ฌ ๋ถ€๋™ ์†Œ์ˆ˜์  ๋ˆ„์ ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
๋ถ€๋™ ์†Œ์ˆ˜์  ์ œํ’ˆ.
์ˆ˜ํ•™ ๋ชจ๋“œ๋ฅผ CUDNN_TENSOR_OP_MATH๋กœ ์„ค์ •ํ•˜๋ฉด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ž„์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
ํ…์„œ ์ฝ”์–ด ์ž‘์—….
๊ธฐ๋ณธ๊ฐ’์€ CUDNN_DEFAULT_MATH์ž…๋‹ˆ๋‹ค. ์ด ๊ธฐ๋ณธ๊ฐ’์€ Tensor Core๊ฐ€
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์ž‘์—…์„ ํ”ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ๋ชจ๋“œ๋Š” ์ง๋ ฌํ™”๋œ ์ž‘์—…์ž…๋‹ˆ๋‹ค.
๋ฐ˜๋ฉด Tensor Core๋Š” ๋ณ‘๋ ฌ ์ž‘์—…์ด๋ฏ€๋กœ ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ๊ฐ€
์ž‘์—… ์ˆœ์„œ๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์ˆ˜์น˜ ๊ฒฐ๊ณผ๊ฐ€ ์•ฝ๊ฐ„ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.
Tensor Core ์—ฐ์‚ฐ์ด ๋‹ค์Œ๊ณผ ๊ฐ™์„ ๋•Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๊ธฐ๋ณธ ์ˆ˜ํ•™ ๋ชจ๋“œ๋กœ ํด๋ฐฑํ•ฉ๋‹ˆ๋‹ค.
์ง€์›๋˜์ง€ ์•Š๊ฑฐ๋‚˜ ํ—ˆ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
cudnnSetConvolutionGroupCount
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ปจ๋ณผ๋ฃจ์…˜ ๊ทธ๋ฃน์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์ƒˆ๋กœ์šด ์ธํ„ฐํŽ˜์ด์Šค
๋‹จ์ผ API ํ˜ธ์ถœ์—์„œ ์ปจ๋ณผ๋ฃจ์…˜ ๋ ˆ์ด์–ด.
cudnnCTCLLoss
cudnnCTCLoss๋Š” Connectionist Temporal์˜ GPU ๊ตฌํ˜„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
RNN์— ๋Œ€ํ•œ ๋ถ„๋ฅ˜(CTC) ์†์‹ค ํ•จ์ˆ˜. CTC ์†์‹ค ํ•จ์ˆ˜๋Š” ๋‹ค์Œ์„ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
์Œ์„ฑ ๋ฐ ํ•„๊ธฐ ์ธ์‹์˜ ์Œ์†Œ ์ธ์‹.
CUDNN_BATCHNORM_SPATIAL_PERSISTENT
CUDNN_BATCHNORM_SPATIAL_PERSISTENT ํ•จ์ˆ˜๋Š” ์ƒˆ ๋ฐฐ์น˜์ž…๋‹ˆ๋‹ค.
cudnnBatchNormalizationForwardTraining์˜ ์ •๊ทœํ™” ๋ชจ๋“œ
๋ฐ cudnnBatchNormalizationBackward. ์ด ๋ชจ๋“œ๋Š” ๋‹ค์Œ๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ CUDNN_BATCHNORM_SPATIAL์€ ์ผ๋ถ€ ์ž‘์—…์˜ ๊ฒฝ์šฐ ๋” ๋น ๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
cudnnQueryRuntimeError
cudnnQueryRuntimeError ํ•จ์ˆ˜๋Š” GPU์—์„œ ์ž‘์„ฑํ•œ ์˜ค๋ฅ˜ ์ฝ”๋“œ๋ฅผ ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค.
cudnnBatchNormalizationForwardTraining์„ ์‹คํ–‰ํ•  ๋•Œ ์ปค๋„
๋ฐ cudnnBatchNormalizationBackward
CUDNN_BATCHNORM_SPATIAL_PERSISTENT ๋ชจ๋“œ.
cudnnGetConvolutionForwardAlgorithm_v7
์ด ์ƒˆ๋กœ์šด API๋Š” ์˜ˆ์ƒ ์„ฑ๋Šฅ์— ๋”ฐ๋ผ ์ •๋ ฌ๋œ ๋ชจ๋“  ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
(๋‚ด๋ถ€ ํœด๋ฆฌ์Šคํ‹ฑ ์‚ฌ์šฉ). ์ด๋Ÿฌํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋‹ค์Œ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
cudnnFindConvolutionForwardAlgorithm.
cudnnGetConvolutionBackwardDataAlgorithm_v7
์ด ์ƒˆ๋กœ์šด API๋Š” ์˜ˆ์ƒ ์„ฑ๋Šฅ์— ๋”ฐ๋ผ ์ •๋ ฌ๋œ ๋ชจ๋“  ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
(๋‚ด๋ถ€ ํœด๋ฆฌ์Šคํ‹ฑ ์‚ฌ์šฉ). ์ด๋Ÿฌํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋‹ค์Œ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
cudnnFindConvolutionBackwardAlgorithm.
cudnnGetConvolutionBackwardFilterAlgorithm_v7
์ด ์ƒˆ๋กœ์šด API๋Š” ์˜ˆ์ƒ ์„ฑ๋Šฅ์— ๋”ฐ๋ผ ์ •๋ ฌ๋œ ๋ชจ๋“  ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
(๋‚ด๋ถ€ ํœด๋ฆฌ์Šคํ‹ฑ ์‚ฌ์šฉ). ์ด๋Ÿฌํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋‹ค์Œ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
cudnnFindConvolutionBackwardFilter ์•Œ๊ณ ๋ฆฌ์ฆ˜.
CUDNN_REDUCE_TENSOR_MUL_NO_ZEROS
MUL_NO_ZEROS ํ•จ์ˆ˜๋Š” 0์„ ๋ฌด์‹œํ•˜๋Š” ๊ณฑ์…ˆ ๊ฐ์†Œ์ž…๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ.
CUDNN_OP_TENSOR_NOT
OP_TENSOR_NOT ํ•จ์ˆ˜๋Š” ์Œ์ˆ˜๋ฅผ ์ทจํ•˜๋Š” ๋‹จํ•ญ ์—ฐ์‚ฐ์ž…๋‹ˆ๋‹ค.
(์•ŒํŒŒ*A).
cudnnGetDropoutDescriptor
cudnnGetDropoutDescriptor ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋“œ๋กญ์•„์›ƒ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ€์น˜.

์ข‹์Šต๋‹ˆ๋‹ค. ์ €๋Š” CUDA 9 RC + cuDNN 7.0์˜ "๋ธ”๋กœ๊ทธ"์— ๊ฐ€๊นŒ์šด ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์ƒ๊ฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ•จ๊ป˜ ํŒจ์น˜๋˜์—ˆ์ง€๋งŒ CUDA 9RC ๋ฐ cuDNN 7.0์ธ "๋‚ด ์†์—" TF ๋นŒ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ทธ๊ฒƒ์„ ์‹œ๋„ํ•˜๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ๋Š”์ง€ ์•Œ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ณต์œ ํ•  ์ˆ˜ ์—†๋Š” ์ด์ƒํ•œ ์ด์œ ๊ฐ€ ์—†๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. TensorFlow๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์ผ๋ถ€ ์—…์ŠคํŠธ๋ฆผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝํ•ด์•ผ ํ•˜์ง€๋งŒ ๊ฐ€๊นŒ์šด ์‹œ์ผ ๋‚ด์— NVIDIA์—์„œ PR์ด ๋“ค์–ด์˜ค๋Š” ๊ฒƒ์„ ๋ณด๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜์™€ ํŒ€์€ Volta์—์„œ CUDA 8 + cuDNN 6์„ ํ…Œ์ŠคํŠธํ•œ ๋‹ค์Œ Volta(V100)์—์„œ FP32 ์ฝ”๋“œ๋กœ CUDA 9RC + cuDNN 7์„ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” Linux ๋นŒ๋“œ์™€ Python 2.7๋งŒ ์ˆ˜ํ–‰ํ•˜์ง€๋งŒ ์—ฌ๋Ÿฌ๋ถ„ ๋ชจ๋‘/๋ˆ„๊ตฌ๋ผ๋„ ๊ด€์‹ฌ์ด ์žˆ๋‹ค๋ฉด cuDNN 6.0๋ณด๋‹ค ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๋” ๋งŽ์ด ์ฐธ์—ฌ์‹œํ‚ค๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์•„์ฃผ ์žฌ๋ฏธ์žˆ์ง€๋Š” ์•Š์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์ œ๊ณตํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํ•จ๊ป˜ ์žˆ๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ๋Š๋‚Œ์„ ์ฃผ๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋˜ํ•œ ์šฐ๋ฆฌ๊ฐ€ ์ž‘์—…ํ•˜๊ณ  ์žˆ์ง€๋งŒ cuDNN 7(๋ฐ 6.0)์— ๋Œ€ํ•ด ์•ฝ์†ํ•˜์ง€ ์•Š์€ ๊ธฐ๋Šฅ ๋ชฉ๋ก์„ ์ž‘์„ฑํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. @cancan101 ์ „์ฒด ๋ชฉ๋ก ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@tfboyd : CUDA 9.0RC+cuDNN 7.0์— ๋Œ€ํ•œ ์„ค๋ช…์„ ํ•ด์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด์ƒํ•œ ์‹œ์Šคํ…œ(TF1.3, CUDA 8.0 ๋ฐ cuDNN 6.0 gcc-4.8์ด ํฌํ•จ๋œ ์šฐ๋ถ„ํˆฌ 17.10 ๋ฒ ํƒ€)์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ cuda 9 ๋ฐ cudnn 7๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ด ์‹ค์ œ๋กœ ์ปดํŒŒ์ผ๋Ÿฌ ๋ฉด์—์„œ ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ์ด ์Šค์Šค๋กœ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ฒƒ์„ ์–ป๊ธฐ ์œ„ํ•ด ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋ณผ ๊ฒƒ
๋ฐ”์ด๋„ˆ๋ฆฌ. ์„ฑ๊ณผ ํŒ€ ๋ฆฌ๋”๋Š” ๋‚ด๊ฐ€ ์ด๊ฒƒ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ๋” ํˆฌ๋ช…ํ•  ์ˆ˜ ์žˆ๊ณ  ๋‚˜๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๋กœ์„œ ๋” ์žฌ๋ฏธ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.
๋‹น์‹ ์—๊ฒŒ ํŒจ์น˜๋ฅผ ์–ป๋Š” ๊ฒƒ๊ณผ ๊ทธ๊ฒƒ์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์€ ์•„์ฃผ ์–ด๋ ต์ง€๋Š” ์•Š์ง€๋งŒ ์กฐ๊ธˆ
๋” ์—ด์‹ฌํžˆ. ๋˜ํ•œ ๊ด€๋ฆฌํ•  ์‹œ๊ฐ„์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋งค์šฐ ๋น„๊ณต์‹์ ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ฐ€์ง€์™€ ํŒจ์น˜๊ฐ€ ๋งค์šฐ ๋นจ๋ฆฌ ์ฉ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๊นจ๋—ํ•˜๊ฒŒ ์ ์šฉ๋˜์ง€ ์•Š์Œ). NS
ํŒจ์น˜๋Š” ๊ด€๋ จ๋œ ๋ชจ๋“  ์‚ฌ๋žŒ๋“ค์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•ด ๊ดœ์ฐฎ์€์ง€ ํ™•์ธํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์ผ๋ฐ˜ ๋ฐ ๊ฐœ๋ณ„ PR์ด ๋“ค์–ด์˜ค๊ธฐ ์‹œ์ž‘ํ•  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ•ฉ๋‹ˆ๋‹ค.

2017๋…„ 8์›” 11์ผ ๊ธˆ์š”์ผ ์˜ค์ „ 5:22 Erlend Aune ์•Œ๋ฆผ @github.com
์ผ๋‹ค:

@tfboyd https://github.com/tfboyd : ์„ค๋ช… ํ•ด์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค
CUDA 9.0RC+cuDNN 7.0์„ ์ˆ˜ํ–‰ํ•  ๋•Œ. ๋‚˜๋Š” ์ด์ƒํ•œ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค (์šฐ๋ถ„ํˆฌ
17.10 ๋ฒ ํƒ€(TF1.3, CUDA 8.0 ๋ฐ cuDNN 6.0 gcc-4.8 ํฌํ•จ) ๋ฐ ์—…๊ทธ๋ ˆ์ด๋“œ
cuda 9์™€ cudnn 7์€ ์‹ค์ œ๋กœ ์ปดํŒŒ์ผ๋Ÿฌ ๋ฉด์—์„œ ํ›Œ๋ฅญํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-321798364 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesj4WRkFKNX-Nt2oKtvp0oyQVBtM5ks5sXEdqgaJpZM4OuRL7
.

@tfboyd : ๊ด€์‹ฌ์ด ์žˆ๋Š”๋ฐ ์–ด๋–ป๊ฒŒ ๊ณต์œ ํ•˜๋‚˜์š”? ์ง€์ ?

@tfboyd ์ €๋„ ๋ถ„๋ช…ํžˆ ๊ด€์‹ฌ์ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”!

์ด๋ฒˆ์ฃผ์— ํ•ด๊ฒฐํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋ณด๋‹ค ๋ฌผ๋ฅ˜๊ฐ€ ํž˜๋“  ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค
์ƒ๊ฐํ•œ๋‹ค.

2017๋…„ 8์›” 12์ผ ์˜ค์ „ 10์‹œ 18๋ถ„์— "Tanmay Bakshi" [email protected]์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

@tfboyd https://github.com/tfboyd ๋‚˜๋Š” ํ™•์‹คํžˆ ๋งค์šฐ ๊ด€์‹ฌ์ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค
์ž˜. ๊ฐ์‚ฌ ํ•ด์š”!

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-321994065 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesjO42Rl1WCyW0KR22KgbydKh1O4Zks5sXd6AgaJpZM4OuRL7
.

Python 2.7์„ ์ข‹์•„ํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉํ•  ์ง€์นจ ๋ฐ ๋ฐ”์ด๋„ˆ๋ฆฌ. ๋…ธ๋ ฅ์„ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ์„ฑํ•œ ๋ฌธ์ œ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋ฏ€๋กœ ์ด ๊ธ€์„ ๋‹ซ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. @sssssssssss ใ… 

https://github.com/tensorflow/tensorflow/issues/12474

๋ฐฉ๊ธˆ Windows x64์—์„œ Python 3.6์šฉ์œผ๋กœ ๋ฏธ๋ฆฌ ์ปดํŒŒ์ผ๋œ tensorflow-gpu-1.3.0์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ๊ณ  Cuda 8.0๊ณผ ํ•จ๊ป˜ cuDNN ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „ 7.0์„ ์ œ๊ณตํ–ˆ์œผ๋ฉฐ ์ ์–ด๋„ ์ €์—๊ฒŒ๋Š” ๋ชจ๋“  ๊ฒƒ์ด ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์˜ˆ์™ธ๋‚˜ ๋ฌธ์ œ๊ฐ€ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์ด๊ฒƒ์ด ์˜ˆ์ƒ๋˜๋Š” ์ผ์ž…๋‹ˆ๊นŒ? cuDNN 7.0์€ cuDNN 6.0๊ณผ ์ด์ „ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋ฉ๋‹ˆ๊นŒ? ์ด๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@apacha ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ํšจ๊ณผ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์— ์•ฝ๊ฐ„ ๋†€๋ž์Šต๋‹ˆ๋‹ค. TensorFlow ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์ด๋ฆ„์œผ๋กœ ์ฐพ๊ณ  *.so ํŒŒ์ผ์— ์ด๋ฆ„์— 6.0/7.0์ด ํฌํ•จ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— TensorFlow ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ cuDNN์„ ์ฐพ์„ ์ˆ˜ ์—†๋Š” ํ…Œ์ŠคํŠธ์—์„œ ์ด์ „์— ์˜ค๋ฅ˜๋ฅผ ๋ณธ ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์›๊ฒฉ์œผ๋กœ ๊ฐ€๋Šฅํ•˜๋ฉด cuDNN 6์ด ์—ฌ์ „ํžˆ ๊ฒฝ๋กœ์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹น์‹ ์˜ ์„ค์ •์— ๋Œ€ํ•ด ์ถ”์ธกํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜์ง€ ์•Š์ง€๋งŒ ๋‚ด๊ฐ€ ๋‚ด๊ธฐ๋ฅผ ํ•œ๋‹ค๋ฉด ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ์—ฌ์ „ํžˆ cuDNN 6์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ๋งํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํŠน์ • ๋ฒ„์ „์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์ปดํŒŒ์ผ๋˜๋Š” TensorFlow๋ฅผ ๋บ€ ํ•˜์œ„ ํ˜ธํ™˜๊ณผ ๊ด€๋ จํ•˜์—ฌ. ๋ชจ๋ฅด๊ฒ ์–ด์š”.

๋งˆ์ง€๋ง‰์œผ๋กœ, ๊ทธ๊ฒƒ์€ ํฐ ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. cuDNN 7 PR์€ ๊ฑฐ์˜ ์Šน์ธ/๋ณ‘ํ•ฉ๋˜์—ˆ์œผ๋ฉฐ ์‚ฌ์ „ ์ปดํŒŒ์ผ๋œ ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” 1.5์—์„œ cuDNN 7๋กœ ์ด๋™ํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค.

CUDA 9RC ๋ฐ cuDNN 7 ์ง„ํ–‰์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ

  • NVIDIA์˜ PR์ด ๊ฑฐ์˜ ์Šน์ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • EIGEN ๋ณ€๊ฒฝ์ด ์Šน์ธ ๋ฐ ๋ณ‘ํ•ฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • V100(Volta)์—์„œ FP16 ํ…Œ์ŠคํŠธ ๋ณธ๊ฒฉ ์‹œ์ž‘

์™„์ „์„ฑ ์„ ์œ„ํ•ด cudnn64_5.dll ์‚ญ์ œํ–ˆ๋Š”๋ฐ CUDA ์„ค์น˜ ๊ฒฝ๋กœ์— cudnn64_6.dll ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ Windows ๋งˆ์ˆ  ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. :-NS

ํ•œ ๊ฐ€์ง€ ์ฃผ์˜ํ•  ์ ์€: ์ €๋Š” ์—ฌ์ „ํžˆ 9.0์ด ์•„๋‹ˆ๋ผ CUDA 8.0์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@apacha ์ฐฝ์˜ ๋งˆ๋ฒ•์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์•„๋ฌด ์ƒ๊ฐ์ด ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋น„ํŒ์ ์ธ ์†Œ๋ฆฌ๋ฅผ ํ•˜๊ณ  ์‹ถ์ง€ ์•Š์•˜๋‹ค. cuDNN ํ˜ธ์ถœ์ด ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์•„์•ผ ํ•˜๋ฏ€๋กœ ์ด์ „ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์œผ๋ฏ€๋กœ Windows ๋งˆ์ˆ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. Linux ๋นŒ๋“œ์˜ ๊ฒฝ์šฐ TensorFlow๋Š” ํŠน์ • ํŒŒ์ผ์„ ์ฐพ๊ณ  ์žˆ์œผ๋ฉฐ(๋˜๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ์˜ ๋ชจ์Šต์ž…๋‹ˆ๋‹ค) cudnnblahblah.6.so๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๋ฉด ๋งค์šฐ ๋ถˆํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ ๋ฐ ์„ธ๋ถ€ ์ •๋ณด์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

์ฒดํฌ์•„์›ƒํ•˜๊ณ  ์‚ฌ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ถ„๊ธฐ/ํƒœ๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
์ƒˆ๋กœ์šด ์„ค์น˜๋ฅผ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. Ubuntu 17... ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ƒˆ๋กœ์šด gcc๊ฐ€ CUDA 9๋ฅผ ๋ถ€๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. CuDNN์ด 7์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค... ๋‚ด๊ฐ€ ์–ด๋””๋กœ ๊ฐ€๊ณ  ์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” ํ™•์‹คํžˆ ๋งŽ์€ ๊ณณ์—์„œ ๋‚ด ์„ค์ •์„ ํ•ดํ‚นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๊ทธ๋ฆฌ๊ณ  Ubuntu 16์œผ๋กœ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค). ๋‹จ์ง€ ๋„ˆ๋ฌด ๊ฐ€๊น๊ณ  ์ˆ˜์ • ์‚ฌํ•ญ์ด ๊ฐ€๊น๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค... ๋‚ด๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ณผ๊ฑฐ์— ํฐ ๋„์•ฝ์„ ํ•˜๋Š” ์ด์œ  ๋ฏธ๋ž˜์˜ ์ž‘์€ ๋„์•ฝ!

PR์ด ๊ฑฐ์˜ ์Šน์ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฒ€ํ†  ์ค‘์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋” ์˜์‹ฌ
๊ธฐ๊ปํ•ด์•ผ ๋ช‡ ์ฃผ์ด์ง€๋งŒ ์ด๋Ÿฌํ•œ ๊ฒ€ํ† ์—๋Š” ์‹œ๊ฐ„์ด ๊ฑธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ๋“ค์ด ๋ชจ๋‘๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค.
๊ทธ๋“ค์„. EIGEN ๋ณ€๊ฒฝ์„ ์œ„ํ•ด ๋‚™์˜ค์ž ๋˜๋Š” ๋ณ€๊ฒฝ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
CUDA 9. ๊ฐœ์ธ์ ์œผ๋กœ ์ค€๋น„ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๋งค์ผ ๋” ๊ฐ€๊นŒ์›Œ์ง‘๋‹ˆ๋‹ค.

https://github.com/tensorflow/tensorflow/pull/12504
https://github.com/tensorflow/tensorflow/pull/12503
https://github.com/tensorflow/tensorflow/pull/12502

2017๋…„ 9์›” 12์ผ ํ™”์š”์ผ ์˜คํ›„ 7์‹œ 49๋ถ„, Remi Morin [email protected]
์ผ๋‹ค:

์ฒดํฌ์•„์›ƒํ•˜๊ณ  ์‚ฌ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ถ„๊ธฐ/ํƒœ๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
์ƒˆ๋กœ์šด ์„ค์น˜์ธ Ubuntu 17์„ ์‹œ์ž‘ํ•œ ๋‹ค์Œ ์ƒˆ gcc๋Š” CUDA 9๋ฅผ ๋ถ€๊ณผํ•˜๊ณ ,
์— ๋งž๋Š” CuDNN์ด 7์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€ ์–ด๋””๋กœ ๊ฐ€๊ณ  ์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” ํ™•์‹คํžˆ ๋งŽ์€ ๊ณณ์—์„œ ๋‚ด ์„ค์ •์„ ํ•ดํ‚นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๊ทธ๋ฆฌ๊ณ  ์ฒ˜์Œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค)
์šฐ๋ถ„ํˆฌ 16์—์„œ ๋‹ค์‹œ) ๋‚˜๋Š” ๋„ˆ๋ฌด ๊ฐ€๊น๊ณ  ์ˆ˜์ • ์‚ฌํ•ญ์ด ๊ฐ€๊น๋‹ค๊ณ ํ•ฉ๋‹ˆ๋‹ค ... ์™œ
๋ฏธ๋ž˜์— ์ž‘์€ ๋„์•ฝ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ณผ๊ฑฐ์— ํฐ ๋„์•ฝ์„!

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-329041739 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesrpX6TSN6fVESEsql3QNtjgo-LM9ks5sh0KqgaJpZM4OuRL7
.

@tfboyd ์ด๊ฒƒ์ด ์—ฌ์ „ํžˆ ๋ฌธ์ œ์ž…๋‹ˆ๊นŒ? cuda 9.0์ด ์˜ค๋Š˜ ์ถœ์‹œ๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค.

cuda 9.0์ด ์ถœ์‹œ๋˜์—ˆ๋Š”๋ฐ cuda 8.0 ์„ค์น˜ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค....
ํ…์„œํ”Œ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•ด์ฃผ์„ธ์š”...

cuda 9.0์ด ์ถœ์‹œ๋˜์—ˆ๋Š”๋ฐ cuda 8.0 ์„ค์น˜ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค....

@zjjott https://developer.nvidia.com/cuda-toolkit-archive

@thomasjo ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

@tfboyd๊ฐ€ ์–ธ๊ธ‰ํ•œ PR์„ ์Šน์ธํ•˜๋ฉด tensorflow 1.3์ด ์ด์ œ CUDA 9 ๋ฐ cuDNN 7๊ณผ ํ˜ธํ™˜๋ฉ๋‹ˆ๊นŒ? ๋ˆ„๊ตฌ๋“ ์ง€ ์‹ค์ œ๋กœ ์ด๊ฒƒ์„ ์„ฑ๊ณต์ ์œผ๋กœ ์„ค์น˜ ํ–ˆ์Šต๋‹ˆ๊นŒ?

@voxmenthe ๋ฐฉ๊ธˆ CUDA 9.0 ๋ฐ cuDNN7๊ณผ ํ•จ๊ป˜ tf1.3์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์™€ ๊ด€๋ จ๋œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. #12489

ํŽธ์ง‘: ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฐฉ๋ฒ•์„ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋” ์ด์ƒ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜(์ฒ˜์Œ์—๋Š” ์„ค์น˜ํ•˜์ง€ ์•Š์•˜์Œ)๋กœ ์ด๋™ํ•˜์—ฌ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด์ œ tensorflow๋ฅผ ๊ฐ€์ ธ์˜ค๋ ค๊ณ  ํ•˜๋ฉด ํ”Œ๋žซํผ ๋ชจ๋“ˆ์ด ๋ˆ„๋ฝ๋˜์—ˆ๋‹ค๊ณ  ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

๊ด€๋ จ PR์ด ์–ผ๋งˆ๋‚˜ ๊ฐ€๊นŒ์ด์— ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ํ‘œ์‹œ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? cuDNN 7์„ ์„ค์น˜ํ•œ ๋‹ค์Œ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๊ณ  ์žˆ์Œ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. v6์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค...

PR์ด ์Šน์ธ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ฉฐ์น  ๋™์•ˆ ์ง์ ‘ ๋นŒ๋“œ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. 1.3์—๋Š” ์–ผ๋งˆ ์ „๊ณผ ๊ฐ™์ด ์ด๋Ÿฌํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์—†์Šต๋‹ˆ๋‹ค. 1.4์—๋Š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์ฃผ์— ์ตœ์‹  ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์ƒˆ๋กœ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‚ด๊ฐ€ ์‹œ๊ฐ„์ด ์žˆ๊ธฐ ์ „์— ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ทธ๊ฒƒ์„ ์ž˜ ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋˜‘๋˜‘ํ•œ ์‚ฌ๋žŒ๋“ค์ด Win 10 x64์šฉ CUDA v9.0, cudnn 7.0์„ ์‚ฌ์šฉํ•˜์—ฌ tf 1.3 ๋˜๋Š” 1.4์— ๋Œ€ํ•œ ์ž์Šต์„œ๋ฅผ ๋งŒ๋“ค ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ? (Anaconda) ์„ค์น˜๋ฅผ ์‹œ๋„ํ–ˆ์ง€๋งŒ '_pywrap_tensorflow_internal' ์˜ค๋ฅ˜๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•˜๊ณ  ์ด๋ฏธ msvcp140.dll์ด ๋‚ด ๊ฒฝ๋กœ์— ์ถ”๊ฐ€๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

@devilsnare007 : https://github.com/philferriere/dlwin์„ ํŒ”๋กœ์šฐ ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์€ ๊ธฐํšŒ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค . ๋‚˜์—ด๋œ ๋ฒ„์ „์„ ํ˜„์žฌ ๋ฒ„์ „์œผ๋กœ ๋ฐ”๊พธ๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. TF 1.4๋Š” ์•„์ง ์ถœ์‹œ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ TF 1.3์€ ์ œ๊ณต๋œ ์ง€์นจ์— ๋”ฐ๋ผ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด ์—…๊ทธ๋ ˆ์ด๋“œ๋˜๊ณ  TF 1.4๊ฐ€ ๋ฆด๋ฆฌ์Šค๋˜๋ฉด ํ•ด๋‹น ์ž์Šต์„œ๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

TF 1.4๊ฐ€ ์ถœ์‹œ๋˜๋ฉด cuDNN 7.0์ด ์ง€์›๋˜๋‚˜์š”?

@์†”๋กœ์ด์Šค
๋จธ๋ฆฌ์—์„œ (๋ฉฐ์น  ์ „ ํ˜„์žฌ) ๋‚˜๋Š” ํŠน๋ณ„ํ•œ ๋ณ€๊ฒฝ ์—†์ด cuDNN 7.0์œผ๋กœ CUDA 9(๋ฆด๋ฆฌ์Šค ๋ฒ„์ „)๋ฅผ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์žˆ์—ˆ๊ณ  GTX 1080์—์„œ ๋ช‡ ๊ฐ€์ง€ tf_cnn_benchmarks.py ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด ๊ดœ์ฐฎ์•„ ๋ณด์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ์ฃผ์— RC์— ํฌํ•จ๋˜์–ด์•ผ ํ•˜๋Š” TF 1.4์—๋Š” CUDA 8 ๋ฐ cuDNN 6 ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์žˆ์ง€๋งŒ CUDA 9 ๋ฐ cuDNN 7์—์„œ๋„ ์ž˜ ์ปดํŒŒ์ผ๋ฉ๋‹ˆ๋‹ค. ๋ชฉํ‘œ๋Š” TF 1.5๊ฐ€ ๋ฐ”์ด๋„ˆ๋ฆฌ์— CUDA 9 ๋ฐ cuDNN 7์„ ํฌํ•จํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์‚ฌ๋žŒ๋“ค์€ ์‹œ์Šคํ…œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ณ  ํ…Œ์ŠคํŠธ์— ๋” ๋งŽ์€ ์‹œ๊ฐ„์„ ํ• ์• ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Voltas๋ฅผ ์‹คํ–‰ ์ค‘์ด๋ผ๋ฉด ์ž์œ ๋กญ๊ฒŒ ๋‹ค๋ฅธ ์Šค๋ ˆ๋“œ๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์—…๋ฐ์ดํŠธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์‹ค์‹œ๊ฐ„์œผ๋กœ FP16์—์„œ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

@tfboyd TF 1.4๊ฐ€ cuDNN 7๋กœ ์ปดํŒŒ์ผ๋œ๋‹ค๋Š” ์†Œ์‹์„ ๋“ฃ๊ฒŒ ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค! ์–ด๋Š ์‹œ์ ์—์„œ ์„ค์น˜ ๊ฐ€์ด๋“œ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•œ๋‹ค๊ณ  ๋Š๋‚€๋‹ค๋ฉด DL ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•œ ํ›Œ๋ฅญํ•œ ๊ณต๊ณต ์„œ๋น„์Šค๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฌธ์ œ ์—†์Šต๋‹ˆ๋‹ค. ์ถฉ๋ถ„ํžˆ ์‰ฌ์›Œ์•ผ ํ•˜๋ฉฐ ๊ธฐ๊บผ์ด ์ฑ„์šฐ๊ฒ ์Šต๋‹ˆ๋‹ค.
๊ฐญ.

2017๋…„ 10์›” 9์ผ ์›”์š”์ผ ์˜ค์ „ 9์‹œ 42๋ถ„์— Jeff [email protected]์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

@tfboyd https://github.com/tfboyd TF 1.4๊ฐ€ ์ปดํŒŒ์ผ๋œ๋‹ค๋Š” ์†Œ์‹์„ ๋“ฃ๊ฒŒ ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค.
cuDNN 7๊ณผ ํ•จ๊ป˜! ์–ด๋Š ์‹œ์ ์—์„œ ์„ค์น˜ ๊ฐ€์ด๋“œ๋ฅผ ๋งŒ๋“ค ์ƒ๊ฐ์ด๋ผ๋ฉด
DL ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•œ ํ›Œ๋ฅญํ•œ ๊ณต๊ณต ์„œ๋น„์Šค๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-335212652 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesp7d2aT8gsGOWb6YjHH_CnpKXUIPks5sqkztgaJpZM4OuRL7
.

CUDA 9 ๋ฐ cuDNN 7.0์—์„œ ์ž‘๋™ํ•˜๋Š” whl์„ ๊ฐ€์งˆ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๊ฐ์‚ฌ ํ•ด์š”!

๋‚ด ๊ฒƒ์„ ๊ฒŒ์‹œํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค(1.4๊ฐ€ ์•„๋‹ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์ง€๋งŒ ์ผ๋ถ€๋Š” ๊ฑฐ์˜ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค.
ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ๋นŒ๋“œํ•  ๋•Œ ์ด๋ฆ„์— ํ•ด์‹œ๋ฅผ ํฌํ•จํ•˜์ง€๋งŒ
์šฐ๋ถ„ํˆฌ 16.04(gcc ๋ฒ„์ „์ด ๋ฌด์—‡์ธ์ง€ ์žŠ์–ด๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค), linux, python 2.7์€ ์ฐธ๊ณ ์šฉ์ž…๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๊ทธ ๋นŒ๋“œ๋ฅผ ๊ณต์œ ํ•  ์ƒ๊ฐ์€ ์—†์Šต๋‹ˆ๋‹ค.
์‚ฌ๋žŒ๋“ค์„ ํ˜ผ๋ž€์Šค๋Ÿฝ๊ฒŒ ํ•˜๊ณ  ๋‚˜๋Š” ๋‹น์‹ ์ด ์•Œ๊ณ  ์žˆ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•ด ๊ฐ•์กฐํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋ฏธ์นœ ๋’ท๋ฌธ. ์ผ๋ถ€ ๋น„๋ฐ€ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ๋„ˆ๋ฌด ๋งŽ์€ ์ž‘์—…์ฒ˜๋Ÿผ ๋Š๊ปด์ง€์ง€๋งŒ
๋‚˜์—๊ฒŒ.

๋‚˜๋Š” nightly-gpu ๋นŒ๋“œ๊ฐ€ ๊ฑฐ์˜ pip์— ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
ํ•ญ์ƒ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค ๋‹น์‹ ์€ ๋‹จ์ง€ ๊ทธ๋“ค์„ ์ฐพ์•„์•ผํ–ˆ์Šต๋‹ˆ๋‹ค) 1.4 ์ดํ›„๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค
์•ผ๊ฐ„ ๋นŒ๋“œ๋Š” CUDA 9 + cuDNN 7๋กœ ๋งค์šฐ ๋น ๋ฅด๊ฒŒ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

2017๋…„ 10์›” 9์ผ ์›”์š”์ผ ์˜ค์ „ 11์‹œ 41๋ถ„์— alexirae [email protected]์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

CUDA 9 ๋ฐ cuDNN 7.0์—์„œ ์ž‘๋™ํ•˜๋Š” whl์„ ๊ฐ€์งˆ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๊ฐ์‚ฌ ํ•ด์š”!

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-335249979 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZeskJ5LXJwFcRpm-sKZ9QORoltrHOEks5sqmj1gaJpZM4OuRL7
.

@tfboyd ๋‹ต๋ณ€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ Ubuntu 16.04์—์„œ CUDA 8 + cuDNN 7์„ ์ง€์›ํ•˜๋Š” ์†Œ์Šค์—์„œ ์ตœ์‹  TF๋ฅผ ๋นŒ๋“œํ–ˆ์œผ๋ฉฐ ๋ชจ๋“  ๊ฒƒ์ด GTX 1080 Ti์—์„œ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

@tfboyd 14.rc TF๋Š” CuDNN 7 ๋ฐ CUDA 9๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๊นŒ?

์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๋Š” ๊ฒฝ์šฐ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค
AWS์˜ K80์—์„œ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ
๋ชจ๋“  ๊ฒƒ์ด ์ž˜ ๋ณด์ด๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ๋นŒ๋“œ๋ฅผ ์ƒ์„ฑํ•˜์‹ญ์‹œ์˜ค. ์šฐ๋ฆฌ
NVIDIA ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ํ•„์š”๋กœ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฆ‰์‹œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.
Google Cloud์—์„œ ์‹คํ–‰๋˜๋Š” Kokoro์—์„œ 30% ๋ชจ๋“  ์ŠคํŠธ๋ ˆ์ดํŠธ๋Š” ์—†์Šต๋‹ˆ๋‹ค
ํ•˜์ง€๋งŒ CUDA 9 ๋ฐ cuDNN 7์€ 1.4 ์†Œ์Šค์— ์žˆ์œผ๋ฉฐ ์˜ˆ์ƒ๋Œ€๋กœ
๋‚˜๋ฅผ ์œ„ํ•ด Pascal์— ๋Œ€ํ•œ ๋งค์šฐ ์ œํ•œ๋œ ํ…Œ์ŠคํŠธ.

2017๋…„ 10์›” 12์ผ ๋ชฉ์š”์ผ ์˜ค์ „ 2์‹œ 40๋ถ„, Konstantin [email protected]
์ผ๋‹ค:

@tfboyd https://github.com/tfboyd 14.rc TF๋Š” CuDNN 7์„ ์ง€์›ํ•˜๋ฉฐ
์ฟ ๋‹ค 9?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-336075883 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesq03dvnXWd0GLXODBTNCWExlZGPnks5srd6pgaJpZM4OuRL7
.

CUDA 9, cuDNN 7.0 ๋ฐ python 3.5์—์„œ ์ž‘๋™ํ•˜๋Š” whl์„ ๊ฐ€์งˆ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

TF 1.4๊ฐ€ ์™„๋ฃŒ๋œ ํ›„ ์•ผ๊ฐ„ ๋นŒ๋“œ๋Š” CUDA 9 +
cuDNN 7์€ ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋งŒ๋“ค๊ณ  ์žฌ๋ฏธ๋กœ ๊ณต์œ ํ•˜๋Š” ๋นŒ๋“œ๋Š”
๋‚ด ํ…Œ์ŠคํŠธ ์‹œ์Šคํ…œ์˜ ๊ธฐ๋ณธ๊ฐ’์ด๊ธฐ ๋•Œ๋ฌธ์— ํ•ญ์ƒ python 2.7์ž…๋‹ˆ๋‹ค.

2017๋…„ 10์›” 16์ผ ์›”์š”์ผ ์˜ค์ „ 6์‹œ 59๋ถ„, Diego Stalder [email protected]
์ผ๋‹ค:

CUDA 9, cuDNN 7.0 ๋ฐ
ํŒŒ์ด์ฌ 3.5?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-336894073 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesqgclWqET4OufQHV3FAD4XxgnZiKks5ss2E6gaJpZM4OuRL7
.

์ถœ์‹œ ์˜ˆ์ •์ผ์€ ์—†๋‚˜์š”?

๋น„ํŠธ๋ฅผ ์”น๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ๋“ค์€ ์†Œ์Šค์—์„œ #master๋ฅผ ๋นŒ๋“œํ•˜์‹ญ์‹œ์˜ค. ๋„ˆ๋ฌด ์–ด๋ ต์ง€ ์•Š์Šต๋‹ˆ๋‹ค(์‹œ๊ฐ„๋งŒ ์†Œ์š”๋จ). pip/whl ์„ค์น˜๋ฅผ ํ†ตํ•ด ์ตœ์‹  CUDA/cuDNN, _๋ฐ_ ์ถ”๊ฐ€ ์ตœ์ ํ™”๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ์ด tut ์˜ CPU ์ตœ์ ํ™” ์ฐธ์กฐ). ๋˜ํ•œ ๋‹ค์Œ์— CUDA/cuDNN์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ๋•Œ ๊ธฐ๋‹ค๋ฆด ํ•„์š” ์—†์ด ๋‹ค์‹œ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์†Œ์Šค์—์„œ ๋นŒ๋“œ, TF1.4๋Š” cuda 9.0, cuDNN v7.0.3 ๋ฐ python3.5์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

win10 ํ”Œ๋žซํผ์˜ ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?
TF๊ฐ€ cuda 9.0, cuDNN v7, python3์—์„œ ์ž‘๋™ํ•˜๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค. 6 ๋ฐ win10

์†Œ์Šค์—์„œ ๋นŒ๋“œํ•œ TF1.4๋Š” cuda 9.0, cuDNN v7.0.3 ๋ฐ python2.7์—์„œ๋„ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

@affromero ์šฐ์—ฐํžˆ jsoncpp์— ๋ฌธ์ œ๊ฐ€

CUDA 9 / cuDNN 7์„ ์‚ฌ์šฉํ•˜์—ฌ TF 1.4RC0 ๋ถ„๊ธฐ์—์„œ AWS ๊ตฌ์ถ•์— ๋Œ€ํ•œ tf_cnn_benchmarks ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์œผ๋ฉฐ ๊ฒฐ๊ณผ๋Š” CUDA 8 + cuDNN 6๊ณผ ๊ฐ™๊ฑฐ๋‚˜ ์•ฝ๊ฐ„ ๋น ๋ฆ…๋‹ˆ๋‹ค.

ํŽธ์ง‘: elipeters ์˜๊ฒฌ์„ ๋‹ค๋ฃจ์ง€ ์•Š์€ ์–ธ๊ธ‰ ์ œ๊ฑฐ. :-)

@์—˜๋ฆฌํŽ˜ํ„ฐ์Šค

๋นŒ๋“œ๋ผ๊ณ  ํ•  ๋•Œ ํœ  ํŒŒ์ผ์„ ์„ค์น˜ํ•˜์ง€ ์•Š๊ณ  ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ํœ ์€ ์ด๋ฏธ ์ปดํŒŒ์ผ๋˜์—ˆ์œผ๋ฉฐ 1.4 ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” CUDA 8 + cuDNN 6์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. CUDA 9๋ฅผ ์–ป์œผ๋ ค๋ฉด ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ์œˆ๋„์šฐ ๋นŒ๋“œ๋ฅผ ํ•ด๋ณธ์ ์ด ์—†์Šต๋‹ˆ๋‹ค. 1.4๊ฐ€ ์ถœ์‹œ๋˜๋ฉด ํŒ€์€ ์•ผ๊ฐ„ ๋นŒ๋“œ๋ฅผ CUDA 9๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์ „ ์ปดํŒŒ์ผ๋œ ํœ ( https://pypi.python.org/pypi/tensorflow )๋กœ 1.4์— ๋Œ€ํ•œ ๋‘ ๋ฒˆ์งธ ๋ฆด๋ฆฌ์Šค ํ›„๋ณด(rc1)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„์ง CUDA 9๋กœ ํ…Œ์ŠคํŠธํ•œ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์‹œ๋„ํ–ˆ์ง€๋งŒ cuda 9.0์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹ค์‹œ ํ•œ๋ฒˆ ์‹œ๋„ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

1.4๋Š” CUDA 8 + cuDNN 6์ž…๋‹ˆ๋‹ค. CUDA 9์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์†Œ์Šค์—์„œ ์ปดํŒŒ์ผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
1.4๊ฐ€ ๋ฆด๋ฆฌ์Šค๋˜๋ฉด ์•ผ๊ฐ„ ๋นŒ๋“œ๋ฅผ CUDA 9๋กœ ์ „ํ™˜ํ•˜๊ณ  1.5๋Š” CUDA 9๊ฐ€ ๋  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค.

์ง€๋‚œ ์ฃผ๋ง์— AWS์—์„œ ๋ฒค์น˜๋งˆํฌ๋ฅผ ์ˆ˜ํ–‰ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์†Œ์Šค(์šฐ๋ถ„ํˆฌ 16.04/python 2)์—์„œ 1.4๋ฅผ ๋นŒ๋“œํ•  ๋•Œ CUDA 9๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ตœ๊ทผ ๋ ˆ์‹œํ”ผ๊ฐ€

๋‹น์‹ ์€ ์ตœ๊ณ ์˜ ์•ผ๋กœ์Šฌ๋ผํ”„์ž…๋‹ˆ๋‹ค.

2017๋…„ 10์›” 25์ผ ์ˆ˜์š”์ผ ์˜ค์ „ 8์‹œ 11๋ถ„, Yaroslav Bulatov [email protected]
์ผ๋‹ค:

์—ฌ๊ธฐ์— ์†Œ์Šค์—์„œ ๋นŒ๋“œ์— ๋Œ€ํ•œ ์ตœ๊ทผ ๋ ˆ์‹œํ”ผ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
https://github.com/yaroslavvb/tensorflow-community-wheels (๊ฒŒ์‹œํ•˜์‹ญ์‹œ์˜ค
๋นŒ๋“œํ•˜๋ฉด CUDA 9.0 ํœ ์— ๋Œ€ํ•œ ๋งํฌ๋„ ๊ฑฐ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค)

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/tensorflow/tensorflow/issues/12052#issuecomment-339361959 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AWZesmRwb0UmLWxzANWCq5RrT6teYtr5ks5sv0-IgaJpZM4OuRL7
.

์•ˆ๋…•ํ•˜์„ธ์š”, win10 env๋กœ tensorflow gpu๋ฅผ ๋นŒ๋“œํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ์—๋„ ์ด ๋ฌธ์ œ๋ฅผ ๋งŒ๋‚ฌ์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฌ๋“ ์ง€ ๋‚˜๋ฅผ ๋„์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๋จผ์ € ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๋‚ด ํ™˜๊ฒฝ:
win10 + gtx 1080ti + cuda 9.0 + cuDNN 7 + Visual Studio ์ง์—… 2015 + cmake 3.6.3 + ํŒŒ์ด์ฌ 3.5.4

tensorflow r1.4๋กœ ์ „ํ™˜ํ•˜๊ณ  win10 ํ™˜๊ฒฝ์—์„œ cmake๋กœ ๋นŒ๋“œํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

`CUSTOMBUILD : ๋‚ด๋ถ€ ์˜ค๋ฅ˜: ์–ด์„ค์…˜ ์‹คํŒจ: "C:/dvs/p4/build/sw/rel/gpu_drv/r384/r384_00/drivers/compiler/edg/EDG_4.12/src/lookup.c", ์ค„ 2652 [ C:\TF\tensorflow\tensorflow\contrib\cmake\build\tf_core_gpu_kernels.vcxproj]

1 "C:/Users/ADMINI~1/AppData/Local/Temp/tmpxft_00000c94_00000000-8_adjust_contrast_op_gpu.cu.cpp4.ii" ์ปดํŒŒ์ผ์—์„œ ์น˜๋ช…์ ์ธ ์˜ค๋ฅ˜๊ฐ€ ๊ฐ์ง€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ปดํŒŒ์ผ์ด ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

adjust_contrast_op_gpu.cu.cc

CUSTOMBUILD: nvcc ์˜ค๋ฅ˜: 'cudafe++'๊ฐ€ ์ƒํƒœ 0xC0000409๋กœ ์‚ฌ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. [C:\TF\tensorflow\tensorflow\contrib\cmake\build\tf_core_gpu_kernels.vcxproj]

tf_core_gpu_kernels_generated_adjust_contrast_op_gpu.cu.cc.obj.Release์—์„œ CMake ์˜ค๋ฅ˜. cmake:267 (๋ฉ”์‹œ์ง€):
ํŒŒ์ผ ์ƒ์„ฑ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ
C:/TF/tensorflow/tensorflow/contrib/cmake/build/CMakeFiles/tf_core_gpu_kernels.dir/__/__/core/kernels/Release/tf_core_gpu_kernels_generated_adjust_contrast_op_gpu.cu.cc.obj`
image

์œ„์˜ ๋ฌธ์ œ๋Š” cuda compolie ์ž์ฒด ๋ฌธ์ œ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ tensorflow ๋ฒ„์ „์„ r1.3์œผ๋กœ ์ „ํ™˜ํ•˜๋ฉด ๋˜ ๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

`c:\tftest\tensorflow\tensorflow\contrib\cmake\build\external\eigen_archive\eigen\src/Core/util/Macros.h(416): ์น˜๋ช…์ ์ธ ์˜ค๋ฅ˜ C1017:
[C:\TFtest\tensorflow\tensorflow\contrib\cmake\build\tf_core_gpu_kernels.vcxproj]

tf_core_gpu_kernels_generated_adjust_contrast_op_gpu.cu.cc.obj.Release์—์„œ CMake ์˜ค๋ฅ˜. cmake:267 (๋ฉ”์‹œ์ง€):
ํŒŒ์ผ ์ƒ์„ฑ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ
C:/TF/test/tensorflow/tensorflow/contrib/cmake/build/CMakeFiles/tf_core_gpu_kernels.dir/__/__/core/kernels/Release/tf_core_gpu_kernels_generated_adjust_contrast_op_gpu.cu.cc.obj`
image

adjust_contrast_op_gpu.cu.cc ํŒŒ์ผ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์ง€๋งŒ ์˜ค๋ฅ˜๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์œ„์˜ ๋ฌธ์ œ๋กœ ์ธํ•ด ๋ฉฐ์น  ๋™์•ˆ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ด ์‹œ๋„์™€ ์„ฑ๊ณต์„ ์ง„ํ–‰ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜์—ˆ์œผ๋ฉด ํ•ฉ๋‹ˆ๋‹ค. Google ์—…๊ทธ๋ ˆ์ด๋“œ tensorflow๊ฐ€ win10 ํ™˜๊ฒฝ์—์„œ cuda 9.0 ๋ฐ cudnn 7์„ ์ง€์›ํ•˜๊ธฐ๋ฅผ ๊ฐ•๋ ฅํžˆ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค.

CUDA 9 ๋ฐ cuDNN 7.0์ด ํฌํ•จ๋œ TensorFlow์šฉ wl์„ ์ถœ์‹œํ•œ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@vellamike ๊ท€ํ•˜์˜ ์งˆ๋ฌธ์ด ์ผ๋ฐ˜์  ์ถœ์‹œ ๋  1.5์™€ ํ•จ๊ป˜ ๋ฐ”์ด๋„ˆ๋ฆฌ์— CUDA 9๋ฅผ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Mac 10.13 high sierra์—์„œ CUDA 9 ๋ฐ cuDNN 7๋กœ 1.4๋ฅผ ๋นŒ๋“œํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ค๋ฅ˜๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

ERROR: /Users/smitshilu/tensorflow/tensorflow/core/kernels/BUILD:2948:1: output 'tensorflow/core/kernels/_objs/depthwise_conv_op_gpu/tensorflow/core/kernels/depthwise_conv_op_gpu.cu.pic.o' was not created.
ERROR: /Users/smitshilu/tensorflow/tensorflow/core/kernels/BUILD:2948:1: not all outputs were created or valid.
Target //tensorflow/tools/pip_package:build_pip_package failed to build

์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์ด ์žˆ์Šต๋‹ˆ๊นŒ?

1.4๊ฐ€ ์—ฌ์ „ํžˆ ๋ฐ”์ด๋„ˆ๋ฆฌ์— CUDA 9๊ฐ€ ์—†๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์ด ๋ฒ„์ „์€ ์˜ค๋ž˜ ์ „์— ์ข…๋ฃŒ๋˜์—ˆ์œผ๋ฉฐ ๋ณด๊ณ ๋œ ์—ฌ๋Ÿฌ ๋ฌธ์ œ์— ๋”ฐ๋ผ ๋งค๋„๋Ÿฝ๊ณ  ๋น ๋ฅด์ง€ ์•Š์€ ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๋Š” V100์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

@ViktorM ์†Œ์Šค์—์„œ ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ์ปดํŒŒ์ผ ํ–ˆ์Šต๋‹ˆ๊นŒ? ์กฐ๊ธˆ ๊นŒ๋‹ค๋กญ๊ธด ํ–ˆ์ง€๋งŒ ๊ทธ๋ ‡๊ฒŒ ์–ด๋ ต์ง€๋Š” ์•Š์•˜์Šต๋‹ˆ๋‹ค.

2017๋…„ 9์›” 26์ผ์€ CUDA 9์˜ GA์˜€์Šต๋‹ˆ๋‹ค. 4๋ถ„๊ธฐ์— CUDA 9 + cuDNN 7 ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์ถœ์‹œํ•˜๋ฉด ์ด๊ฒƒ์ด cuDNN์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ์†๋„๊ฐ€ ๊ฐ€์žฅ ๋น ๋ฅผ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” 8.5์—์„œ 9๊นŒ์ง€ ์—ฌ๊ธฐ์— ์—†์—ˆ์œผ๋ฏ€๋กœ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์กฐ๊ธˆ ๋” ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰ํ•˜๊ณ  ์‹ถ์ง€๋งŒ ์ด๊ฒƒ์€ CUDA 8 ์„ค์ •์„ ๊ฐ€์ง„ ์‚ฌ๋žŒ์ด CUDA 9๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ด์•ผ ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋„ 384.x๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€๋ณ๊ฒŒ.

์ด์ƒ์ ์œผ๋กœ๋Š” ๋ฌดํ•œ(๋˜๋Š” ๋ช‡ ๊ฐœ๋งŒ ๋” ์žˆ์œผ๋ฉด ๋งคํŠธ๋ฆญ์Šค๊ฐ€ ๋น ๋ฅด๊ฒŒ ํญ๋ฐœํ•จ) ๋นŒ๋“œ๊ฐ€ ์žˆ์ง€๋งŒ ์„ค๋ช…ํ•˜๋Š” ๋ฐ ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ณ  ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๊ด€์‹ฌ์„ ๊ฐ–๋Š” ๋˜ ๋‹ค๋ฅธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

BTW, Nvidia์˜ NGC TensorFlow ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ float16 matmul/V100์—์„œ CUDA 9๋กœ ์ดˆ๋‹น 85T ops/s๋ฅผ ๊ด€์ฐฐ ํ–ˆ์Šต๋‹ˆ๋‹ค(์ง‘์— ์žˆ๋Š” GTX 1080์—์„œ 8.8T ops/s์™€ ๋ฐ˜๋Œ€). ๊ณต์‹์ ์œผ๋กœ ์ง€์›๋˜๋Š” ๋ฒ„์ „์—์„œ ์ด๋Ÿฌํ•œ ๊ฐœ์„  ์‚ฌํ•ญ์„ ๊ธฐ๋Œ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค!

@yaroslavvb ์†”์งํžˆ ๋งํ•ด์„œ ์šฐ๋ฆฌ๋Š” ๋ช‡ ๊ฐ€์ง€ FP16 ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. tf_cnn_benchmarks์— FP16์— ๋Œ€ํ•œ ๊ฒฝ๋กœ๊ฐ€ ์žˆ์œผ๋ฉฐ ResNet50์— ๋จผ์ € ์ดˆ์ ์„ ๋งž์ถ”๊ณ  FP16์— ๋Œ€ํ•œ Auto scaling๋„ ์ž‘์—… ์ค‘์ž…๋‹ˆ๋‹ค. ๊ด€์‹ฌ์ด ์žˆ์œผ์‹œ๋ฉด ์‹œ๋„ํ•ด ๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ ๊ทน์ ์œผ๋กœ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ๊ทธ ์ผ์„ ํ•˜๊ณ  ์žˆ๊ณ  ์‹œ๊ฐ„์ด ๊ฑธ๋ฆด ๋ฟ์ž…๋‹ˆ๋‹ค. ๋งˆ์นจ๋‚ด DGX-1์ด ์‚ฌ๋‚ด์— ์žˆ์œผ๋ฏ€๋กœ ๋™์ผํ•œ ์ปจํ…Œ์ด๋„ˆ๋กœ ํ”Œ๋ ˆ์ดํ•˜๊ณ  ์ •ํ™•ํ•œ ํ”Œ๋žซํผ์—์„œ ์•ž์œผ๋กœ์˜ ์„ฑ๋Šฅ์„ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ข‹์•„, ์šฐ๋ถ„ํˆฌ 17.10์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๊ณ  ์žฌ๋ฏธ๋ฅผ ์œ„ํ•ด ๋ชจ๋“  ์ตœ์‹  ํ•ญ๋ชฉ์„ ์‹œ๋„ํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.
๋‚ด๊ฐ€ ํ•˜๊ธฐ ์ „์— ๋‚˜๋Š” ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์†Œ์Šค์—์„œ ์•„๋ž˜ ์Šคํƒ ๋นŒ๋“œ๋ฅผ ์‹œ๋„ํ•˜๊ณ  ํ–‰์šด์„ ์–ป์—ˆ๋Š”์ง€ ์•Œ๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

-> ์šฐ๋ถ„ํˆฌ 17.10, CUDA 9.0, cuDNN 7.0, TF ๋งˆ์Šคํ„ฐ
-> ์šฐ๋ถ„ํˆฌ 17.10, CUDA 8.0, cnDNN 6.1, TF 1.4

ํŠนํžˆ Python 3.6.3, VS 2017, CUDA 9, cuDNN 7์„ ์‚ฌ์šฉํ•˜์—ฌ @xsr-ai์™€ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

@aluo-x Windows 10์—์„œ ์‹œ๋„ํ–ˆ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๊นŒ? VS 2017์„ ๋งํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

๋„ค, ๋งž์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ํŠน์ • ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค.

CustomBuild:
  Building NVCC (Device) object CMakeFiles/tf_core_gpu_kernels.dir/__/__/core/kernels/Release/tf_core_gpu_kernels_generated_adjust_contrast_op_gpu.cu.cc.obj
  CMake Error at tf_core_gpu_kernels_generated_adjust_contrast_op_gpu.cu.cc.obj.Release.cmake:222 (message):
    Error generating
    C:/optimae/tensorflow-1.4.0/tensorflow/contrib/cmake/build/CMakeFiles/tf_core_gpu_kernels.dir/__/__/core/kernels/Release/tf_core_gpu_kernels_generated_adjust_contrast_op_gpu.cu.cc.obj


C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(171,5): error MSB6006: "cmd.exe" exited with code 1. [C:\optimae\tensorflow-1.4.0\
tensorflow\contrib\cmake\build\tf_core_gpu_kernels.vcxproj]

@aluo-x ์ตœ์‹  c-make๋ฅผ ์‚ฌ์šฉํ•˜์…จ๋‚˜์š”? ์ฆ‰ ๋ฆด๋ฆฌ์Šค ํ›„๋ณด ๋˜๋Š” ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค?

cmake 3.9.5, swig 3.0.12, CUDA 9.0.176, cuDNN 7.0.3 ์‚ฌ์šฉ. VS 2017 19.11.25547.

@aluo-x ๋‚˜๋„ c-make์— ์šด์ด ๋ณ„๋กœ ์—†์—ˆ๋‹ค. ํ•˜์ง€๋งŒ Bazel๋กœ ๋นŒ๋“œ๋ฅผ ์‹œ๋„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@smitshilu ์ œ๊ฐ€ https://github.com/pytorch/pytorch/issues/2692

๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ํŒŒ์ผ์—์„œ ๋ชจ๋“  __align__(sizeof(T))_์„ ์ œ๊ฑฐํ•˜๋Š” ๋™์ผํ•œ ์†”๋ฃจ์…˜์„ ์ ์šฉํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.
_tensorflow/core/kernels/concat_lib_gpu_impl.cu.cc_
_tensorflow/core/kernels/depthwise_conv_op_gpu.cu.cc_
_tensorflow/core/kernels/split_lib_gpu.cu.cc_

์ด๊ฒƒ์ด ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ ์ง€๊ธˆ๊นŒ์ง€๋Š” ์ž˜ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚ด๊ฐ€ ์ดํ•ดํ•œ ๋ฐ”์— ๋”ฐ๋ฅด๋ฉด ๋Ÿฐํƒ€์ž„์€ ํ•ญ์ƒ ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ์— ๋Œ€ํ•ด 16์˜ ๊ณ ์ • ์ •๋ ฌ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ด€์‹ฌ ์žˆ๋Š” ๋ถ„๋“ค์„ ์œ„ํ•ด CUDA 9 ํœ ์„ ์—…๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž์‹ ์„ ๊ตฌ์ถ• ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค! https://github.com/mind/wheels/releases/tag/tf1.4-gpu-cuda9

Ubuntu 17.10, CUDA 9, CuDNN 7, Python 3.6, bazel 0.7.0 + ์†Œ์Šค(๋งˆ์Šคํ„ฐ)์˜ TF.

์ด ๋‹ต๋ณ€์˜ ์ง€์นจ์— ๋”ฐ๋ผ CUDA๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.
https://askubuntu.com/questions/967332/how-can-i-install-cuda-9-on-ubuntu-17-10

64๋น„ํŠธ ๋ฒ„์ „ ๋Œ€์‹  ๋‹ค์Œ ๋ช…๋ น์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

sudo ln -s /usr/bin/gcc-6 /usr/local/cuda-9.0/bin/gcc 
sudo ln -s /usr/bin/g++-6 /usr/local/cuda-9.0/bin/g++ 
sudo ./cuda_9.0.176_384.81_linux-run --override

Tensorflow๋ฅผ ์„ค์น˜ํ•˜๋ ค๋ฉด ๋‹ค์Œ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

  1. TF๋ฅผ ์ปดํŒŒ์ผํ•˜๊ธฐ ์ „์— ๊ฒฝ๋กœ ๋ณ€์ˆ˜๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ตฌ์„ฑํ•˜์‹ญ์‹œ์˜ค(NVIDIA ํŽ˜์ด์ง€์˜ ๊ฒฝ๋กœ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Œ):
export PATH=/usr/local/cuda-9.0/bin:${PATH}
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/cuda-9.0/lib64
  1. ์ปดํŒŒ์ผํ•˜๊ธฐ ์ „์—: CUDA ์„ค์น˜ ์ค‘๊ณผ ๋™์ผํ•œ gcc ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋„๋ก bazel์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.
sudo update-alternatives --remove-all g++
sudo update-alternatives --remove-all gcc
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-6 10
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 10
  1. TF ์ง€์นจ์„ ๋”ฐ๋ฅด๋Š” ๋™์•ˆ bazel ๋นŒ๋“œ ๋‹จ๊ณ„ ๋…ธํŠธ์— ๋„๋‹ฌํ•˜๋ฉด 4.*๋ณด๋‹ค ๋†’์€ gcc ๋ฒ„์ „์œผ๋กœ ์ปดํŒŒ์ผํ•˜๋ ค๋ฉด ์ถ”๊ฐ€ ํ”Œ๋ž˜๊ทธ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
    bazel build --config=opt --config=cuda --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0" //tensorflow/tools/pip_package:build_pip_package

@alexbrad CUDA 9, cuDNN 7์„ ์‚ฌ์šฉํ•˜๋Š” Mac GPU์šฉ์œผ๋กœ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์†”๋ฃจ์…˜์€ ์ €์—๊ฒŒ๋„ ํšจ๊ณผ๊ฐ€ ์žˆ์—ˆ๊ณ  ์ง€๊ธˆ๊นŒ์ง€ TF๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
์†Œ์Šค ๋ณ€๊ฒฝ ๋ฐ ํœ : https://github.com/nathanielatom/tensorflow/releases/tag/v1.4.0-mac

Ubuntu 16.04, TensorFlow 1.4(CUDA 9.0 ๋ฐ cuDNN 7.0.3 ํฌํ•จ)๊ฐ€ ์ด๋ฏธ ์„ค์น˜ ๋ฐ ํ…Œ์ŠคํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์†Œ์Šค์—์„œ Tensorflow 1.4 ์„ค์น˜

cd ~/Downloads
git clone https://github.com/tensorflow/tensorflow
cd tensorflow
git checkout r1.4
  • CUDA ๋ฒ„์ „ ๊ตฌ์„ฑ: 9.0
  • cuDNN ๋ฒ„์ „ ๊ตฌ์„ฑ: 7.0.3
  • https://developer.nvidia.com/cuda-gpus ์—์„œ ์ปดํ“จํŒ… ๊ธฐ๋Šฅ์„ ์–ป์œผ์‹ญ์‹œ์˜ค.
  • ๋‚˜๋Š” GeForce GTX 1070์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์ด๊ฒƒ์„ 6.1๋กœ ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์ ์ ˆํ•˜๊ฒŒ ๋‹ค๋ฅธ ์˜ต์…˜์„ ๊ตฌ์„ฑํ•˜์‹ญ์‹œ์˜ค.

./configure

๋ฐ”์ ค ์„ค์น˜

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update && sudo apt-get install oracle-java8-installer
echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -
sudo apt-get update && sudo apt-get install bazel
sudo /sbin/ldconfig -v

TensorFlow ๋นŒ๋“œ

bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
pip install /tmp/tensorflow_pkg/tensorflow-1.4.0-cp36-cp36m-linux_x86_64.whl

์œ„์˜ tensorflow ํœ  ํŒŒ์ผ์˜ ์ด๋ฆ„์€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ™•์ธํ•˜๋ ค๋ฉด ls /tmp/tensorflow_pkg ์žˆ์œผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

Mac 10.13, CUDA 9 ๋ฐ tensorflow 1.4์šฉ ์„ค์น˜ ๋‹จ๊ณ„ https://gist.github.com/smitshilu/53cf9ff0fd6cdb64cca69a7e2827ed0f

๋ˆ„๊ตฐ๊ฐ€ bazel์„ ์‚ฌ์šฉํ•˜์—ฌ Linux(Ubuntu 16.04)์˜ Windows์šฉ ์†Œ์Šค์—์„œ tensorflow whl ํŒจํ‚ค์ง€๋ฅผ ์–ด๋–ป๊ฒŒ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋งํ•ด ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚ด๊ฐ€ ๋งž๋‹ค๋ฉด ๋ฒ„์ „ 1.2์—์„œ ๊ฐ€๋Šฅํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”.

@ValeryPiashchynski ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค https://www.tensorflow.org/install/install_sources

@smitshilu ๋‹ต๋ณ€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ด ๋‹จ๊ณ„์— ๋”ฐ๋ผ Ubuntu์—์„œ ํœ  ํŒจํ‚ค์ง€๋ฅผ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ชจ๋‘ Ubuntu์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Windows OS์— ํ•ด๋‹น whl ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค(์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค: ์ง€์›๋˜์ง€ ์•Š๋Š” ํœ ). ๊ทธ๋ž˜์„œ ๋‚ด ์งˆ๋ฌธ์€ Ubuntu์—์„œ ํŒจํ‚ค์ง€๋ฅผ ๋นŒ๋“œํ•œ ๋‹ค์Œ Windows์— ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

~ @ValeryPiashchynski ๊ทธ๊ฑด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.~

(์•„๋ž˜ ์˜๊ฒฌ์ด ๋‹ฌ๋ฆฌ ์ œ์•ˆํ•˜๋Š” ๋Œ€๋กœ ๊บผ๋‚ด๊ธฐ)

Windows์šฉ Ubuntu์—์„œ ํฌ๋กœ์Šค ๋นŒ๋“œ๋Š” ์–ธ์  ๊ฐ€ clang์„ ํ†ตํ•ด ๊ฐ€๋Šฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Windows ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ํ˜„์žฌ MSVC๋กœ ๊ตฌ์ถ•๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ์ˆ˜์ •์ด ํ•„์š”ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ง€๋‚œ ์›”์š”์ผ @gunan ๊ณผ ์ง์ ‘ ๋Œ€ํ™”ํ•  ๋•Œ๋„ ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ฐ™์€ ์งˆ๋ฌธ์„

bazel์—์„œ๋Š” ํฌ๋กœ์Šค ์ปดํŒŒ์ผ์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ tensorflow์—์„œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ฐธ๊ณ ๋กœ
https://github.com/bazelbuild/bazel/wiki/Building-with-a-custom-toolchain
https://github.com/bazelbuild/bazel/issues/1353

์—ฌ๊ธฐ์— ๊ฒŒ์‹œ๋œ tensorflow 1.5 ์•ผ๊ฐ„ ๋นŒ๋“œ(win10 ๋นŒ๋“œ)์— CUDA9+CuDNN7 ์ง€์›์ด ์žˆ๋Š”์ง€ ์•„๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?
https://pypi.python.org/pypi/tf-nightly-gpu/1.5.0.dev20171115

์ฐธ๊ณ ๋กœ ์ด ํ‹ฐ์ผ“๊ณผ #14126์„ "TF 1.5๋กœ ๋ฐœ๋งค๋œ๋‹ค"๊ณ  ํ•ด์„œ ํ‹ฐ์ผ“์„ ๋Š๋Š” ๊ฒƒ์€ ์ „์ ์œผ๋กœ ๋ฌด์ฑ…์ž„ํ•ฉ๋‹ˆ๋‹ค. MXNET 0.12์—๋Š” ์ด๋ฏธ CUDA9 FP16์ด ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์— ์žˆ์Šต๋‹ˆ๋‹ค. Tensorflow์™€ CNTK๋Š” ์„œ๋‘˜๋Ÿฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ณผํƒ€์—๊ฒŒ๋งŒ ์œ ์ตํ•œ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

์•„์ง๊นŒ์ง€๋Š” CUDA 9์šฉ ๋นŒ๋“œ ์ธํ”„๋ผ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๋ฒˆ ์ฃผ๊ฐ€ ๋๋‚˜๊ธฐ ์ „์— CUDA 9์™€ ํ•จ๊ป˜ pip ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‘ ๋Œ€์˜ ์ปดํ“จํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ์–ด์ œ 1080ti๋ฅผ ์„ค์น˜ํ•˜๊ณ  ๋ชจ๋“  ๊ฒƒ(cuda8 ๋ฐ cudnn6) ์ƒˆ ๊ทธ๋ž˜ํ”ฝ ๋“œ๋ผ์ด๋ฒ„, Visual Studio 2015๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” Epoch 1080ti์™€ 980ti์˜ ์‹œ๊ฐ„์„ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  1080ti๋Š” ๊ฐ ์—ํฌํฌ๋ฅผ 22๋ถ„ ๋งŒ์— ์‹คํ–‰ํ•˜์ง€๋งŒ 980ti๋Š” 13๋ถ„ ๋งŒ์— ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค !!!(1080์˜ ๊ฒฝ์šฐ ๋ฐฐ์น˜=60 ๋Œ€ 980ti์˜ ๊ฒฝ์šฐ ๋ฐฐ์น˜=20)
1080ti๊ฐ€ 980ti๋ณด๋‹ค ๋Š๋ฆฐ ์ด์œ !!!! ๊ทธ๋ฆฌ๊ณ  ๋ฌด์—‡์ด ์ž˜๋ชป๋˜์—ˆ๋Š”์ง€ ์–ด๋–ป๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?!

1080Ti์— 20๋ฐฐ์น˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ์‹คํ–‰์‹œ๊ฐ„์€ ์–ด๋–ป๊ฒŒ ๋˜๋‚˜์š”?

@gunan , ์ด์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ETA๊ฐ€ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•˜์‹ญ๋‹ˆ๊นŒ?

@smitshilu
1080ti์—์„œ 20๊ฐœ ๋ฐฐ์น˜ = 26๋ถ„
60batch = 19min
980gtx์—์„œ ๋ฐฐ์น˜ 20 = 14๋ถ„ !!!!
๋‚˜๋Š” Windows๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  cuda 8 ๋ฐ cudnn 6์œผ๋กœ ๋งˆ์ง€๋ง‰ ๋ฒ„์ „์˜ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
980๋ณด๋‹ค ๋Š๋ฆฌ๊ฒŒ ์‹คํ–‰๋˜๋Š” ์ด์œ ๋ฅผ ์–ด๋–ป๊ฒŒ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@nasergh SLI์— GTX 1080ti์™€ 980ti๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

@vickylance
์•„๋‹ˆ์š”
๋‘ ๊ฐœ์˜ ๋‹ค๋ฅธ ์ปดํ“จํ„ฐ!
๋‘˜ ๋‹ค cori7 ๋ฐ 1TB ํ•˜๋“œ ๋””์Šคํฌ์ด๋ฉฐ 1TB sata HDD์—์„œ ๋ฐ์ดํ„ฐ ์ด๋ฏธ์ง€๋ฅผ ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ 980๋…„์—๋Š” SSD ํ•˜๋“œ ๋””์Šคํฌ์— Windows๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” ๋งˆ์ง€๋ง‰์œผ๋กœ ๋‹ค๋ฅธ ๋ฒ„์ „์˜ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์‹œ๋„ํ•˜๊ณ  CUDA 8 ๋ฐ cudnn 6์„ ์‚ฌ์šฉํ•˜์—ฌ asus ์›น ์‚ฌ์ดํŠธ์—์„œ ๋‹ค์šด๋กœ๋“œํ•œ 388.13์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
๋‚˜๋Š” ์ด๊ฒƒ ์ค‘ ์–ด๋Š ๊ฒƒ์ด ์ด์œ ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค.
1- ์ฐฝ! ์•„๋งˆ๋„ ๋ฆฌ๋ˆ…์Šค์—์„œ ๋” ์ž˜ ์ž‘๋™ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
2- HDD ์†๋„
3- ๊ฐ€์งœ 1080TI
4- CUDA ๋ฐ cudnn์€ 1080ti์™€ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
5- CPU(1080TI ์ปดํ“จํ„ฐ์˜ CPU๋Š” 980๋ณด๋‹ค ๊ฐ•๋ ฅํ•จ)
๋‹น์‹ ์€ ๋ฌด์—‡์„ ์ œ์•ˆํ•ฉ๋‹ˆ๊นŒ?

@nasergh
1) ๋žจ์€ ๊ฐ™์€๊ฐ€์š”? ๊ทธ๋ ‡๋‹ค๋ฉด. ๊ทธ๊ฒƒ์ด ๊ทธ๋ ‡๊ฒŒ ๋งŽ์€ ์˜ํ–ฅ์„ ๋ฏธ์น ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ RAM์˜ MHz๋„ ๋‘ ์‹œ์Šคํ…œ์—์„œ ๋™์ผํ•œ์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
2) 980ti ๋ฐ 1080ti์—์„œ ์‹คํ–‰ ์‹œ GPU ์‚ฌ์šฉ๋ฅ (%)์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. GPU ์‚ฌ์šฉ๋ฅ ์„ ํ™•์ธํ•˜๋ ค๋ฉด ์ด ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer ๋” ๋‚˜์€ ๊ฒƒ๋“ค์ด ์žˆ์ง€๋งŒ ์ด๊ฒƒ์ด ๋‚ด ๋จธ๋ฆฌ ์œ„์— ๋– ์˜ค๋ฅธ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
3) ์ตœ์ƒ์˜ ์„ฑ๋Šฅ์„ ์–ป์œผ๋ ค๋ฉด Ubuntu16.04๋ฅผ 1080ti ์‹œ์Šคํ…œ์— ์ด์ค‘ ๋ถ€ํŒ…์œผ๋กœ ์„ค์น˜ํ•˜๊ณ  CUDA 9.0 ๋ฐ cuDNN 7.0์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
4) ๋˜ํ•œ Windows๋Š” ์ž์ฒด์ ์œผ๋กœ ๋งŽ์€ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค๋ฅผ ์ฐจ์ง€ํ•˜๋ฏ€๋กœ SSD์—์„œ ์‹คํ–‰ํ•˜๋ฉด ํ™•์‹คํžˆ ์œ ๋ฆฌํ•˜์ง€๋งŒ ํ…Œ์ŠคํŠธ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ์ •๋„๋Š” ์•„๋‹™๋‹ˆ๋‹ค.

์„ ํƒํ•œ ๋ณด๋“œ ์•„ํ‚คํ…์ฒ˜์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
TF๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ 3.0, 3.5 ๋ฐ 5.2์— ๋Œ€ํ•ด ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. https://en.wikipedia.org/wiki/CUDA#GPUs_supported ์— ๋”ฐ๋ฅด๋ฉด 1080TI๋Š” 6.1(Pascal)์ด๊ณ  980์€ 5.2(Maxwell)
3.0 ๋˜๋Š” 5.2๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ด 1080TI์—์„œ๋Š” ํšจ์œจ์ ์ด์ง€ ์•Š์ง€๋งŒ 980์—๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?
5.2 ๋ฐ 6.1 ๊ธฐ๋Šฅ์„ ๋ชจ๋‘ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํ“จํŒ…์„ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค(CMakeLists.txt l.232 ๋ฐ l.246 ์ฐธ์กฐ).

De : nasergh [mailto:[email protected]]
Envoyรฉ : mercredi 2017๋…„ 11์›” 22์ผ 17:17
ร€ : ํ…์„œํ”Œ๋กœ์šฐ/ํ…์„œํ”Œ๋กœ์šฐ
Cc : ์‹ค๋ฑ… ๋ถ€๋‰ด; ์„ค๋ช…์„œ
Objet : Re: [tensorflow/tensorflow] CuDNN 7 ๋ฐ CUDA 9๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ(#12052)

@vickylance
์•„๋‹ˆ์š”
๋‘ ๊ฐœ์˜ ๋‹ค๋ฅธ ์ปดํ“จํ„ฐ!
๋‘˜ ๋‹ค cori7 ๋ฐ 1TB ํ•˜๋“œ ๋””์Šคํฌ์ด๋ฉฐ 1TB sata HDD์—์„œ ๋ฐ์ดํ„ฐ ์ด๋ฏธ์ง€๋ฅผ ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ 980๋…„์—๋Š” SSD ํ•˜๋“œ ๋””์Šคํฌ์— Windows๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” ๋งˆ์ง€๋ง‰์œผ๋กœ ๋‹ค๋ฅธ ๋ฒ„์ „์˜ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์‹œ๋„ํ•˜๊ณ  CUDA 8 ๋ฐ cudnn 6์„ ์‚ฌ์šฉํ•˜์—ฌ asus ์›น ์‚ฌ์ดํŠธ์—์„œ ๋‹ค์šด๋กœ๋“œํ•œ 388.13์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
๋‚˜๋Š” ์ด๊ฒƒ ์ค‘ ์–ด๋Š ๊ฒƒ์ด ์ด์œ ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค.
1- ์ฐฝ! ์•„๋งˆ๋„ ๋ฆฌ๋ˆ…์Šค์—์„œ ๋” ์ž˜ ์ž‘๋™ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
2- HDD ์†๋„
3- ๊ฐ€์งœ 1080TI
4- CUDA ๋ฐ cudnn์€ 1080ti์™€ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋‹น์‹ ์€ ๋ฌด์—‡์„ ์ œ์•ˆํ•ฉ๋‹ˆ๊นŒ?
โ€”
์ด ์Šค๋ ˆ๋“œ์— ๊ฐ€์ž…ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub์—์„œ ๋ณด๊ฑฐ๋‚˜ ์Šค๋ ˆ๋“œ๋ฅผ ์Œ์†Œ๊ฑฐํ•˜์„ธ์š”.

ํ™˜๊ฒฝ: cuda9.0+cudnn7.0+tf1.4๏ผŒ๊ทธ๋ฆฌ๊ณ  "ptb" ์˜ˆ์ œ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. TypeError: __init__()์— ์˜ˆ๊ธฐ์น˜ ์•Š์€ ํ‚ค์›Œ๋“œ ์ธ์ˆ˜ 'input_size'๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 'input_size'๋Š” CudnnLSTM

์ด ์Šค๋ ˆ๋“œ๋ฅผ ๋ช‡ ๋‹ฌ ๋™์•ˆ ๋ณธ ํ›„ Gentoo Linux์—์„œ ์‹œ๋„ํ•ด ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ์•„์ˆ˜์Šค ์ŠคํŠธ๋ฆญ์Šค 1080TI๋ฅผ ๊ฐ€์ง€๊ณ ์žˆ๋‹ค
1- ์šฐ๋ถ„ํ† ์—์„œ nvidia ์›น์‚ฌ์ดํŠธ์—์„œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฑฐ๋‚˜ asus์—์„œ ๋‹ค์šด๋กœ๋“œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(asus ์›น์‚ฌ์ดํŠธ์—์„œ Linux์šฉ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๋ณผ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์—)
2- ๋งˆ์ง€๋ง‰ ๋ฒ„์ „์€ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ๋Œ€๋ถ€๋ถ„์˜ ๋Œ“๊ธ€์—์„œ 378.13์„ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ๋ณด์•˜๊ธฐ ๋•Œ๋ฌธ์— 378.13์„ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?
๊ฐ์‚ฌ ํ•ด์š”

Windows ์‚ฌ์šฉ์ž์˜ ๊ฒฝ์šฐ AVX๋ฅผ ์ง€์›ํ•˜๋Š” CUDA 8.0.61.2, cuDNN 7.0.4, Python 3.6.3์— ๋Œ€ํ•ด ๋นŒ๋“œ๋œ TF 1.4.0 ์„ ๋‚ด repo์— ์—…๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค . Windows์—์„œ CUDA 9๊ฐ€ ์ •๋ฆฌ๋  ๋•Œ๊นŒ์ง€ ์ด๊ฒƒ์ด ์ถฉ๋ถ„ํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์šฐ๋ถ„ํˆฌ 16.04 ๋ฐ python 3.6์— CUDA9 ๋ฐ cudnn 7์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๋‚˜๋Š” ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค :(
๋‚˜๋Š” ๋ชจ๋“  ๊ฒƒ์„ ์‹œ๋„ํ•˜๊ณ  ๋ชจ๋“  ๊ณณ์—์„œ ๊ฒ€์ƒ‰ํ•˜์ง€๋งŒ ์—ฌ์ „ํžˆ ๋™์ผํ•œ ์˜ค๋ฅ˜๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. "importError: libcublas.so.8.0 can not open shared object file: no such file or directory
ํ…์„œ๊ฐ€ CUDA8์„ ์‹คํ–‰ํ•˜๊ณ  ์‹ถ์–ดํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
๊ทธ์—๊ฒŒ cuda9๋ฅผ ์‚ฌ์šฉํ•˜๋ผ๊ณ  ์–ด๋–ป๊ฒŒ ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?!!!! ๋‹ต๋ณ€์ด ์†Œ์Šค์—์„œ ์‹คํ–‰๋˜๋Š” ๊ฒฝ์šฐ ์ •ํ™•ํžˆ ์–ด๋–ป๊ฒŒ ๋ฉ๋‹ˆ๊นŒ? ์†Œ์Šค์—์„œ ๋นŒ๋“œ์— ๋Œ€ํ•œ ๋งค์šฐ ๋ช…ํ™•ํ•œ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๋ณด์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ฐ์‚ฌ ํ•ด์š”

source@nasergh ์—์„œ tf๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@withme6696
์†Œ์Šค์—์„œ ์–ด๋–ป๊ฒŒ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚ด๊ฐ€ ์ด๊ฒƒ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•„
https://github.com/mind/wheels/releases
ํ•˜์ง€๋งŒ ์–ด๋–ค ๊ฒƒ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์–ด๋–ป๊ฒŒ ์„ค์น˜ํ•˜๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค!?

@nasergh ์„ค์น˜ ๋ฐฉ๋ฒ•์€ README ๋ฅผ ํ™•์ธํ•˜์„ธ์š”. MKL ์„ค์น˜์— ์‹ ๊ฒฝ ์“ฐ์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

pip --no-cache-dir install https://github.com/mind/wheels/releases/download/tf1.4-gpu-cuda9-37/tensorflow-1.4.0-cp36-cp36m-linux_x86_64.whl

MKL์„ ์„ค์น˜ํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

pip --no-cache-dir install https://github.com/mind/wheels/releases/download/tf1.4-gpu-cuda9-nomkl/tensorflow-1.4.0-cp36-cp36m-linux_x86_64.whl

์ด ๋ฌธ์ œ๋ฅผ CUDA 9 ์ง€์›์— ๋Œ€ํ•œ ์ถ”์  ๋ฌธ์ œ๋กœ ์‚ฌ์šฉํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
ํ˜„์žฌ ๋‘ ๊ฐ€์ง€ ์ฐจ๋‹จ๊ธฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
1 - https://github.com/tensorflow/tensorflow/pull/14770
2 - Windows์—์„œ NVCC์— ๋ฒ„๊ทธ๊ฐ€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. CUDA9๋กœ TF๋ฅผ ๋นŒ๋“œํ•˜๋ฉด ์ปดํŒŒ์ผ๋Ÿฌ ์ถฉ๋Œ๋กœ ์ธํ•ด ์‹คํŒจํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. NVIDIA๋Š” ์ด์— ๋Œ€ํ•œ ์กฐ์‚ฌ๋ฅผ ๋•๊ณ  ์žˆ์œผ๋ฉฐ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์œผ๋ฉด ๊ณ„์† ์ง„ํ–‰ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@๋‹จ์นญ
๊ฐ์‚ฌ ํ•ด์š”
1- MKL ์†๋„๊ฐ€ ์–ผ๋งˆ๋‚˜ ํ–ฅ์ƒ๋ฉ๋‹ˆ๊นŒ?
2- MKL์ด ์—†๋Š” ๋ฒ„์ „์—์„œ๋Š” MKL์„ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?!

1์˜ ๊ฒฝ์šฐ ์ด๊ฒƒ์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค. GPU์—์„œ ์ˆ˜ํ–‰๋˜๋Š” ๊ณ„์‚ฐ์€ ๋ถ„๋ช…ํžˆ ์†๋„๊ฐ€ ํ–ฅ์ƒ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

2๋ฅผ ์œ„ํ•ด, ๋‹น์‹ ์€ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์˜ฌ๋ฐ”๋ฅธ ๋ฒ„์ „์„ ์„ค์น˜ํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

btw, ์ด๊ฒƒ์€ ๋งŽ์€ ๊ฐ€์ž…์ž๊ฐ€ ์žˆ๋Š” ์Šค๋ ˆ๋“œ์ž…๋‹ˆ๋‹ค. ํ–ฅํ›„ ํœ ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์•„๋ž˜์— ๋Œ“๊ธ€์„ ๋‹ฌ์ง€ ๋ง๊ณ  ์ €์žฅ์†Œ์—์„œ ๋ฌธ์ œ๋ฅผ ์—ด์–ด ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ŠคํŒธ ๋ฉ”์ผ์„ ๋ณด๋‚ด์ง€ ์•Š๋„๋ก ํ•˜์‹ญ์‹œ์˜ค.

@Tweakmind : ์ด ๋ถ€๋ถ„์„ ์ „๋‹ฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

TensorFlow ๋นŒ๋“œ

bazel ๋นŒ๋“œ --config=opt --config=cuda //tensorflow/tools/pip_ ํŒจํ‚ค์ง€:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
pip ์„ค์น˜ /tmp/tensorflow_pkg/tensorflow-1.4.0-cp36-cp36m-linux_x86_64.whl

์ฒซ ๋ฒˆ์งธ ์ค„์ด ๋ถˆ์™„์ „ํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๊นŒ(ํฐ๋”ฐ์˜ดํ‘œ ๋ˆ„๋ฝ)? ์ด ์„ธ ์ค„์ž…๋‹ˆ๊นŒ ์•„๋‹ˆ๋ฉด ๋‘ ์ค„์ž…๋‹ˆ๊นŒ?

@goodmangu ์˜ฌ๋ฐ”๋ฅธ ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"

๋ช…๋ น์— ํฐ๋”ฐ์˜ดํ‘œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ ์—์„œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด ๋ถ€๋ถ„์„ ์ง€๋‚˜์ณค์ง€๋งŒ https://github.com/tensorflow/tensorflow/issues/15108 ์—์„œ ์ผ๋ถ€ cuda ์ปดํŒŒ์ผ๋Ÿฌ ์˜ค๋ฅ˜๋กœ ์ธํ•ด ์ฐจ๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๊ณ ๋งˆ์›Œ ์–˜๋“ค์•„. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์‹  ์•ผ๊ฐ„ ๋นŒ๋“œ Linux ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ™์€ ๋‚  ์ž‘๋™ํ•˜๊ฒŒ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฐธ์กฐ: https://github.com/tensorflow/tensorflow
์ด์ œ Keras์™€ ํ•จ๊ป˜ 3๊ฐœ์˜ GTX 1080 Tis๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฉ‹์žˆ๋Š”!

eGPU๊ฐ€ ํƒ‘์žฌ๋œ MacBook Pro์šฉ ์†Œ์Šค(r1.4)์—์„œ Tensorflow๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๋ฐ ์ง€๋‚œ ์ดํ‹€์„ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค. ๋“œ๋ผ์ด๋ฒ„ ์ž‘๋™, Cuda 8.0, cuDNN 6.0, Mac OSX Sierra 10.12. ๊ฑฐ์˜ ๋์ด ๋‚˜์ง€๋งŒ 20๋ถ„ ํ›„ ์ผ๋ถ€ ๋นŒ๋“œ ์˜ค๋ฅ˜๋กœ ์ธํ•ด ์ฐจ๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ์šด์ด ์ข‹์•˜๋˜ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ์„ฑ๊ณต์ ์œผ๋กœ ๋นŒ๋“œ๋œ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ๋ฏธ๋ฆฌ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

@goodmangu ์–ด๋–ค "๋‚˜์ดํ‹€๋ฆฌ ๋นŒ๋“œ Linux ๋ฐ”์ด๋„ˆ๋ฆฌ"๋ฅผ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์ง€์ •ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋ฌผ๋ก ์ž…๋‹ˆ๋‹ค. tf_nightly_gpu-1.head-cp27-none-linux_x86_64.whl

์—ฌ์ „ํžˆ Cuda 9.0 + cuDNN 7.0์— ๋Œ€ํ•œ Windows 10 ์ง€์›์ด ์—†์Šต๋‹ˆ๊นŒ? ํ™•์ธ ์ค‘์ž…๋‹ˆ๋‹ค.
ํ…์„œํ”Œ๋กœ์šฐ GPU 1.4.0

@goodmangu 1.4๋กœ ์‹œ๋„ํ–ˆ์ง€๋งŒ OSX 10.13 ๋ฐ CUDA 9 cuDNN 7์—์„œ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ๋‹จ๊ณ„๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

@ eeilon79 ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๋นŒ๋“œํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ํ•˜๋Š” Windows์— nvcc ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด nvidia์˜ ๋„์›€์„ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

tf-nightly-gpu pip ํŒจํ‚ค์ง€์˜ Tensorflow Nightly ๋ฒ„์ „(1.5-dev)์— CUDA 9์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? Keras์˜ CuDNNLSTM์— ์ด 1.5๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค. PR์ด ๋ณ‘ํ•ฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์•ฝ 10-12์‹œ๊ฐ„ ์•ˆ์— ์šฐ๋ฆฌ์˜ ์ƒˆ๋กœ์šด nightlies๋Š” ์ฐฝ์„ ์ œ์™ธํ•˜๊ณ  cuda9๋กœ ๋นŒ๋“œ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
Windows์—์„œ๋Š” ์—ฌ์ „ํžˆ NVCC ๋ฒ„๊ทธ์— ์˜ํ•ด ์ฐจ๋‹จ๋ฉ๋‹ˆ๋‹ค.

Gentoo ์‹œ์Šคํ…œ์šฉ ์ผ๋ฐ˜ CUDA 9 ๋ฐ CUDANN 7 ํŒจํ‚ค์ง€๋ฅผ ์™„๋ฃŒํ•˜๊ณ  ๋”๋ฏธ ํ…Œ์ŠคํŠธ๋ฅผ ์‹œ๋„ํ–ˆ์œผ๋ฉฐ ํŒŒ์ด์ฌ์—์„œ ๋”๋ฏธ ๊ฐ€์ ธ์˜ค๊ธฐ tensorflow๋กœ tf๋กœ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ์ถ”๊ฐ€ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ปค๋ฐ‹์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. c9568f1ee51a265db4c5f017baf722b9ea5ecfbb

Windows์—์„œ๋Š” ์—ฌ์ „ํžˆ NVCC ๋ฒ„๊ทธ์— ์˜ํ•ด ์ฐจ๋‹จ๋ฉ๋‹ˆ๋‹ค.

ํ•ด๋‹น ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์—ฌ๊ธฐ์— ๊ฒŒ์‹œํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋ฏธ๋ฆฌ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

@smitshilu ๋‹น์‹ ์˜ ๊ธฐ์‚ฌ๊ฐ€ ์ €๋ฅผ ๋„์™”์Šต๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๋ช‡ ๊ฐ€์ง€ ์š”์†Œ๊ฐ€ ์ถ”๊ฐ€๋œ ๊ธฐ์‚ฌ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.
https://github.com/masasys/MacTF1.4GPU

@arbynacosta
๋‚œ ๋‹ฌ๋ฆฐ๋‹ค
bazel ๋นŒ๋“œ --config=opt --config=cuda //tensorflow/tools/pip_ ํŒจํ‚ค์ง€:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"
ํ•˜์ง€๋งŒ ๋‚˜๋Š”์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ
์˜ค๋ฅ˜: ๋นŒ๋“œ ๋ช…๋ น์€ ์ž‘์—… ๊ณต๊ฐ„ ๋‚ด์—์„œ๋งŒ ์ง€์›๋ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋˜ํ•œ ์•ผ๊ฐ„์— ํ…์„œ๋ฅผ ์‹œ๋„ํ•˜์ง€๋งŒ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
attributeerror: 'tensorflow' ๋ชจ๋“ˆ์— ์†์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค....
dir(tf)์˜ ์ถœ๋ ฅ
['__doc__', '__loader__', '__name__', __package__' '__path__ __spec__]

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค @goodmangu , ์ œ๊ฐ€ โ€‹โ€‹์ž๋ฆฌ๋ฅผ ๋น„ @arbynacosta๊ฐ€ ์ง€์ ํ•œ ๋Œ€๋กœ ๋‹ซ๋Š” ํฐ ๋”ฐ์˜ดํ‘œ๋ฅผ

@nasergh , ๋ณต์ œ๋œ tensorflow ๋””๋ ‰ํ† ๋ฆฌ ๋‚ด๋ถ€์—์„œ ํ•ด๋‹น ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ๋””๋ ‰ํ† ๋ฆฌ์— WORKSPACE๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์˜ˆ๋ฅผ ๋“ค์–ด:

~/Downloads/tensorflow$ ls
ACKNOWLEDGMENTS     bazel-bin         bazel-testlogs      configure          LICENSE       tensorflow   WORKSPACE
ADOPTERS.md         bazel-genfiles    BUILD               configure.py       models.BUILD  third_party
arm_compiler.BUILD  bazel-out         CODE_OF_CONDUCT.md  CONTRIBUTING.md    README.md     tools
AUTHORS             bazel-tensorflow  CODEOWNERS          ISSUE_TEMPLATE.md  RELEASE.md    util

@ํŠธ์œ…๋งˆ์ธ๋“œ
๋‚˜๋Š” ๋ช…๋ น์„ ์‹คํ–‰
์ˆ˜๋„ ์ˆ˜
๊ทธ๋Ÿฐ ๋‹ค์Œ tensorflow ํด๋”๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค(๊ฑฐ๊ธฐ์— ์ž‘์—… ๊ณต๊ฐ„ ํŒŒ์ผ์ด ์žˆ์Œ).
ํ•˜์ง€๋งŒ ๋‚˜๋Š”์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ

root<strong i="10">@pc</strong>:/home/pc2/tensorflow# bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"
..........
WARNING: Config values are not defined in any .rc file: opt
ERROR: /root/.cache/bazel/_bazel_root/cccfa03cbaf937d443248403ec70306e/external/local_config_cuda/crosstool/BUILD:4:1: Traceback (most recent call last):
    File "/root/.cache/bazel/_bazel_root/cccfa03cbaf937d443248403ec70306e/external/local_config_cuda/crosstool/BUILD", line 4
        error_gpu_disabled()
    File "/root/.cache/bazel/_bazel_root/cccfa03cbaf937d443248403ec70306e/external/local_config_cuda/crosstool/error_gpu_disabled.bzl", line 3, in error_gpu_disabled
        fail("ERROR: Building with --config=c...")
ERROR: Building with --config=cuda but TensorFlow is not configured to build with GPU support. Please re-run ./configure and enter 'Y' at the prompt to build with GPU support.
ERROR: no such target '@local_config_cuda//crosstool:toolchain': target 'toolchain' not declared in package 'crosstool' defined by /root/.cache/bazel/_bazel_root/cccfa03cbaf937d443248403ec70306e/external/local_config_cuda/crosstool/BUILD
INFO: Elapsed time: 6.830s
FAILED: Build did NOT complete successfully (2 packages loaded)
    currently loading: @bazel_tools//tools/jdk

@nasergh ์—ฌ๊ธฐ์— ์žˆ๋Š” ๋ชจ๋“  ์ง€์นจ์„ ๋”ฐ๋ฅด์‹ญ์‹œ์˜ค.
https://www.tensorflow.org/install/install_sources

GPU ์ง€์›์œผ๋กœ ๋นŒ๋“œํ•˜๋Š” ๊ฒฝ์šฐ ์ ์ ˆํ•˜๊ฒŒ ๊ตฌ์„ฑํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์†Œ์Šค์—์„œ Tensorflow 1.4๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

  • ์ด ๊ธ€์„ ์“ฐ๋Š” ์‹œ์ ์—์„œ ์ด๊ฒƒ์ด CUDA 9.0 ๋ฐ cuDNN 7.0์—์„œ ์ž‘๋™ํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
  • ์ง€์นจ: https://www.tensorflow.org/install/install_sources
  • ์ผ๋ถ€ ์ง€์นจ์ด ์ดํ•ด๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๋‚ด๊ฐ€ ์ˆ˜ํ–‰ํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
cd $HOME/Downloads
git clone https://github.com/tensorflow/tensorflow
cd tensorflow
git checkout r1.4
./configure

์ƒ˜ํ”Œ ์ถœ๋ ฅ ๋ฐ ์˜ต์…˜์€ ์ง€์นจ์˜ ๊ฒƒ๊ณผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

  • CUDA ๋ฒ„์ „: 9.0์œผ๋กœ ๊ตฌ์„ฑํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
  • cuDNN ๋ฒ„์ „: 7.0.4๋กœ ๊ตฌ์„ฑํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
  • https://developer.nvidia.com/cuda-gpus ์—์„œ ์ปดํ“จํŒ… ๊ธฐ๋Šฅ์„ ์•Œ๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
  • ๋‚˜๋Š” GeForce GTX 1070์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์ด๊ฒƒ์„ 6.1๋กœ ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฐ”์ ค ์„ค์น˜

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update && sudo apt-get install oracle-java8-installer
echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -
sudo apt-get update && sudo apt-get install bazel
sudo /sbin/ldconfig -v

TensorFlow ๋นŒ๋“œ

bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
pip install /tmp/tensorflow_pkg/tensorflow-1.4.0-cp36-cp36m-linux_x86_64.whl

@Tweakmind : ์ด์— ๋Œ€ํ•ด ๋‹ค์‹œ ์•Œ๋ ค์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ, Ubuntu์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€๋งŒ eGPU(1080Ti)๊ฐ€ ์žˆ๋Š” Mac OSX(10.12.6)์—์„œ๋Š” ์—ฌ์ „ํžˆ ์šด์ด ์—†์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ํŒ”๋กœ์šฐํ•œ ๋ชจ๋“  ์†Œ์Šค์— ๋Œ€ํ•ด 10-15๋ถ„ ํ›„์— ๋นŒ๋“œ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์„ฑ๊ณต์„ ๊ฑฐ๋‘”๋‹ค๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฏธ๋ฆฌ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

@ํŠธ์œ…๋งˆ์ธ๋“œ
๋‚˜๋Š” ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ๋˜ํ•œ ํŒŒ์ผ์„ ๊ตฌ์„ฑํ•˜์ง€๋งŒ ๊ทธ๊ฒƒ์€ ๋งํ•œ๋‹ค

pc2<strong i="7">@pc</strong>:~/Downloads/tensorflow$ bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"
ERROR: Skipping '//tensorflow/tools/pip_package:build_pip_package': error loading package 'tensorflow/tools/pip_package': Encountered error while reading extension file 'cuda/build_defs.bzl': no such package '@local_config_cuda//cuda': Traceback (most recent call last):
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 1042
        _create_local_cuda_repository(repository_ctx)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 905, in _create_local_cuda_repository
        _get_cuda_config(repository_ctx)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 662, in _get_cuda_config
        _cudnn_version(repository_ctx, cudnn_install_base..., ...)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 360, in _cudnn_version
        _find_cudnn_header_dir(repository_ctx, cudnn_install_base...)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 612, in _find_cudnn_header_dir
        auto_configure_fail(("Cannot find cudnn.h under %s" ...))
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 129, in auto_configure_fail
        fail(("\n%sCuda Configuration Error:%...)))

Cuda Configuration Error: Cannot find cudnn.h under /usr/lib/x86_64-linux-gnu
WARNING: Target pattern parsing failed.
ERROR: error loading package 'tensorflow/tools/pip_package': Encountered error while reading extension file 'cuda/build_defs.bzl': no such package '@local_config_cuda//cuda': Traceback (most recent call last):
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 1042
        _create_local_cuda_repository(repository_ctx)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 905, in _create_local_cuda_repository
        _get_cuda_config(repository_ctx)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 662, in _get_cuda_config
        _cudnn_version(repository_ctx, cudnn_install_base..., ...)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 360, in _cudnn_version
        _find_cudnn_header_dir(repository_ctx, cudnn_install_base...)
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 612, in _find_cudnn_header_dir
        auto_configure_fail(("Cannot find cudnn.h under %s" ...))
    File "/home/pc2/Downloads/tensorflow/third_party/gpus/cuda_configure.bzl", line 129, in auto_configure_fail
        fail(("\n%sCuda Configuration Error:%...)))

Cuda Configuration Error: Cannot find cudnn.h under /usr/lib/x86_64-linux-gnu
INFO: Elapsed time: 0.082s
FAILED: Build did NOT complete successfully (0 packages loaded)
    currently loading: tensorflow/tools/pip_package

๋‚˜๋Š” cuda์™€ cudnn์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์„ค์น˜ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
```
/usr ์ฐพ๊ธฐ | grep libcudnn
/usr/share/doc/libcudnn7
/usr/share/doc/libcudnn7/์ €์ž‘๊ถŒ
/usr/share/doc/libcudnn7/NVIDIA_SLA_cuDNN_Support.txt
/usr/share/doc/libcudnn7/changelog.Debian.gz
/usr/share/lintian/overrides/libcudnn7
/usr/lib/x86_64-linux-gnu/libcudnn.so.7.0.4
/usr/lib/x86_64-linux-gnu/libcudnn.so.7

```

@goodmangu , ์ฃผ๋ง์— MacOS ๋นŒ๋“œ ์ž‘์—…์„ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@nasergh ,

๋‹ค์Œ์€ ์„ค์น˜๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•œ ์†Œ์Šค ๋ฐ ๋ฌธ์„œ๋ฅผ ํฌํ•จํ•œ cuDNN ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค.

cuDNN 7.0.4 ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ

๋ธŒ๋ผ์šฐ์ €์—์„œ Nvidia ๊ฐœ๋ฐœ์ž ๊ณ„์ •์— ๋กœ๊ทธ์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ ํ•ด์‹œ ํ™•์ธ

cd $HOME/Downloads
md5sum cudnn-9.0-linux-x64-v7.tgz && \
md5sum libcudnn7_7.0.4.31-1+cuda9.0_amd64.deb && \
md5sum libcudnn7-dev_7.0.4.31-1+cuda9.0_amd64.deb && \
md5sum libcudnn7-doc_7.0.4.31-1+cuda9.0_amd64.deb

์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

fc8a03ac9380d582e949444c7a18fb8d cudnn-9.0-linux-x64-v7.tgz
e986f9a85fd199ab8934b8e4835496e2 libcudnn7_7.0.4.31-1+cuda9.0_amd64.deb
4bd528115e3dc578ce8fca0d32ab82b8 libcudnn7-dev_7.0.4.31-1+cuda9.0_amd64.deb
04ad839c937362a551eb2170afb88320 libcudnn7-doc_7.0.4.31-1+cuda9.0_amd64.deb

cuDNN 7.0.4 ๋ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜

tar -xzvf cudnn-9.0-linux-x64-v7.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
sudo dpkg -i libcudnn7_7.0.4.31-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.0.4.31-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.0.4.31-1+cuda9.0_amd64.deb

cuDNN ํ™•์ธ

Ubuntu 17.10์—๋Š” ๋ฒ„์ „ 7 ์ด์ƒ์˜ GNU ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
CUDA๋Š” ๋ฒ„์ „ 6 ์ด์ƒ๊ณผ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋ฐ˜ํ™˜๋œ ์˜ค๋ฅ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์˜ค๋ฅ˜ -- ์ง€์›๋˜์ง€ ์•Š๋Š” GNU ๋ฒ„์ „! 6 ์ดํ›„์˜ gcc ๋ฒ„์ „์€ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค!

์ˆ˜์ • - ๋ฒ„์ „ 6์„ ์„ค์น˜ํ•˜๊ณ  CUDA bin ๋””๋ ‰ํ† ๋ฆฌ์— ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

sudo apt-get install gcc-6 g++-6
sudo ln -sf /usr/bin/gcc-6 /usr/local/cuda/bin/gcc
sudo ln -sf /usr/bin/g++-6 /usr/local/cuda/bin/g++

์ด์ œ mnistCUDNN์„ ๋นŒ๋“œํ•˜์—ฌ cuDNN์„ ํ…Œ์ŠคํŠธํ•ฉ๋‹ˆ๋‹ค.

cp -r /usr/src/cudnn_samples_v7/ $HOME
cd $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN

cuDNN์ด ์ œ๋Œ€๋กœ ์„ค์น˜๋˜๋ฉด ๋‹ค์Œ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

ํ…Œ์ŠคํŠธ ํ†ต๊ณผ!

์นœ์• ํ•˜๋Š” @Tweakmind
๋‹น์‹ ์˜ ๋ฐฉ๋ฒ•์€ ๋‹น์‹ ์˜ ๋„์›€ ๋•๋ถ„์— ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค (๋‚˜๋Š” 3 ์ฃผ ์ด์ƒ ํ…์„œ๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค !!!)
๋ฌธ์ œ๋Š” python3.6์— ์„ค์น˜ํ–ˆ๋Š”๋ฐ ์ด์ œ PIL ํŒจํ‚ค์ง€์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Traceback (most recent call last):
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/utils/data_utils.py", line 551, in get
    inputs = self.queue.get(block=True).get()
  File "/home/pc2/anaconda3/lib/python3.6/multiprocessing/pool.py", line 644, in get
    raise self._value
  File "/home/pc2/anaconda3/lib/python3.6/multiprocessing/pool.py", line 119, in worker
    result = (True, func(*args, **kwds))
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/utils/data_utils.py", line 391, in get_index
    return _SHARED_SEQUENCES[uid][i]
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/preprocessing/image.py", line 761, in __getitem__
    return self._get_batches_of_transformed_samples(index_array)
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/preprocessing/image.py", line 1106, in _get_batches_of_transformed_samples
    interpolation=self.interpolation)
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/preprocessing/image.py", line 345, in load_img
    raise ImportError('Could not import PIL.Image. '
ImportError: Could not import PIL.Image. The use of `array_to_img` requires PIL.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<stdin>", line 7, in <module>
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/legacy/interfaces.py", line 87, in wrapper
    return func(*args, **kwargs)
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/models.py", line 1227, in fit_generator
    initial_epoch=initial_epoch)
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/legacy/interfaces.py", line 87, in wrapper
    return func(*args, **kwargs)
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/engine/training.py", line 2115, in fit_generator
    generator_output = next(output_generator)
  File "/home/pc2/venv/lib/python3.6/site-packages/keras/utils/data_utils.py", line 557, in get
    six.raise_from(StopIteration(e), e)
  File "<string>", line 3, in raise_from
StopIteration: Could not import PIL.Image. The use of `array_to_img` requires PIL.

๋ฒ ๊ฐœ๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ ํ•˜์ง€๋งŒ ๋„์›€์ด๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
๋‚˜๋Š” ๋˜ํ•œ PIL์„ ์„ค์น˜ํ•˜๋ ค๊ณ ํ•˜์ง€๋งŒ

UnsatisfiableError: The following specifications were found to be in conflict:
  - pil -> python 2.6*
  - python 3.6*

@nasergh ๋ฌด์—‡์„ ์–ป์„ ์ˆ˜

pip install pillow

๋‚ด ๋ชจ์Šต์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

~$ pip install pillow
Requirement already satisfied: pillow in ./anaconda3/lib/python3.6/site-packages

@nasergh , ์ถฉ๋Œํ•ด์•ผํ•˜์ง€๋งŒ

@goodmangu , 2012 Mac Pro์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ฃผ๋ง์— Mac ๋นŒ๋“œ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ฐ”๋ผ๊ฑด๋Œ€, ๋‹น์‹ ์€ ์ง€๊ธˆ ์šฐ๋ถ„ํˆฌ๋ฅผ ์ž˜ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋‚˜๋ฅผ ์œ„ํ•ด ์ž˜ ์ž‘๋™ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ์ฃผ๋ง์— ๋‹ค์‹œ ๋ฐ›์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@Tweakmind - ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! , CUDA 9 ๋ฐ cuDNN 7์˜ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ๋ณด์…จ์Šต๋‹ˆ๊นŒ?

๋˜ํ•œ ์•„๋ž˜ @Tweakmind๊ฐ€ ์–ธ๊ธ‰ํ•œ ๋ช‡ ๊ฐ€์ง€ ๋‹จ๊ณ„๊ฐ€ ์ค‘๋ณต

tar -xzvf cudnn-9.0-linux-x64-v7.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

๋˜๋Š”

sudo dpkg -i libcudnn7_7.0.4.31-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.0.4.31-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.0.4.31-1+cuda9.0_amd64.deb

@gunan
CUDA 9.1.85๋Š” nvcc ์ปดํŒŒ์ผ๋Ÿฌ ๋ฒ„๊ทธ ์ˆ˜์ •๊ณผ ํ•จ๊ป˜ CuDNN 7.0.5์™€ ํ•จ๊ป˜ ์–ผ๋งˆ ์ „์— ๋ฆด๋ฆฌ์Šค๋˜์—ˆ์Šต๋‹ˆ๋‹ค. win10 ์‚ฌ์šฉ์ž๊ฐ€ Tensorflow 1.4.1์„ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ๋˜์—ˆ์–ด์š”.

NVIDIA์™€์˜ ์„œ์‹ ์—์„œ 9.1์ด ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋จผ์ €, ์ด PR์„ ๊ณ ์œ ํ•˜๊ฒŒ ๋ณ‘ํ•ฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
https://bitbucket.org/eigen/eigen/pull-requests/351/win-nvcc/diff

๊ทธ๋Ÿฐ ๋‹ค์Œ CUDA9์— ๋Œ€ํ•œ ๋ชจ๋“  ๋นŒ๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” ๊ณ ์œ  ์ข…์†์„ฑ์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

pr์€ ๊ฑฐ๋ถ€๋˜์—ˆ์ง€๋งŒ ์ˆ˜๋™์œผ๋กœ ๋ณ‘ํ•ฉ๋ฉ๋‹ˆ๋‹ค. ๊ณ ์œ  ๋ฆด๋ฆฌ์Šค๋ฅผ ๊ธฐ๋‹ค๋ ค์•ผ ํ•ฉ๋‹ˆ๊นŒ ์•„๋‹ˆ๋ฉด ์†Œ์Šค์—์„œ ๋นŒ๋“œ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

๋ฉ‹์ง€๋„ค์š”, ๊ทธ๋Ÿผ Nightly pip์— ๋‚˜์˜ค๊ฒ ์ฃ ?

@ํŠธ์œ…๋งˆ์ธ๋“œ
python 2.7์„ ์‚ฌ์šฉํ•˜์—ฌ ํ…์„œ๋ฅผ ๋‹ค์‹œ ๋นŒ๋“œํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ bazel ๋นŒ๋“œ์—์„œ ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
๋‚˜๋Š” ๋˜ํ•œ numpy๋ฅผ ์„ค์น˜ํ•˜์ง€๋งŒ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์—†์Šต๋‹ˆ๋‹ค.

bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"
ERROR: /home/gh2/Downloads/tensorflow/util/python/BUILD:5:1: no such package '@local_config_python//': Traceback (most recent call last):
    File "/home/gh2/Downloads/tensorflow/third_party/py/python_configure.bzl", line 310
        _create_local_python_repository(repository_ctx)
    File "/home/gh2/Downloads/tensorflow/third_party/py/python_configure.bzl", line 274, in _create_local_python_repository
        _get_numpy_include(repository_ctx, python_bin)
    File "/home/gh2/Downloads/tensorflow/third_party/py/python_configure.bzl", line 257, in _get_numpy_include
        _execute(repository_ctx, [python_bin, "-c",..."], <2 more arguments>)
    File "/home/gh2/Downloads/tensorflow/third_party/py/python_configure.bzl", line 76, in _execute
        _python_configure_fail("\n".join([error_msg.strip() if ... ""]))
    File "/home/gh2/Downloads/tensorflow/third_party/py/python_configure.bzl", line 37, in _python_configure_fail
        fail(("%sPython Configuration Error:%...)))
Python Configuration Error: Problem getting numpy include path.
Traceback (most recent call last):
  File "<string>", line 1, in <module>
**ImportError: No module named numpy**
Is numpy installed?
 and referenced by '//util/python:python_headers'
ERROR: Analysis of target '//tensorflow/tools/pip_package:build_pip_package' failed; build aborted: Loading failed
INFO: Elapsed time: 10.826s
FAILED: Build did NOT complete successfully (26 packages loaded)
    currently loading: tensorflow/core ... (3 packages)
    Fetching http://mirror.bazel.build/.../~ooura/fft.tgz; 20,338b 5s
    Fetching http://mirror.bazel.build/zlib.net/zlib-1.2.8.tar.gz; 19,924b 5s
    Fetching http://mirror.bazel.build/.../giflib-5.1.4.tar.gz; 18,883b 5s

cuDNN ๋ฒ„์ „ 7.0.5์—์„œ๋Š” OSX๊ฐ€ ์ œ์™ธ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ž์„ธํžˆ ์•„์‹œ๋Š” ๋ถ„ ๊ณ„์‹ ๊ฐ€์š”?

์—ฌ์ „ํžˆ Windows 10(CUDA 9.0.176 ๋ฐ cudnn 7.0 ์‚ฌ์šฉ)์—์„œ tensorflow-gpu๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
tensorflow์™€ tensorflow-gpu๋ฅผ ๋ชจ๋‘ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค(๊ณ ์œ  ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ ์ตœ์‹  ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋„๋ก --no-cache-dir ์‚ฌ์šฉ). ๋‘˜ ๋‹ค ์„ค์น˜ํ•˜๋ฉด GPU๊ฐ€ ์ธ์‹๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

InvalidArgumentError(์ถ”์ ์— ๋Œ€ํ•ด์„œ๋Š” ์œ„ ์ฐธ์กฐ): 'random_uniform_1/sub' ์ž‘์—…์— ๋Œ€ํ•ด ์žฅ์น˜๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ž‘์—…์ด / device:GPU :0์— ๋ช…์‹œ์ ์œผ๋กœ ํ• ๋‹น๋˜์—ˆ์ง€๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์žฅ์น˜๋Š” [ / job:localhost/replica :0/ task:0/device์ž…๋‹ˆ๋‹ค. : CPU:0 ]. ์žฅ์น˜ ์‚ฌ์–‘์ด ์œ ํšจํ•œ ์žฅ์น˜๋ฅผ ์ฐธ์กฐํ•˜๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

tensorflow-gpu๋งŒ ์„ค์น˜ํ•˜๋ฉด ๋ˆ„๋ฝ๋œ dll์— ๋Œ€ํ•ด ๋ถˆํ‰ํ•ฉ๋‹ˆ๋‹ค.

ImportError: 'cudart64_80.dll'์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. TensorFlow๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด %PATH% ํ™˜๊ฒฝ ๋ณ€์ˆ˜์— ์ด๋ฆ„์ด ์ง€์ •๋œ ๋””๋ ‰ํ† ๋ฆฌ์— ์ด DLL์„ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ URL์—์„œ CUDA 8.0์„ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์„ค์น˜ ํ•˜์‹ญ์‹œ์˜ค .

๋‚ด CUDA ๋ฒ„์ „์ด 8.0์ด ์•„๋‹ˆ๋ผ 9.0์ด๊ณ  ์ธ์‹๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด์ƒํ•ฉ๋‹ˆ๋‹ค(deviceQuery ํ…Œ์ŠคํŠธ ํ†ต๊ณผ).
๋‚ด ํŒŒ์ด์ฌ ๋ฒ„์ „์€ 3.6.3์ž…๋‹ˆ๋‹ค. tensorflow-gpu๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•ด Spyder(3.2.4)์—์„œ ์ด ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด๊ฐ€ ๋†“์นœ ๊ฒŒ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

win 7์—์„œ bazel๋กœ ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

cpu 'x64_windows'์— ๋Œ€ํ•œ ๋„๊ตฌ ๋ชจ์Œ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋ˆ„๊ตฌ๋“ ์ง€ whl์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@hadaev8 , ๋„์›€์ด ๋˜๊ธฐ ์œ„ํ•ด ๋” ๋งŽ์€ ์ •๋ณด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ž ์‹œ ์ผํ•  ์ˆ˜ ์žˆ์ง€๋งŒ Win7์ด ์•„๋‹Œ ๋ฌด๊ฑฐ์šด ์ข…์†์„ฑ์„ ๊ฐ€์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ผ๋‹จ MacOS๋ฅผ ํ•ด๊ฒฐํ•˜๋ฉด Win10์„ ํ•ด๊ฒฐํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์–ด์จŒ๋“  ๊ท€ํ•˜์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๊ฒŒ์‹œํ•˜์‹ญ์‹œ์˜ค.

@ eeilon79 , Win10์—์„œ ์ด๊ฒƒ์„ ๋‹ค์‹œ ๋งŒ๋“ค์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ํ˜„์žฌ Ubuntu๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์œผ๋ฏ€๋กœ MacOS์— ์ง‘์ค‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์œˆ10์œผ๋กœ ๋Œ์•„์˜ค๊ฒ ์Šต๋‹ˆ๋‹ค.

@nasergh , ํŒŒ์ด์ฌ 2.7์— ๋Œ€ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

CUDA 8.0 ๋ฐ cuDNN 6.0์„ ์‚ฌ์šฉํ•˜์—ฌ Win10์—์„œ Cuda GPU ๋ฐ AVX2 ์ง€์›์„ ์œ„ํ•ด ์†Œ์Šค์—์„œ TensorFlow๋ฅผ ์„ค์น˜ํ•œ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์š”๊ตฌ ์‚ฌํ•ญ:

* Windows 10 64-Bit
* Visual Studio 15 C++ Tools
* NVIDIA CUDAยฎ Toolkit 8.0
* NVIDIA cuDNN 6.0 for CUDA 8.0
* Cmake
* Swig

Visual Studio Community Edition ์—…๋ฐ์ดํŠธ 3(Windows ํ‚คํŠธ 10.0.10240.0 ํฌํ•จ) ์„ค์น˜
์ง€์นจ์„ ๋”ฐ๋ฅด์‹ญ์‹œ์˜ค: https://github.com/philferriere/dlwin (Phil์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค)

๋ช…ํ™•์„ฑ์„ ์œ„ํ•ด ๊ฐ€์ƒ ๋“œ๋ผ์ด๋ธŒ N: ์ƒ์„ฑ
C: ๋˜๋Š” ์„ ํƒํ•œ ๋“œ๋ผ์ด๋ธŒ์—์„œ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ๋‹ค์Œ ์ง€์นจ(์ตœ์†Œ 2GB)์— ๋”ฐ๋ผ N:์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
https://technet.microsoft.com/en-us/library/gg318052(v=ws.10).aspx

Cuda 8.0 64๋น„ํŠธ ์„ค์น˜
https://developer.nvidia.com/cuda-downloads (๋ ˆ๊ฑฐ์‹œ๋กœ ์Šคํฌ๋กค)

Cuda 8.0์šฉ cuDNN 6.0 ์„ค์น˜
https://developer.nvidia.com/rdp/cudnn-download
zip์—์„œ cuda ํด๋”๋ฅผ N:\์— ๋„ฃ๊ณ  cuDNN-6์œผ๋กœ ์ด๋ฆ„์„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

CMake ์„ค์น˜
https://cmake.org/files/v3.10/cmake-3.10.0-rc5-win64-x64.msi

Swig ์„ค์น˜(swigwin-3.0.12)
https://sourceforge.net/projects/swig/files/swigwin/swigwin-3.0.12/swigwin-3.0.12.zip

cntk-py36

```conda create --name cntk-py36 python=3.6 numpy scipy h5py jupyter
cntk-py36 ํ™œ์„ฑํ™”
ํ• ์„ค์น˜ https://cntk.ai/PythonWheel/GPU/cntk-2.2-cp36-cp36m-win_amd64.whl
python -c "cntk ๊ฐ€์ ธ์˜ค๊ธฐ; ์ธ์‡„(cntk.__version__)"
์ฝ˜๋‹ค ์„ค์น˜ pygpu
ํ• ์„ค์น˜ ์ผ€๋ผ์Šค

#### Remove old tensorflow in Tools if it exists
```cd C:\Users\%USERNAME%\Tools\
move tensorflow tensorflow.not
git clone --recursive https://github.com/tensorflow/tensorflow.git
cd C:\Users\%USERNAME%\Tools\tensorflow\tensorflow\contrib\cmake
Edit CMakeLists.txt

๋‹ค์Œ์„ ์ฃผ์„ ์ฒ˜๋ฆฌ:

# if (tensorflow_OPTIMIZE_FOR_NATIVE_ARCH)
#   include(CheckCXXCompilerFlag)
#   CHECK_CXX_COMPILER_FLAG("-march=native" COMPILER_OPT_ARCH_NATIVE_SUPPORTED)
#   if (COMPILER_OPT_ARCH_NATIVE_SUPPORTED)
#     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
#   endif()
# endif()

๋‹ค์Œ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”.

if (tensorflow_OPTIMIZE_FOR_NATIVE_ARCH)
  include(CheckCXXCompilerFlag)
  CHECK_CXX_COMPILER_FLAG("-march=native" COMPILER_OPT_ARCH_NATIVE_SUPPORTED)
  if (COMPILER_OPT_ARCH_NATIVE_SUPPORTED)
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
  else()
    CHECK_CXX_COMPILER_FLAG("/arch:AVX2" COMPILER_OPT_ARCH_AVX_SUPPORTED)
    if(COMPILER_OPT_ARCH_AVX_SUPPORTED)
      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:AVX2")
    endif()
  endif()
endif()

mkdir ๋นŒ๋“œ ๋ฐ cd ๋นŒ๋“œ

"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat"

cmake .. -A x64 -DCMAKE_BUILD_TYPE=Release ^
-DSWIG_EXECUTABLE=N:/swigwin-3.0.12/swig.exe ^
-DPYTHON_EXECUTABLE=N:/Anaconda3/python.exe ^
-DPYTHON_LIBRARIES=N:/Anaconda3/libs/python36.lib ^
-Dtensorflow_ENABLE_GPU=ON ^
-DCUDNN_HOME="n:\cuDNN-6" ^
-Dtensorflow_WIN_CPU_SIMD_OPTIONS=/arch:AVX2

-- ๋นŒ๋“œ ๋Œ€์ƒ: Visual Studio 14 2015
-- Windows 10.0.16299๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋Š” Windows SDK ๋ฒ„์ „ 10.0.14393.0์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
-- C ์ปดํŒŒ์ผ๋Ÿฌ ์‹๋ณ„์€ MSVC 19.0.24225.1์ž…๋‹ˆ๋‹ค.
-- CXX ์ปดํŒŒ์ผ๋Ÿฌ ์‹๋ณ„์€ MSVC 19.0.24225.1์ž…๋‹ˆ๋‹ค.
-- ์ž‘๋™ํ•˜๋Š” C ์ปดํŒŒ์ผ๋Ÿฌ ํ™•์ธ: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
-- ์ž‘๋™ํ•˜๋Š” C ์ปดํŒŒ์ผ๋Ÿฌ ํ™•์ธ: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe -- ์ž‘๋™
-- C ์ปดํŒŒ์ผ๋Ÿฌ ABI ์ •๋ณด ๊ฐ์ง€
-- C ์ปดํŒŒ์ผ๋Ÿฌ ABI ์ •๋ณด ๊ฐ์ง€ - ์™„๋ฃŒ
-- ์ž‘๋™ํ•˜๋Š” CXX ์ปดํŒŒ์ผ๋Ÿฌ ํ™•์ธ: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
-- ์ž‘๋™ํ•˜๋Š” CXX ์ปดํŒŒ์ผ๋Ÿฌ ํ™•์ธ: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe -- ์ž‘๋™
-- CXX ์ปดํŒŒ์ผ๋Ÿฌ ABI ์ •๋ณด ๊ฐ์ง€
-- CXX ์ปดํŒŒ์ผ๋Ÿฌ ABI ์ •๋ณด ๊ฐ์ง€ - ์™„๋ฃŒ
-- CXX ์ปดํŒŒ์ผ ๊ธฐ๋Šฅ ๊ฐ์ง€
-- CXX ์ปดํŒŒ์ผ ๊ธฐ๋Šฅ ๊ฐ์ง€ - ์™„๋ฃŒ
-- COMPILER_OPT_ARCH_NATIVE_SUPPORTED ํ…Œ์ŠคํŠธ ์ˆ˜ํ–‰
-- COMPILER_OPT_ARCH_NATIVE_SUPPORTED ํ…Œ์ŠคํŠธ ์ˆ˜ํ–‰ - ์‹คํŒจ
-- COMPILER_OPT_ARCH_AVX_SUPPORTED ํ…Œ์ŠคํŠธ ์ˆ˜ํ–‰
-- COMPILER_OPT_ARCH_AVX_SUPPORTED ํ…Œ์ŠคํŠธ ์ˆ˜ํ–‰ - ์„ฑ๊ณต
-- COMPILER_OPT_WIN_CPU_SIMD_SUPPORTED ํ…Œ์ŠคํŠธ ์ˆ˜ํ–‰
-- COMPILER_OPT_WIN_CPU_SIMD_SUPPORTED ํ…Œ์ŠคํŠธ ์ˆ˜ํ–‰ - ์„ฑ๊ณต
-- CUDA ๋ฐœ๊ฒฌ: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0(์ ์ ˆํ•œ ๋ฒ„์ „ "8.0" ๋ฐœ๊ฒฌ, ์ตœ์†Œ ์š”๊ตฌ์‚ฌํ•ญ์€ "8.0")
-- PythonInterp ๋ฐœ๊ฒฌ: C:/Users/%USERNAME%/Anaconda3/python.exe(๋ฒ„์ „ "3.6.3" ๋ฐœ๊ฒฌ)
-- ๋ฐœ๊ฒฌ๋œ PythonLibs: C:/Users/%USERNAME%/Anaconda3/libs/python36.lib(๋ฒ„์ „ "3.6.3" ๋ฐœ๊ฒฌ)
-- SWIG ๋ฐœ๊ฒฌ: C:/Users/%USERNAME%/Tools/swigwin-3.0.12/swig.exe(๋ฐœ๊ฒฌ๋œ ๋ฒ„์ „ "3.0.12")
-- ๊ตฌ์„ฑ ์™„๋ฃŒ
-- ์ƒ์„ฑ ์™„๋ฃŒ
-- ๋นŒ๋“œ ํŒŒ์ผ์€ C:/Users/%USERNAME%/Tools/tensorflow/tensorflow/contrib/cmake/build์— ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

MSBuild /p:Configuration=Release tf_python_build_pip_package.vcxproj

@ํŠธ์œ…๋งˆ์ธ๋“œ
python 3.6, tensorflow last from master, cuda 9.0, cuda 9.0์šฉ cudnn 7.0.5, basel ๋ฐ swig๊ฐ€ ์˜ค๋Š˜ ๋กœ๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

@Tweakmind ๋งˆ์Šคํ„ฐ๋กœ ๋นŒ๋“œํ•˜๊ฑฐ๋‚˜ ?

@ํŠธ์œ…๋งˆ์ธ๋“œ
cuda 9 cudnn 7์„ ์‚ฌ์šฉํ•˜์—ฌ Windows์—์„œ ๋นŒ๋“œํ•˜๊ณ  .whl์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@ํŠธ์œ…๋งˆ์ธ๋“œ

cuda 9 cudnn 7์„ ์‚ฌ์šฉํ•˜์—ฌ win 10์—์„œ ๋นŒ๋“œํ•˜๋ ค๊ณ  ํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

๊ท€ํ•˜์˜ ์ „๋ฌธ ์ง€์‹์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

@hadaev8 @alc5978
pip install -U tf-nightly-gpu๋Š” ์ด์ œ 20171221 ๋‚ ์งœ์˜ win10 ๋นŒ๋“œ๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ, ์ด๋Š” CUDA 9.0 ๋ฐ CuDNN 7.0.5๊ฐ€ ํฌํ•จ๋œ TF 1.5 ๋ฒ ํƒ€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์–ด์ œ ๋ฐค์— ์‹คํ–‰ํ–ˆ๋Š”๋ฐ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ์ด์ œ 12x CUDA ์ปค๋„ ์‹คํ–‰ ์†๋„๋ฅผ ์œ„ํ•ด CUDA 9.1๋กœ ์ด๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Tensorflow ์ฐฝ ์ง€์›์€ ๋งค์šฐ ๋Š๋ฆฌ๊ณ  ๋นˆ์•ฝํ•ฉ๋‹ˆ๋‹ค. ์•ˆ์ •์ ์ธ ๊ณต์‹ ๋นŒ๋“œ๋Š” ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์ œ๊ณต๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ์‹ค์ œ๋กœ Tensorflow 1.5๊ฐ€ 1์›” ๋ง๊นŒ์ง€ CUDA 9.1๊ณผ ํ•จ๊ป˜ ์ถœ์‹œ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์šฐ๋ถ„ํˆฌ์—์„œ cuda 9.1 ๋ฐ cudnn7.05๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ tensorflow๋ฅผ ๋‹จ๊ณ„๋ณ„๋กœ ์„ค์น˜ํ•˜๋ ค๋ฉด http://www.python36.com/install-tensorflow141-gpu/ ๋กœ ์ด๋™ http://www.python36.com/install-tensorflow-gpu-windows ๋กœ ์ด๋™

2018๋…„, ๊ฑฐ์˜ 1์›”์˜ ๋์ž๋ฝ์— Windows 10์— CUDA9.1 ๋ฐ CuDNN7์ด ํฌํ•จ๋œ TF ์„ค์น˜๊ฐ€ ์•„์ง ์™„๋ฃŒ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๊นŒ?

1.5๋Š” CUDA 9 + cuDNN 7

CUDA 9.1์— ๋Œ€ํ•ด ๋…ผ์˜ํ•˜๊ธฐ ์œ„ํ•ด ๋ฌธ์ œ ๋ฅผ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค.

12x ์ปค๋„ ์‹คํ–‰ ์†๋„ ํ–ฅ์ƒ์€ 12x ์ˆซ์ž๋ณด๋‹ค ๋” ๋ฏธ๋ฌ˜ํ•ฉ๋‹ˆ๋‹ค. 12x์˜ ์ตœ์ƒ๋‹จ์€ ops ์— ๋Œ€ํ•œ ๋…ผ์Ÿ์ด ๋งŽ๊ณ  ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„ ์—…๊ทธ๋ ˆ์ด๋“œ๋กœ ์ธํ•ด ์‚ฌ์šฉ์ž์˜ ํ˜ผ๋ž€์ด ๋†’์Šต๋‹ˆ๋‹ค. ๊ฐ€๊นŒ์šด ์žฅ๋ž˜์— "์ฑ„๋„" ํ…Œ์ŠคํŠธ 9.1์„ ๊ฐ–๊ณ  ์ด ํŒจ๋Ÿฌ๋‹ค์ž„์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋‚ด๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋งˆ์นจ๋‚ด 9.0์ด ์•„๋‹Œ CUDA 9.1์ด ๋˜๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋งˆ์นจ๋‚ด 9.0์ด ์•„๋‹ˆ๋ผ CUDA 9.1์ด ๋˜๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋งˆ์นจ๋‚ด 9.0์ด ์•„๋‹ˆ๋ผ CUDA 9.1์ด ๋  ๊ฒƒ์ด๋ผ๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๊นŒ? :)

@ViktorM @Magicfeng007 @alc5978
๊ธฐ๋ณธ์ ์œผ๋กœ ๋‹ซํ˜€ ์žˆ์ง€๋งŒ ๋”ฐ๋ผํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด 9.1 ์Šค๋ ˆ๋“œ๊ฐ€ ์—ฌ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค. 9.1์ด ์œ ์šฉํ•œ ์ด์œ ์™€ ์„ค์ •/๊ตฌ์„ฑ์ด ๋ฌด์—‡์ธ์ง€ ๋‚˜์—ดํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด. ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ๋ณด์—ฌ์ฃผ๋Š” ์‹คํ–‰ํ•œ ๋ฒค์น˜๋งˆํฌ๋Š” ์ฆ‰๊ฐ์ ์ธ ํ•„์š”์„ฑ์„ ์ดํ•ดํ•˜๋Š” ๋ฐ์—๋„ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. NVIDIA์™€์˜ ํšŒ์˜์—์„œ ์šฐ๋ฆฌ ๋‘˜ ๋‹ค 9.1์„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ๋งŒ๋“ค ํ•„์š”๊ฐ€ ์ฆ‰์‹œ ์—†๋‹ค๋Š” ๋ฐ ๋™์˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์‚ฌ๋žŒ๋“ค์ด ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๋‹ค์‹œ ์—…๊ทธ๋ ˆ์ด๋“œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

GPU๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” TensorFlow ๋ฐฑ์—”๋“œ๊ฐ€ ์žˆ๋Š” Keras์™€ ๊ฐ™์€ ๋ฌธ์ œ์— ์—ฌ์ „ํžˆ ์ง๋ฉดํ•˜๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ๋‹ค๋ฉด ์ด ํŽ˜์ด์ง€์˜ ์ง€์นจ์„ ๋”ฐ๋ฅด์„ธ์š”. ์—…๋ฐ์ดํŠธ๋˜์–ด 100% ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
https://research.wmz.ninja/articles/2017/01/configuring-gpu-accelerated-keras-in-windows-10.html

์•ˆ๋…• ๋ชจ๋‘
์ €๋Š” ์˜ค๋Š˜ CUDA 9.0์ด ์„ค์น˜๋œ win10์— tensorflow-gpu 1.6.0rc1์„ ์„ค์น˜ํ•˜๊ณ  http://www.python36.com/install-tensorflow-using-official-pip-pacakage/๋ฅผ ์‚ฌ์šฉ ํ•˜์—ฌ cuDNN 7.0.5 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค

๋ชจ๋“  ๊ฒƒ์ด ๊ดœ์ฐฎ์•„ ๋ณด์ธ๋‹ค

์ตœ์‹  TensorFlow(v1.5+)์šฉ NVIDIA GPU ์ „์ œ ์กฐ๊ฑด(CUDA-9.0 ๋ฐ cuDNN-7.0)์šฉ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ•˜๋‚˜ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ ๋งํฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰