์ปค์Šคํ…€ ํ•™์Šต ์„œ๋น„์Šค ์ดํ•ด

์ด ํŽ˜์ด์ง€์—์„œ๋Š” ํ•™์Šต ์ž‘์—…์˜ ์ˆ˜๋ช… ์ฃผ๊ธฐ๋ฅผ ํ†ตํ•œ ํ•™์Šต ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ƒํƒœ ๋ฐ Vertex AI๊ฐ€ ํ•™์Šต ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•™์Šต ์ฝ”๋“œ๋ฅผ ์ ์ ˆํžˆ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•™์Šต ์ž‘์—…์˜ ์ˆ˜๋ช… ์ฃผ๊ธฐ

์ด ์„น์…˜์—์„œ๋Š” Vertex AI๊ฐ€ ํ•™์Šต ์ž‘์—…์˜ ์ˆ˜๋ช… ์ฃผ๊ธฐ๋ฅผ ํ†ตํ•ด ์ž‘์—…์ž VM์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์ƒˆ ์ž‘์—… ํ์— ์ถ”๊ฐ€

CustomJob ๋˜๋Š” HyperparameterTuningJob์„ ๋งŒ๋“ค๋ฉด ์ž‘์—…์ด Vertex AI์—์„œ ์‹คํ–‰๋˜๊ธฐ ์ „์— ์ผ์ • ์‹œ๊ฐ„ ๋™์•ˆ JOB_STATE_QUEUED ์ƒํƒœ๋กœ ์œ ์ง€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์ด ์‹œ๊ฐ„์€ ๊ธธ์ง€ ์•Š์ง€๋งŒGoogle Cloud ํ”„๋กœ์ ํŠธ์— ์ž‘์—…์— ๋Œ€ํ•œ ์ปค์Šคํ…€ ํ•™์Šต ํ• ๋‹น๋Ÿ‰์ด ๋ถ€์กฑํ•œ ๊ฒฝ์šฐ Vertex AI๋Š” ํ• ๋‹น๋Ÿ‰์ด ์ถฉ๋ถ„ํžˆ ํ™•๋ณด๋  ๋•Œ๊นŒ์ง€ ์ž‘์—…์„ ํ์— ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

๋™์‹œ์— ์ž‘์—…์ž ์‹œ์ž‘

ํ•™์Šต ์ž‘์—…์ด ์‹œ์ž‘๋˜๋ฉด Vertex AI๋Š” ์งง์€ ์‹œ๊ฐ„ ๋‚ด์— ์ตœ๋Œ€ํ•œ ๋งŽ์€ ์ž‘์—…์ž๋ฅผ ์˜ˆ์•ฝํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ž‘์—…์ž๊ฐ€ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹œ์ž‘๋˜๋Š” ๋Œ€์‹  ๋ณ‘๋ ฌ๋กœ ์‹œ์ž‘๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ค„์ด๊ธฐ ์œ„ํ•ด Vertex AI๋Š” ๊ฐ ์ž‘์—…์ž๊ฐ€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ด์ง€๋Š” ์ฆ‰์‹œ ๊ฐ ์ž‘์—…์ž์— ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์ž‘์—…์ž๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ Vertex AI๋Š” ์ž‘์—… ์ƒํƒœ๋ฅผ JOB_STATE_RUNNING์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ๋จธ์‹ ๋Ÿฌ๋‹ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๋ณ‘๋ ฌ๋กœ ์‹œ์ž‘๋˜๋Š” ์ž‘์—…์ž๋ฅผ ์ž๋™์œผ๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ํ•™์Šต ์ฝ”๋“œ์—์„œ ๋ฐฐํฌ ์ „๋žต์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๋ณ‘๋ ฌ๋กœ ์‹œ์ž‘๋˜๋Š” ์ž‘์—…์ž๋ฅผ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์ˆ˜๋™์œผ๋กœ ์กฐ์ •ํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. TensorFlow ๋ฐ PyTorch์˜ ๋ฐฐํฌ ์ „๋žต์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด์„ธ์š”.

ํ•™์Šต ์ž‘์—… ์ค‘์— ์ž‘์—…์ž ๋‹ค์‹œ ์‹œ์ž‘

