4Â÷ »ê¾÷ Çõ¸í ½Ã´ë¸¦ ¸Â¾Æ ±ÝÀ¶, Á¦Á¶, ¼Ò¸Å, ÀÇ·á µî ¾÷Á¾À» °¡¸®Áö ¾Ê°í ¸ðµÎ ÀΰøÁö´É¿¡¼ ºñÁî´Ï½ºÀÇ ¹Ì·¡¸¦ ã°í ÀÖ´Ù.
ÃÖ±Ù ‘ÀΰøÁö´É ¿Ç³’Àº ÄÄÇ»Æà Æз¯´ÙÀÓ Àüȯ¿¡ °¡±î¿î ±â¼ú Çõ½ÅÀ» µ¿¹ÝÇÏ°í ÀÖ´Ù.
¾Æ¿ï·¯ ÀÌ È帧Àº ±âÁ¸ ‘CPU ±â¹ÝÀÇ ´ë±Ô¸ð Ŭ·¯½ºÅÍ ÀÏ»öÀÌ´ø º´·Ä ÄÄÇ»Æà ȯ°æ’ÀÌ ÇϳªµÑ ‘GPU ±â¹Ý’À¸·Î ¹Ù²î°í ÀÖÀ½À» ÀǹÌÇÑ´Ù.
4Â÷ »ê¾÷ Çõ¸íÀÇ °¡Àå Áß¿äÇÑ ¿ä¼Ò·Î ÀΰøÁö´É°ú µö·¯´×ÀÌ ºÎ»óÇϸé¼, À̸¦ ±¸ÇöÇϱâ À§ÇÑ Çʼö ¿ä¼ÒÀÎ GPUÀÇ Á߿伺ÀÌ ÁÖ¸ñ¹Þ°í ÀÖ´Â °ÍÀÌ´Ù.
¡ß“CPUÀÇ ½Ã´ë¸¦ µÚ·ÎÇÏ°í ¿£ÅÍÇÁ¶óÀÌÁî ȯ°æ¿¡¼ GPU°¡ Á߽ɿ¡ ¼°Ô µÈ ¹è°æ” = ±â¾÷ÀÇ Â÷¼¼´ë ¼ºñ½º¸¦ À§ÇÑ ÇÙ½É ±â¼ú·Î GPU ±â¼úÀÌ ÀÚ¸® ÀâÀ¸¸é¼ ¿£ÅÍÇÁ¶óÀÌÁî Àü¿ë GPU ½Ã´ë°¡ ¿¸®°í ÀÖ´Ù.
ÀÌ°°Àº º¯ÈÀÇ ½ÃÀÛÀº 2006³â ¿£ºñµð¾Æ°¡ ‘CUDA(Compute Unified Device Architecture)’¿Í ‘Å×½½¶ó(Tesla) GPU’ Ç÷§ÆûÀ» ¼±º¸ÀÎ ¶§¿´´Ù.
ÀÌÈÄ CUDA´Â ´Ù¾çÇÑ °è»ê°ú ºÐ¼® ¿µ¿ªÀ¸·Î °³¹ßÀÚ Ä¿¹Â´ÏƼ¸¦ ³ÐÇô °¬°í, À̸¦ ½ÃÀÛÀ¸·Î º»°ÝÀûÀÎ ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPU ½Ã´ëÀÇ ¼¸·ÀÌ ¿·È´Ù.
‘Å×½½¶ó GPU’ Ç÷§Æû°ú ‘CUDA’ Á¶ÇÕÀº ÀΰøÁö´É¿¡ Á¢±ÙÇÏ´Â ´õ °·ÂÇÏ°í, »õ·Î¿î ±æÀ» ¿°í ÀÖ´Ù.
¿£ºñµð¾Æ´Â ±â°èÇнÀ, µö·¯´×, HPC µî¿¡ ´ëÇÑ ±â¾÷ÀÇ ±â´ë¿¡ ºÎÀÀÇϱâ À§ÇØ Å×½½¶ó GPU Ç÷§ÆûÀÇ ±â¼ú Çõ½ÅÀ» Áö¼ÓÇÏ°í ÀÖ´Ù.
°¡Àå ÃÖ±ÙÀÇ ¼º°ú´Â ÀΰøÁö´É¿¡ ÃÖÀûÈµÈ ‘º¼Å¸(Volta)’ ¾ÆÅ°ÅØó¸¦ °³¹ßÇØ À̸¦ ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPU Ç÷§Æû¿¡ Àû¿ëÇÑ ‘Å×½½¶ó GV100’À» Ãâ½ÃÇÑ °ÍÀÌ´Ù. <±×¸²1 ‘º¼Å¸(Volta) GV100 GPU¸¦ ÀåÂøÇÑ ¿£ºñµð¾Æ Å×½½¶ó V100 SXM2 ¸ðµâ’ ÂüÁ¶>
|
|
|
¡ã ±×¸²1 ‘º¼Å¸(Volta) GV100 GPU¸¦ ÀåÂøÇÑ ¿£ºñµð¾Æ Å×½½¶ó V100 SXM2 ¸ðµâ’ |
ÁÖ·Î °ÔÀÓ ¹× ±×·¡ÇÈ ÀÛ¾÷ ¿ëµµ·Î »ç¿ëµÇ´Â °³Àοë GPU¿Í´Â ´Ù¸£°Ô, ¿£ÅÍÇÁ¶óÀÌÁî¿ë Å×½½¶ó GPU´Â Çϵå¿þ¾î, ¼ÒÇÁÆ®¿þ¾î ¸ðµç Ãø¸é¿¡¼ ÀΰøÁö´É¿¡ ÃÖÀûȵŠÀÖ´Ù.
Çϵå¿þ¾î Ãø¸é¿¡¼ º¸¸é, µö·¯´×¿¡ ÃÖÀûÈµÈ »õ·Î¿î ½ºÆ®¸®¹Ö ¸ÖƼÇÁ·Î¼¼¼ ¾ÆÅ°ÅØó¸¦ ä¿ëÇÏ°í ÀÖ´Ù.
ÀÌ¿Ü¿¡µµ NVLink, HBM2 ¸Þ¸ð¸®, ÅëÇÕ ¸Þ¸ð¸®¿Í ÁÖ¼Ò º¯È¯ ¼ºñ½º µî ÀÏ¹Ý GPU¿Í ¿ÏÀüÈ÷ ´Ù¸¥ ¼³°è öÇÐÀ» ´ã°í ÀÖ´Ù.
¼ÒÇÁÆ®¿þ¾îÀÇ °æ¿ì CUDA9¿¡ µµÀÔµÈ »õ·Î¿î ÇÁ·Î±×·¡¹Ö ¸ðµ¨À» Áö¿øÇÑ´Ù.
¡ß¿£ÅÍÇÁ¶óÀÌÁî°¡ ¿ä±¸ÇÏ´Â °ÍÀ» ¾ËÂ÷°Ô °®Ãá ‘¿£ºñµð¾Æ Å×½½¶ó’ =¿£ÅÍÇÁ¶óÀÌÁî¿ë GPGPU(General-Purpose computing on Graphics Processing Units)¿Í ÀÏ¹Ý GPUÀÇ Â÷À̸¦ ¸î °¡Áö ¤¾î º¸ÀÚ¸é, ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPU´Â ´õ Å« µ¥ÀÌÅÍ ¼¼Æ®¸¦ Àú Á¤È®ÇÏ°í ºü¸£°Ô ´Ù·ç±â À§ÇØ 64ºñÆ®¿¡ ÃÖÀûȵŠÀÖ´Ù.
64ºñÆ® ºÎµ¿ ¼Ò¼öÁ¡ ¿¬»ê ¼º´ÉÀ» ºñ±³ÇØ º¸¸é ¼ö½Ê ¹èÀÇ Â÷ÀÌ°¡ ³´Ù.
´ÙÀ½À¸·Î ÀÏ¹Ý GPU´Â ¸Þ¸ð¸® ¿¡·¯ 󸮸¦ ¿°µÎ¿¡ µÎÁö ¾Ê´Â´Ù. ¿Ö³ÄÇϸé, °ÔÀÓÀ̳ª ±×·¡ÇÈ ÀÛ¾÷ ȯ°æ¿¡¼´Â Å« ¹®Á¦°¡ µÇÁö ¾Ê±â ¶§¹®ÀÌ´Ù.
ÇÏÁö¸¸ º¹ÀâÇÏ°í, ±Ô¸ð°¡ Å« ¿¬»êÀ» ÇØ¾ß ÇÏ´Â Å×Å©´ÏÄà ÄÄÇ»Æà ºÐ¾ß¿¡¼´Â ÀÛÀº ¸Þ¸ð¸® ¿¡·¯ Çϳª°¡ Å« Â÷À̸¦ ¸¸µé ¼ö ÀÖ´Ù.
ÀÏ·Ê·Î, µö·¯´× ¾Ë°í¸®Áò ±¸µ¿ ½Ã GPU¿¡¼ ¸Þ¸ð¸® ¿¡·¯°¡ ¹ß»ýÇÏ¸é ±â°è ÇнÀ È¿À²ÀÌ ¶³¾îÁö´Â µî ¿©·¯ ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö Àֱ⠶§¹®¿¡, ÀÌ¿¡ ´ëÀÀÇϱâ À§ÇØ ¸Þ¸ð¸® ¿À·ù ŽÁö¿Í °ü¸® ±â´ÉÀ» Á¦°øÇϱâ À§ÇØ ECC(Error Correcting Code) ¸Þ¸ð¸®°¡ ÇÊ¿äÇÏ´Ù.
¶Ç ´Ù¸¥ ÁÖ¸ñÇÒ ºÎºÐÀº CPU¿Í GPU ¿¬°á ±¸°£ÀÇ µ¥ÀÌÅÍ Ã³¸® º´¸ñ ±¸°£À» ÃÖ¼ÒÈÇÏ¿© º´·Ä µ¥ÀÌÅÍ Ã³¸® ¼Óµµ¸¦ ±Ø´ëÈÇÑ °ÍÀÌ´Ù.
¿¹¸¦ µé¸é, ¿£ºñµð¾ÆÀÇ Å×½½¶ó GP100/GV100Àº 16GB/s ¼ÓµµÀÇ PCI-ÀͽºÇÁ·¹½º ÀÎÅÍÆäÀ̽º»Ó¸¸ ¾Æ´Ï¶ó, 80GB/sÀÇ ¼Óµµ¸¦ Á¦°øÇÏ´Â NVLink ÀÎÅÍÆäÀ̽º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. <±×¸²2 ‘Å×½½¶ó V100ÀÇ »õ·Î¿î ±â¼ú ’ ÂüÁ¶>
|
|
|
¡ã ±×¸²2 ‘Å×½½¶ó V100ÀÇ »õ·Î¿î ±â¼ú’ |
¸Þ¸ð¸® ¼º´ÉÀÇ °æ¿ìµµ ÀÏ¹Ý GPU´Â Àθ޸𸮠»ó¿¡¼ ½Ç½Ã°£ 󸮸¦ °í·ÁÇÏÁö ¾Ê¾ÒÁö¸¸, Å×½½¶ó GP100/GV100Àº GPU ¸Þ¸ð¸® ¼º´ÉÀ» ±Ø´ëÈÇØ ¿¬»ê Áý¾àÀûÀÎ ÀÛ¾÷¿¡¼µµ ºü¸¥ ¼Óµµ¸¦ À¯ÁöÇÒ ¼ö ÀÖ´Ù.
GPU °£ Àü¼Û ¼Óµµ ¿ª½Ã Â÷ÀÌ°¡ Å©´Ù.
GP100/GV100Àº ¿©·¯ °³ÀÇ GPU¸¦ Ŭ·¯½ºÅÍ·Î ¿«¾î ¿î¿µÇÒ ¶§ ÇÊ¿äÇÑ ±â´ÉÀÎ ‘GPU ´ÙÀÌ·ºÆ®’¶ó´Â RDAM(Remote Direct Memory Access) ±â¼úÀ» Áö¿øÇÑ´Ù.
¡ß±â¾÷ Àü»ê½Ç·µ¥ÀÌÅͼ¾ÅÍ È¯°æ¿¡ ¸Â´Â ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPU = ±â¾÷ÀÌ GPU ÄÄÇ»ÆÃÀ» ´õ º¹ÀâÇÑ ¿¬»ê°ú ºÐ¼®¿¡ Àû¿ëÇÏ´Â Á¶Á÷ÀÌ ´Ã¸é¼ ÀÏ¹Ý GPU´Â Çϵå¿þ¾î Ãø¸éÀÇ ±¸Á¶ÀûÀÎ ÇѰ踦 ¸ÂÀÌÇÏ°í ÀÖ´Ù.
´ëÇ¥ÀûÀÎ ¿¹°¡ ‘¹ß¿°ú Àü¿ø ¼Ò¸ð·®’ÀÌ´Ù.
ÀϹÝÀûÀÎ °ÔÀÓÀ̳ª ±×·¡ÇÈ ÀÛ¾÷ȯ°æ¿¡¼´Â GPU°¡ CPU¿Í ÇÔ²² »ç¿ëµÅ ÀÛµ¿·üÀÌ ¿©À¯°¡ ÀÖ´Ù.
ÇÏÁö¸¸, ±â°èÇнÀÀ̳ª µö·¯´× ÇÁ·Î±×·¥À» ±¸µ¿ÇÒ ¶§´Â GPU ³»ÀÇ ¼ö¸¹Àº Äھ Ç×»ó 100% µ¿ÀÛÇϱ⠶§¹®¿¡ Àü±â ¼Ò¸ð·®ÀÌ ¸¹°í, ¹ß¿µµ ½ÉÇÏ´Ù.
±×·¸±â ¶§¹®¿¡ ·¢ ŸÀÔ ¼¹ö¿¡ ÀåÂø, »ç¿ë ½Ã ¹ß¿ ¹®Á¦¿Í °úµµÇÑ Àü·Â »ç¿ëÀ¸·Î ÀÎÇÑ À̽´°¡ ¹ß»ýÇÒ ¼ö ÀÖ´Ù.
ÀÌ´Â ½Ã½ºÅÛÀÌ ¾ÈÁ¤¼º°ú °¡¿ë¼º°ú Á÷°áµÇ±â ¶§¹®¿¡ ¸Å¿ì ¹Î°¨ÇÑ À̽´¶ó ÇÒ ¼ö ÀÖ´Ù.
¾Æ¿ï·¯ ÇöÀåÀÇ µ¥ÀÌÅÍ ºÐ¼®°¡ ÀÔÀå¿¡¼ ü°¨ÇÒ ¼ö ÀÖ´Â ÇÑ°èµµ ÀÖ´Ù. ¹Ù·Î °¢Á¾ ¼ÒÇÁÆ®¿þ¾îÀÇ Áö¿ø ¿©ºÎ´Ù.
CUDA´Â °è¼Ó ÁøÈ ¹ßÀüÇÏ¸ç »õ·Î¿î ¹öÀüÀÌ ³ª¿À°í, ½áµåÆÄƼ(3rd Party) ¼ÒÇÁÆ®¿þ¾î´Â ÀÌ¿¡ ¸ÂÃß¾î °³¼±ÇÑ´Ù.
µû¶ó¼ ÃֽŠ¹öÀüÀÇ CUDA¿Í ºÐ¼® ¼ÒÇÁÆ®¿þ¾î »ç¿ë ¿©ºÎ¿Í ±â¼úÁö¿ø ¹®Á¦¸¦ ¹Ýµå½Ã °í·ÁÇØ¾ß ÇÑ´Ù.
¡ßÄÚ¾ÕÀ¸·Î ´Ù°¡¿Â ¿£ÅÍÇÁ¶óÀÌÁî GPU Àü¼º½Ã´ë = »ìÆ캻 ¹Ù¿Í °°ÀÌ, ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPU¿Í ±×·¡ÇÈ Àü¿ë GPU´Â ¾ö¿¬È÷ ´Ù¸£´Ù.
±×·¡ÇÈ Àü¿ë GPUµµ Áö¼ÓÀûÀÎ ¹ßÀüÀ» °ÅµìÇÏ°í ÀÖÁö¸¸, ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPU´Â ¾ÆÅ°ÅØó ¼³°è öÇеµ ´Ù¸£°í ·Îµå¸Êµµ Ʋ¸®´Ù.
¶ÇÇÑ, °³ÀÎ »ç¿ëÀÚ¿ë GPU´Â ±â¼ú Áö¿øÀ̳ª À¯Áöº¸¼ö Ãø¸é¿¡¼ ±â¾÷ Àü»ê½ÇÀ̳ª µ¥ÀÌÅͼ¾ÅÍÀÇ ¿î¿µ ±âÁØÀ» ÃæÁ·ÇÏÁö ¸øÇÒ ¼öµµ ÀÖ´Ù.
CPUº¸´Ù GPU¿¡ ÀÇÁ¸ÇÏ´Â ºÎºÐÀÌ ´õ Å« ¿öÅ©·Îµå¶ó¸é GPU¿¡ ´ëÇÑ Àü¹®ÀûÀÎ ±â¼ú Áö¿øµµ ÇÊ¿äÇÏ´Ù.
ÀÌ·± ÀÌÀ¯·Î ¸¹Àº ±â¾÷ÀÌ ÇöÀç ÀΰøÁö´É °ü·Ã °³¹ß ¹× ¿î¿µ ȯ°æ¿¡ ´ëÇÑ ¹Ì·¡ ÅõÀÚ º¸È£ Ãø¸é¿¡¼ ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPU µµÀÔÀ» ¼µÎ¸£°í ÀÖ´Ù.
°ü·ÃÇØ ½Ç¹« ºÎ¼¿¡¼´Â ÀÚÀ² ÁÖÇà, ÃÊÁ¤¹Ð ¾ð¾î·À̹ÌÁö·ÅؽºÆ® ÀνÄ, Áö´ÉÇü ºñµð¿À ºÐ¼®, ±ÝÀ¶ ¸ðµ¨¸µ, ·Îº¿ °øÇÐ, °øÀå ÀÚµ¿È µî ¸¹Àº ºÐ¾ß¿¡¼ ±âÁ¸ ¾÷¹«¸¦ ºÐ¼®ÇØ º´·ÄÈ °¡´ÉÇÑ ºÎºÐÀ» °¡·Á³»°í ÀÖ´Ù.
¶§¸¶Ä§ ¿£ÅÍÇÁ¶óÀÌÁî¿ë GPUÀÇ Æ¯Â¡À» Á÷Á¢ üÇèÇÒ ¼ö ÀÖ´Â À̺¥Æ®°¡ ÁøÇà ÁßÀÌ´Ù.
°ü½É ÀÖ´Â µ¶ÀÚ´Â À¯Å¬¸¯¿¡¼ ÀΰøÁö´É°ú µö·¯´× ¾Ë°í¸®ÁòÀÌ ¾î´À Á¤µµ ¼öÁØÀ¸·Î ¼º´ÉÀÌ ³ô¾ÆÁö´ÂÁö È®ÀÎÇÒ ¼ö ÀÖµµ·Ï ‘¿£ºñµð¾Æ Å×½½¶ó GPU ¹× DGX ½ºÅ×À̼Ç(Station)’ µîÀ» ¹«»óÀ¸·Î Á¦°øÇÏ´Â ºÐ¼® Àü¹®°¡¸¦ À§ÇÑ µ¥¸ð À̺¥Æ®(www.uclick.blog)¿¡ ½ÅûÇÏ¸é µÈ´Ù.
[»ó±â ³»¿ëÀº ÇÊÀÚÀÇ ÁÖ°üÀûÀÎ ÀÇ°ßÀÌ¸ç ¿£ºñµð¾Æ¿Í À¯Å¬¸¯ÀÇ °ø½Ä ÀÔÀåÀÌ ¾Æ´ÔÀ» ¹àÇô µÓ´Ï´Ù]
<À¯Å¬¸¯ ±è±¤Á¤ »ó¹«>kj.kim@uclick.co.kr < ÀúÀÛ±ÇÀÚ © BI KOREA ¹«´ÜÀüÀç ¹× Àç¹èÆ÷±ÝÁö > |