ํ•™์Šต ์ž‘์—… ์ค‘์— Vertex AI๋Š” ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์ด ๋™์ผํ•œ ์ž‘์—…์ž ํ’€์—์„œ ์ž‘์—…์ž๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ์— ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • VM ์œ ์ง€๋ณด์ˆ˜: ์ž‘์—…์ž๋ฅผ ์‹คํ–‰ํ•˜๋Š” VM์— VM ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์ ์šฉ๋˜๋Š” ๊ฒฝ์šฐ Vertex AI๋Š” ๋‹ค๋ฅธ VM์—์„œ ์ž‘์—…์ž๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. VM ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์œ„ํ•œ ๋ผ์ด๋ธŒ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์ž์„ธํžˆ ์•Œ์•„๋ณด์„ธ์š”.
  • 0์ด ์•„๋‹Œ ์ข…๋ฃŒ: 0์ด ์•„๋‹Œ ์ข…๋ฃŒ ์ฝ”๋“œ๋กœ ์ž‘์—…์ž๊ฐ€ ์ข…๋ฃŒ๋˜๋ฉด Vertex AI๊ฐ€ ํ•ด๋‹น ์ž‘์—…์ž๋ฅผ ๋™์ผํ•œ VM์—์„œ ์ฆ‰์‹œ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

    • ์ž‘์—…์ž๊ฐ€ ์ผ๋ฐ˜์ ์ธ ์˜ค๋ฅ˜๋กœ ์ธํ•ด ์‹คํŒจํ•˜๋ฉด ์˜๊ตฌ ์˜ค๋ฅ˜๋กœ ์ทจ๊ธ‰๋˜๊ณ  Vertex AI๋Š” ์ „์ฒด ์ž‘์—…์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค. Vertex AI๊ฐ€ ์ „์ฒด ์ž‘์—…์„ ์ข…๋ฃŒํ•˜๊ธฐ ์ „์— ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋‹ค์‹œ ์‹œ์ž‘๋˜๋ฉด ์ด๋Ÿฌํ•œ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ Cloud Logging์— ๋กœ๊ทธ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๋น„์˜๊ตฌ์  ์˜ค๋ฅ˜(์ผ๋ฐ˜์ ์ธ ์˜ค๋ฅ˜์— ๋‚˜์—ด๋˜์ง€ ์•Š์€ ์˜ค๋ฅ˜)๋กœ ์ธํ•ด ์ž‘์—…์ž๊ฐ€ ์‹คํŒจํ•˜๋ฉด Vertex AI์—์„œ ๋‹ค์‹œ ์‹œ์ž‘๋œ ์ž‘์—…์ž๊ฐ€ ์ž‘์—…์ž๋‹น ์ตœ๋Œ€ 5๋ฒˆ๊นŒ์ง€ ๊ณ„์† ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. 5๋ฒˆ์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•œ ํ›„ ์ž‘์—…์ž๊ฐ€ ๋‹ค์‹œ ์‹คํŒจํ•˜๋ฉด Vertex AI์—์„œ ์ „์ฒด ์ž‘์—…์ด ์‹คํŒจํ•˜๊ธฐ ์ „์— ์ „์ฒด ์ž‘์—…์„ 3ํšŒ๊นŒ์ง€ ๋‹ค์‹œ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

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

์„ฑ๊ณต์ ์œผ๋กœ ์ž‘์—… ์™„๋ฃŒ

๊ธฐ๋ณธ ๋ณต์ œ๋ณธ์ด ์ข…๋ฃŒ ์ฝ”๋“œ 0์œผ๋กœ ์ข…๋ฃŒ๋˜๋ฉด ํ•™์Šต ์ž‘์—…์ด ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค. ์ด ์‹œ์ ์— Vertex AI๋Š” ๋‹ค๋ฅธ ๋ชจ๋“  ์‹คํ–‰ ์ž‘์—…์ž๋ฅผ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

Vertex AI๊ฐ€ ํ•™์Šต ์ž‘์—… ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•

์ด ์„น์…˜์—์„œ๋Š” Vertex AI๊ฐ€ ์ผ๋ฐ˜์ ์ธ ํ•™์Šต ์ž‘์—… ์˜ค๋ฅ˜ ๋ฐ ๋‚ด๋ถ€ ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์ž‘์—…์ด ์ข…๋ฃŒ๋˜๊ณ  ์•ฝ 1๋ถ„ ํ›„ Vertex AI๋Š” ์ข…๋ฃŒ ์ฝ”๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•™์Šต ์ž‘์—… ๊ฐ์ฒด์— ์˜ค๋ฅ˜ ์ฝ”๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์ธ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ

๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด Vertex AI๊ฐ€ ๋ชจ๋“  ์ž‘์—…์ž๋ฅผ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜ ์œ ํ˜• ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€/๋กœ๊ทธ ์ฐธ๊ณ 
์‚ฌ์šฉ์ž ์ฝ”๋“œ ์˜ˆ์™ธ ๋ณต์ œ๋ณธ REPLICA_NAME์ด 0์ด ์•„๋‹Œ EXIT_CODE ์ƒํƒœ๋กœ ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ข…๋ฃŒ ์›์ธ์€ REASON์ž…๋‹ˆ๋‹ค. ์ž‘์—…์ด ์ผ์‹œ์ ์ผ ์ˆ˜ ์žˆ๋Š” ์ข…๋ฃŒ ์ฝ”๋“œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด Vertex AI๋Š” ์ตœ๋Œ€ 3ํšŒ๊นŒ์ง€ ์ž‘์—…์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค. Vertex AI์—์„œ ์ž‘์—…์„ ๋‹ค์‹œ ์‹œ๋„ํ•˜๋ผ๊ณ  ์•Œ๋ฆฌ๋Š” ์ผ์‹œ์ ์ธ ์˜ค๋ฅ˜ ์ฝ”๋“œ์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.
  • SIGABRT
    • ExitCode 6
    • ExitCode 134(์ปค์Šคํ…€ ์ปจํ…Œ์ด๋„ˆ)
  • SIGSEGV
    • ExitCode 11
    • ExitCode 139(์ปค์Šคํ…€ ์ปจํ…Œ์ด๋„ˆ)
๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ ๋ณต์ œ๋ณธ REPLICA_NAME์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•˜์—ฌ 0์ด ์•„๋‹Œ EXIT_CODE ์ƒํƒœ๋กœ ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. GKE๋Š” Vertex AI ๋…ธ๋“œ์— ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์˜ˆ์•ฝํ•ฉ๋‹ˆ๋‹ค. ์ตœ์†Œ ๋จธ์‹  ์œ ํ˜•(์˜ˆ: n1-standard-4)์—์„œ Vertex AI ์‹œ์Šคํ…œ ์—์ด์ „ํŠธ๋Š” ์ด ๋ฉ”๋ชจ๋ฆฌ์˜ ์ตœ๋Œ€ 40%๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ํฐ VM์˜ ๊ฒฝ์šฐ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋น„๊ต์  ์ž‘์Šต๋‹ˆ๋‹ค. n1-standard ๋จธ์‹  ์œ ํ˜•์— ํ• ๋‹น ๊ฐ€๋Šฅํ•œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.
๋ฆฌ์ „์˜ ์šฉ๋Ÿ‰ ๋ถ€์กฑ(Compute Engine ์žฌ๊ณ  ๋ถ€์กฑ) REGION_NAME ๋ฆฌ์ „์˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฆฌ์ „์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๊ฐ€์†๊ธฐ๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”. ์žฌ๊ณ  ๋ถ€์กฑ์€ ๋ฆฌ์ „์˜ ์„ ํƒํ•œ CPU ๋˜๋Š” GPU์— ๋Œ€ํ•ด Compute Engine ์šฉ๋Ÿ‰์ด ๋ถ€์กฑํ•œ ๊ฒฝ์šฐ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ํ• ๋‹น๋Ÿ‰๊ณผ๋Š” ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ Vertex AI๊ฐ€ ์ž‘์—…์„ ์ตœ๋Œ€ 3ํšŒ๊นŒ์ง€ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

A2 ๋ฐ A3 VM์—์„œ ์‹คํ–‰๋˜๋Š” ์ž‘์—…์˜ ๊ฒฝ์šฐ ๋™์  ์›Œํฌ๋กœ๋“œ ์Šค์ผ€์ค„๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์žฌ๊ณ  ๋ถ€์กฑ ์˜ค๋ฅ˜๋กœ ์‹คํŒจํ•˜๋Š” ๋Œ€์‹  ์š”์ฒญ๋œ GPU ๋ฆฌ์†Œ์Šค๊ฐ€ ์ œ๊ณต๋  ๋•Œ ์‹คํ–‰๋˜๋Š” ์ž‘์—…์„ ์˜ˆ์•ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ฆฌ์†Œ์Šค ๊ฐ€์šฉ์„ฑ ๊ธฐ๋ฐ˜์˜ ํ•™์Šต ์ž‘์—… ์˜ˆ์•ฝ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๋‚ด๋ถ€ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ

Vertex AI์— ๋‚ด๋ถ€ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉด Vertex AI๋Š” ์ž‘์—…์„ 2ํšŒ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค(์ด 3ํšŒ). ์žฌ์‹œ์ž‘๋„ ์‹คํŒจํ•˜๋ฉด Vertex AI๋Š” Internal error occurred for the current attempt ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ๋‚ด๋ถ€ ์˜ค๋ฅ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.