Áý¿¡¼ ¶Ç´Â ¿¬±¸½Ç¿¡¼ »ç¿ëÇÏ°í ÀÖ´Â µ¥½ºÅ©Åé ÄÄÇ»ÅÍ¿¡ °ÔÀÓÀ» À§ÇÑ Ä«µå·Î ¾Ë·ÁÁ® ÀÖ´Â ±×·¡ÇÈ Ä«µå ÇÑ ÀåÀ» Ãß°¡ÇÔÀ¸·Î ÀÎÇؼ °è»ê ¹× ½Ã¹Ä·¹ÀÌ¼Ç ¼Óµµ°¡ 200¹è°¡ »¡¶ó Áø´Ù¸é °ú¿¬ »ç¶÷µéÀº ÀÌ ±â¼úÀ» ¾î¶»°Ô ¹Þ¾Æ µéÀϱî?
¿£ºñµð¾Æ´Â CUDA(Compute Unified Device Architecture)¶ó´Â ±â¼úÀ» Áö³ 2006³â 10¿ù À¥¿¡¼ °ø°³ÇÏ¸é¼ º»°ÝÀûÀ¸·Î °³ÀÎ¿ë ¼öÆÛ ÄÄÇ»ÅÍÀÇ ½Ã´ë¸¦ ¿¾î°¡·Á°í ÇÏ°í ÀÖ´Ù. °ø°³ 3°³¿ù ¸¸¿¡ CUDA µå¶óÀ̹ö ¹× SDK¸¦ ´Ù¿î ¹ÞÀº »ç¶÷Àº 6¸¸¸íÀÌ ³Ñ¾úÀ¸¸ç ÀÌ¹Ì ¹Ì±¹¿¡¼´Â ÀÌ·¯ÇÑ ±â¼úÀ» ÀÀ¿ëÇÏ¿© ¼ÒÇÁÆ® ¿þ¾î¸¦ °³¹ßÇÏ°í ÀÖ´Â º¥Ã³ ¾÷ü°¡ 60°³°¡ ³Ñ¾î ¼¹´Ù.
¹Ì±¹À̳ª ÀϺ»Àº ½Å ±â¼ú µµÀÔ¿¡ ÀÖ¾î¼ Çѱ¹¿¡ ¸î °³¿ù¾¿À̳ª ¾Õ¼³ª°¡°í ÀÖ´Ù. ´ÜÀûÀÎ ¿¹·Î ÀϺ» µ¿°æ°ø¾÷´ëÇÐÀº 2009³â Å×½½¶ó(Tesla)¶ó´Â ¿£ºñµð¾Æ ¼öÆÛ ÄÄÇ»ÅÍ ±×·¡ÇÈ Ä«µå¿Í CUDA¸¦ Àû¿ëÇÏ¿© ¾Æ½Ã¾Æ¿¡¼ °¡Àå ºü¸¥ ¼öÆÛ ÄÄÇ»Åͼ¾Å͸¦ ±¸ÃàÇß´Ù.
¹Ì±¹ ½ºÅÄÆ÷µå ´ëÇп¡¼ ½ÃµµÇÑ Folding@homeÀ» ½ÃÀÛÀ¸·Î SETI@home, Einstein@homeÀ¸·Î È®»êÀÌ µÇ°í ÀÖ´Â ÀÌ ±â¼úÀº À¯·´ ÁÖ¿ä ´ëÇп¡¼µµ Àû¿ëÀÌ µÇ°í ÀÖÀ¸¸ç ´ë¸¸¿¡ ÀÖ´Â ´ëÇб³ ¹× Áß±¹ Īȴ뿡¼µµ 200 ³ëµå(node) ÀÌ»óÀÌ ±¸ÃàÀÌ µÇ¸é¼ »õ·Î¿î Æä·¯´ÙÀÓ¿¡ ÀÔ°¢ÇÑ ¼öÆÛ ÄÄÇ»ÅÍÀÇ ¼Óµµ °æÀïÀÌ ½ÃÀÛÀÌ µÇ°í ÀÖ´Ù.
¿£ºñµð¾ÆÀÇ µ¥À̺ñµå Ä¿Å©(David Kirk) ¹Ú»ç´Â º´·Ä ÄÄÇ»Æà ¼Ö·ç¼ÇÀ» ¼Ò°³ÇÏ´Â ÀÚ¸®¿¡¼ "¸¸¾à¿¡ ´ç½ÅÀÇ ÄÄÇ»ÅÍ°¡ 20~30% ¼º´É¿ìÀ§¸¦ º¸Àδ٠Çصµ ºñ¿ëÀû Ãø¸éÀ» »ý°¢Çؼ ÄÄÇ»Å͸¦ ±³Ã¼ÇÒÁö ¸»Áö¿¡ ´ëÇÑ °í¹ÎÀ» ÇÒ °ÍÀÌ´Ù. 2~3¹è°¡ »¡¶ó Áø´Ù¸é ½É°¢ÇÏ°Ô °í¹ÎÀ» ÇÏ°í ±Ã±ØÀûÀ¸·Î´Â ÄÄÇ»Å͸¦ ±³Ã¼ÇÒ °ÍÀÌ´Ù. ±×·±µ¥ 100~200¹è±îÁö »¡¶óÁø´Ù¸é? ÀÌ·¯ÇÑ »óȲ¿¡¼µµ »õ·Î¿î ±â¼úÀ» µµÀÔÇÏÁö ¾Ê´Â´Ù´Â °ÍÀº ´ÜÁö ±× »ç¶÷ÀÌ ±× »ç½ÇÀ» ¸ô¶ú°Å³ª °ÔÀ¸¸¥ °ÍÀÌ´Ù"¶ó°í ±â¼úÇϱ⵵ Çß´Ù.
ÀÌ ÀÚ¸®¿¡¼ ¼Ò°³µÇ´Â ¿£ºñµð¾ÆÀÇ º´·Ä ÄÄÇ»Æà ¼Ö·ç¼ÇÀº Æз¯´ÙÀÓ ÀüȯÀ» ÀÏÀ¸Å°±â¿¡ ÃæºÐÇÑ »õ·Î¿î ÄÄÇ»ÅÍ ½Ã´ëÀÇ Çõ¸íÀûÀÎ ±â¼úÀÌ´Ù. ÀÌÁ¦ CUDA¶ó´Â ±â¼ú°ú Å×½½¶ó¸¦ ÅëÇؼ º¸´Ù ¸¹Àº ¿¬±¸¸¦, ±×¸®°í ¸·´ëÇÑ ¾çÀÇ µ¥ÀÌÅ͸¦ ¾ÆÁÖ ÂªÀº ½Ã°£ ¾È¿¡ ó¸®ÇÒ ¼ö ÀÖ°Ô µÇ¸ç ÇÑ ´ÞÀ̳ª °É¸®´ø ½Ã¹Ä·¹ÀÌ¼Ç ÀÛ¾÷À» ¸î ½Ã°£ ¾È¿¡ ³¡³¾ ¼ö ÀÖ°Ô µÊÀ¸·Î½á »ó»óµµ ÇÏÁö ¸øÇß´ø Çо÷ ¹× ¿¬±¸ ¼º°ú¸¦ °ÅµÑ ¼ö ÀÖ°Ô µÉ °ÍÀÌ´Ù.
¶Ç ÇÑ°¡Áö ÁÖ¸ñÇÒ ¸¸ÇÑ »çÇ×Àº ȹ±âÀûÀÎ ¼Óµµ °³¼± Ãø¸é ¸»°íµµ °³ÀÎ¿ë ¼öÆÛÄÄÇ»ÅÍÀÇ ¹ßÀü °¡´É¼ºÀ̶ó´Â ±â¹Ý À§¿¡¼ ±Þ°ÝÇÑ ¼ÒÇÁÆ®¿þ¾îÀÇ ¹ßÀüÀÌ ÀÌ·ç¾îÁü°ú µ¿½Ã¿¡ º´·Ä ÄÄÇ»ÅÍ °³¹ßÀÚ¿¡ ´ëÇÑ ¼ö¿ä°¡ ´Ã¾î³¯ °ÍÀ̶ó´Â Àü¸ÁÀÌ´Ù.
ÀÌ¹Ì Àü¼¼°è¿¡ 1¾ï ´ë ÀÌ»ó, º´·Ä ÄÄÇ»ÆÃÀÌ °¡´ÉÇÑ ¿£ºñµð¾Æ ±×·¡ÇÈ Ä«µå°¡ ÀåÂøµÇ¾î ÀÖ´Ù´Â »ç½Ç ¸¸À¸·Îµµ CUDA¸¦ ÀÌ¿ëÇØ °³¹ßµÈ ¼ÒÇÁÆ®¿þ¾î´Â ±× ¼º°ø °¡´É¼ºÀÇ ¹ÝÀ» °®°í ½ÃÀÛÀ» ÇÏ°Ô µÇ´Â °ÍÀ̱⠶§¹®ÀÌ´Ù. µû¶ó¼ À̹ø °Á¿¡¼´Â CUDA¸¦ ÀÌ¿ëÇÑ ¼Ö·ç¼ÇÀÇ ÇöȲÀ» ¼Ò°³ µå¸®°í ÇâÈÄ ½ÃÀå¿¡ ´ëÇÑ Àü¸ÁÀ» »ìÆ캸°íÀÚ ÇÑ´Ù.
±×·¡ÇÈ Ä«µå¸¦ ÀÌ¿ëÇÑ º´·Ä ÄÄÇ»Æÿ¡ ´ëÇÑ ÀÌÇØ
¢º Architecture Evolution
ÄÄÇ»ÅÍÀÇ ÁøÈ´Â ¾ÆÅ°ÅØó(architecture)»óÀ¸·Î º¼ ¶§ Å©°Ô Á÷·Ä(serial)ÀÎ ÁøÈ ¹æ½Ä°ú º´·Ä(parallel) ¹æ½Ä µÎ °¡Áö¸¦ º´ÇàÇÏ¸é¼ ¹ßÀüÀ» °ÅµìÇØ ¿Ô´Ù. Á÷·Ä¹æ½Ä ÁøÈ ¶óÀÎÀº Áö³ 1960³â 12¿ù PDP-1°ú 1964³â IBM 360 systemÀ» ±â¹ÝÀ¸·Î ½ÃÀÛÀÌ µÇ¾úÀ¸¸ç, 1965³â PDP-8¿¡ À̸£·¯ ÃÖÃÊ·Î ¹Ì´Ï ÄÄÇ»ÅͷμÀÇ ¸ð½ÀÀ» µå·¯³»°Ô µÈ´Ù. Áö³ 1971³â IntelÀÇ 4004·Î ½ÃÀÛµÈ ¸¶ÀÌÅ©·Î ÇÁ·Î¼¼¼´Â 1991³â 12¿ù¿¡ CMOS CPUµµÀÔ°ú ´õºÒ¾î º»°ÝÀûÀÎ ¼Óµµ °æÀï¿¡ ºÒÀ» ºÙÀÌ°Ô µÈ´Ù.
º´·Ä¹æ½Ä ÁøÈ´Â 1966³â UIUC¿¡ ÀÇÇØ °í¾ÈµÈ ILLIAC IV °¡ ÃÖÃÊÀÇ ¶óÁö ½ºÄÉÀÏ(large-scale) º´·Ä ¾î·¹ÀÌ(array) ÄÄÇ»Åͷμ µîÀç°¡ µÊÀ¸·Î½á ½ÃÀÛÀÌ µÈ´Ù. Á¤ÀÛ º»°ÝÀûÀÎ °¡µ¿Àº 1972³â NASA Ames¿¡¼ ½ÃÀÛÀÌ µÇ¾úÁö¸¸, ±×°ÍÀº 64°³ÀÇ ÇÁ·Î¼¼¼¸¦ °¡Áö´Â SIMD machineÀ̾úÀ¸¸ç, 1976³â CRAY I´Â ÃÖÃÊÀÇ commercial vector machineÀ¸·Î¼ ÇâÈÄ 1983³â NASA MPP, 1986³â CM-1 ±×¸®°í 1990³â´ë MasPar MP-1¿¡ Áö´ëÇÑ ¿µÇâÀ» ¹ÌÄ¡°Ô µÈ´Ù. ¿Ö³ÄÇÏ¸é ±×°ÍÀ» ÅëÇØ SIMD machineó·³ ÇÁ·Î±×·¥ÀÌ °¡´ÉÇØÁ³±â ¶§¹®ÀÌ´Ù.
ÇÑÆí, ¿£ºñµð¾Æ´Â ÀÌ·¯ÇÑ ÁøÈ ¶óÀλ󿡼 ÇÁ·Î±×·¥ÀÌ °¡´ÉÇÑ ±×·¡ÇÈ Ä«µå G80À» 2007³â¿¡ Ãâ½ÃÇÏ¸é¼ ÁøÈ¿¡ ¶Ç Çѹø Å« ȹÀ» ±ß°Ô µÈ´Ù.
¡ã '¸Å´ÏÄÚ¾î'ÀÇ GPU, '¸ÖƼÄÚ¾î'ÀÇ CPU°¡ °¢°¢ÀÇ ±æÀ» °É¾î ¿À´Ã¿¡ À̸£·¶´Ù. (Á¦°ø : ¿£ºñµð¾Æ)
¢º Parallel Computing¿¡ ´ëÇÑ Áö¼ÓÀûÀÎ ¿¬±¸
»ç½Ç º´·Ä¹æ½Ä ÁøÈ ¶óÀλ󿡼 ÄÄÇ»ÅÍ ¿¬±¸¸¦ Çß´ø »ç¶÷µéÀº ±× ¹«ÇÑÇÑ °¡´É¼ºÀ» º¸°í Áö¼ÓÀûÀÎ ¿¬±¸ ¹× ÅõÀÚ¸¦ ÇØ ¿ÔÀ¸³ª ±×´ÙÁö Å« ¼º°ú´Â ¾òÁö ¸øÇÏ°í ÀÖ¾ú´Ù. ±×·¡ÇÈÄ«µå°¡ º»°ÝÀûÀ¸·Î ÄÄÇ»ÅÍ¿¡ ÀÖ¾î¼ Áß¿äÇÑ ¿ä¼Ò·Î¼ ÀνĵDZ⠽ÃÀÛÇÑ 1990³â´ë ¸»ºÎÅÍ °³¹ß ȯ°æÀº °³¼±ÀÌ µÇ¾ú°í, 'GPGPU'¶ó´Â ¸í¸ñ ÇÏ¿¡ º¸´Ù ¸¹Àº »ç¶÷µéÀÌ ¿¬±¸¿¡ ¶Ù¾îµé¾úÁö¸¸ Shader ¾ð¾îÀÇ º¹ÀâÇÑ ±¸Á¶¿Í Á¦ÇÑÀûÀÎ ¿ä¼Ò·Î ¸»¹Ì¾Ï¾Æ Å©°Ô È®»êÀÌ µÇÁö´Â ¸øÇß´Ù.
±× »çÀÌ Á÷·Ä¹æ½ÄÀÇ ÁøÈ´Â X86À» ±â¹ÝÀ¸·Î Áö¼ÓÀûÀÎ ¹ßÀüÀ» °ÅµìÇÏ°í ÀÖ¾ú´Ù. ÀÌ·¯ÇÑ ÀÌÀ¯·Î ÀÎÇØ ¿£ºñµð¾Æ µ¥À̺ñµå Ä¿Å©(David Kirk) ¹Ú»ç¿¡ ÀÇÇØ °í¾ÈµÈ 'ProgrammableÇÑ ±×·¡ÇÈ Ä«µå' G80ÀÇ Ãâ½Ã¿Í CUDAÀÇ °ø°³´Â Æø¹ßÀûÀÌ È£ÀÀÀ» ¾ò°ÔµÇ¾ú°í Æз¯·¼ ÄÄÇ»ÆÃÀÇ ±âÆøÁ¦·Î¼ ÀÛ¿ëÀ» ÇÏ°Ô µÈ´Ù. X86 ±â¹ÝÀÇ CPU Ŭ·° ½ºÇǵ尡 ÇÑ°èÁ¡¿¡ µµ´ÞÇÏ¸é¼ µà¾óÄÚ¾î·ÎÀÇ ÀüȯÀÌ ÀÌ·ç¾îÁö°í ÀÖ´ø 2006³â ¸»ÀÌ ±× ½ÃÁ¡ÀÌ µÇ¸ç, À̸¦ ÅëÇØ º»°ÝÀûÀÎ 'Personal Super Computer' ½Ã´ëÀÇ ¼¸·ÀÌ ¿¸®°Ô µÈ´Ù.
ÇÑÆí, Çѱ¹¿¡¼´Â ±×·¡ÇÈÀ» Àü¹®ÀûÀ¸·Î ¿¬±¸ÇÏ´ø »ç¶÷µéÀº KCGS(Korea Computer Graphics Society)¸¦ ÁÖÃàÀ¸·Î, ±×°£ ½ÀµæµÈ Æз¯·¼¸®Áò(Parallelism)¿¡ ÀÔ°¢ÇÏ¿© ¼Õ½±°Ô ÀÌ »õ·Î¿î ±â¼úÀ» ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú°í, À̸¦ ÅëÇØ 1³âÀ̶ó´Â ªÀº ±â°£ µ¿¾È¿¡ »ó»óµµ ÇÏÁö ¸øÇÒ ÇõÇõÇÑ ¿¬±¸ ¼º°ú¸¦ ³»°Ô µÈ´Ù.
¡ã CUDA´Â °¡Àå Çö½Ç¼º ³ôÀº ´ë¾ÈÀ¸·Î ¾÷°è, Çа迡¼ ¹Þ¾Æµé¿©Áö°í ÀÖ´Ù. (Á¦°ø : ¿£ºñµð¾Æ)
¢º Paradigm Shift - Heterogeneous Computing
MassiveÇÑ Æз¯·¼ ÄÄÇ»Æà ´É·ÂÀ» ÀÚ¶ûÇÏ´Â ¿À´Ã ³¯ÀÇ GPU´Â High Performance Computing(HPC)¿¡ ÀÖ¾î¼ °¡Àå ÀûÇÕÇÑ ¼Ö·ç¼ÇÀ̶ó°í Æò°¡µÇ°í ÀÖÀ¸¸ç, ¼¼»ó¿¡¼ °¡Àå ºü¸£°Ô È®»êÀÌ µÇ°í ÀÖ´Â ±â¼ú Áß Çϳª·Î ²ÅÇôÁø´Ù.
ƯÈ÷ Çмú, °è»ê ºÐ¾ß¿¡ ÀÖ¾î¼ÀÇ ¼º°ú ¹× ¼Óµµ´Â °¡¼Óȵǰí ÀÖÀ¸¸ç ÇìÅ×·ÎÁö´Ï¾î½º ÄÄÇ»ÆÃ(Heterogeneous computing)À» ÅëÇØ ½Ã½ºÅÛÀ» ÃÖÀûÈ ÇÔÀ¸·Î½á CPU´Â Operating System, Task ó¸®¿Í °°Àº ¼øÂ÷ÀûÀÎ ¾÷¹«¸¦ À§ÁÖ·Î, GPU´Â ¸Å½Ãºê µ¥ÀÌÅ͸¦ ó¸®ÇÏ°Ô µÈ´Ù.
GPU´Â CPU ´ëºñ 10¹è °¡±î¿î ¸Þ¸ð¸® ÀÎÅÍÆäÀ̽º ½ºÇǵå¿Í Ĩ¿¡ µû¶ó 240°³ ÀÌ»óÀÇ Äھ¼ µ¿½Ã¿¡ µ¥ÀÌÅ͸¦ ó¸® ÇÔÀ¸·Î¼ ÃÖ´ë 200¹è ÀÌ»ó ±îÁöµµ °è»ê ¼Óµµ¸¦ ³ôÀÏ ¼ö ÀÖ´Ù. ¶ÇÇÑ ½Ã½ºÅÛÀ» ÃÖÀûÈ ½Ãų ¼öµµ ÀÖ´Ù.
¡ã CPU´Â ¿ÀÆÛ·¹À̼Ç, GPU´Â µ¥ÀÌÅÍ Ã³¸®, ºÐ¾÷ÈµÈ Ã¼°è¿¡¼ È¿À²¼ºÀ» ³ôÀδÙ. (Á¦°ø : ¿£ºñµð¾Æ)
¡ã CPU¿Í GPU´Â °¢°¢ÀÇ ±¸Á¶ÀûÀΠƯ¡ÀÌ ¶Ñ·ÇÇØ ÇÔ²² ¾²´Â °ÍÀÌ '´ç¿¬ÇÑ' ÀÏ. (Á¦°ø : ¿£ºñµð¾Æ)
HPC¿¡ ÀÖ¾î¼ÀÇ ¼±±¸ÀÚ·Î ¾Ë·ÁÁ® ÀÖ´Â Jack Dongarra(Distinguished Professor, University of Tennessee, Author of LINPACK)´Â ÇìÅ×·ÎÁö´Ï¾î½º ÄÄÇ»ÆÃ(Heterogeneous Computing)ÀÇ ¿ëÀ̼º°ú ±× ¼º´ÉÀ» ÀÌ·¸°Ô °Á¶ÇÑ´Ù. "GPU´Â Çö½ÇÀûÀ¸·Î ½ÇÁúÀû Àû¿ëÀÌ °¡´ÉÇÑ ¼ö ¸¹Àº ¾ÖÇø®ÄÉÀ̼Ç(Applications)µéÀ» ÇÊ¿ä·Î ÇÏ´Â °÷¿¡¼ ½±°Ô Àû¿ëÀÌ µÇ¾î ¿ÔÀ¸¸ç, ¸ÖƼÄÚ¾î ½Ã½ºÅÛ¿¡ ÀÖ¾î¼ ÇöÀúÇÑ ¼º´É °³¼±À» º¸¿´´Ù. ¹Ì·¡ÀÇ ÄÄÇ»Æà ¾ÆÅ°ÅØó´Â ¸ÖƼÄÚ¾î¿Í Æз¯·¼ÄÚ¾î GPU¿ÍÀÇ ÇÏÀ̺긮µå ½Ã½ºÅÛÀÌ µÉ °ÍÀÌ´Ù"¶ó°í ¸»Çß´Ù.
CUDA¿¡ Å« ±â´ë¿Í °¡´É¼ºÀ» °É°í ÀÖ´Â Jack Dongarra´Â ¼±Çü ´ë¼öÇп¡ ÀÖ¾î¼ 'Numerical' ¾Ë°í¸®ÁòÀ» Ư¼ºÈ ½ÃŲ »ç¶÷ÀÌÀÚ º´·ÄÄÄÇ»Æà ±â¼ú ¹× toolsÀ» ÀüÆÄÇÏ°í EISPACK, LINPACK, BLAS, LAPACK, ScaLAPACK, NetLib, MPI µîÀÇ ¿ÀǼҽº ¼ÒÇÁÆ®¿þ¾î ¹ßÀü¿¡ ±â¿©¸¦ ÇÑ »ç¶÷À̱⵵ ÇÏ´Ù.
ÇÑÆí, HPC(high-performance computer) ¹× º´·Ä ÄÄÇ»Å͸¦ À§ÇÑ ÇÁ·Î±×·¡¹Ö ¾ð¾îÀÇ ¼±±¸ÀÚÀÎ Burton Smith´Â ´ÙÀ½°ú °°ÀÌ ¸»Çϱ⵵ Çß´Ù. "¿ì¸®´Â Áö³ ¼ö ½Ê ³â°£ µ¥½ºÅ©Åé ½´ÆÛÄÄÇ»ÅÍ¿¡ ´ëÇÑ °¡´É¼º¿¡ ´ëÇؼ À̾߱⸦ ÇØ¿Ô´Ù. Áö±ÝÀÌ ¹Ù·Î ±× Çö½ÇÀÌ ´Ù°¡¿Â °Í °°´Ù. ÇìÅ×·ÎÁö´Ï¾î½º ÄÄÇ»ÆÃ(Heterogeneous Computing)ÀÌ ¹Ù·Î µ¹Æı¸¸¦ ¸¶·ÃÇØ ÁÖ°í ÀÖ´Ù"°í ¸»ÀÌ´Ù.
Burton Smith´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿¡ ÀÔ»çÇϱâ ÀÌÀü¿¡ Å©·¹ÀÌ(Cray)¿¡¼ Chief Scientist·Î¼ ÀÏÀ» Çß¾ú´Ù. Áö³ 2003³â¿¡ Burton Smith´Â 'IEEE Computer Society'·ÎºÎÅÍ 'The Seymour Cray Computer Engineering Award'¸¦ ¼ö»óÇÏ¿´°í 'The National Academy of Engineering'À¸·Î ¼±ÃâÀÌ µÇ±âµµ Çß´Ù.
¡ã CPU°¡ GPU¸¦, GPU°¡ CPU¸¦ ¿ÏÀüÈ÷ ´ëüÇϱ⿡´Â µÑÀÇ »çÀÌ°¡ ¸Å¿ì ¸Ö´Ù. (Á¦°ø : ¿£ºñµð¾Æ)
¾Õ¼ µÎ »ç¶÷ÀÇ Àο뿡¼ º¸µíÀÌ Heterogeneous computingÀº ¿£ºñµð¾ÆÀÇ CUDA ±â¼úÀ» ÅëÇØ ½ÇÁúÀûÀ¸·Î °¡´ÉÇÏ°Ô µÇ¾ú´Ù. ÀÌ¹Ì Æз¯´ÙÀÓ º¯È´Â ¿ì¸® ÁÖº¯¿¡¼ ÀϾ°í ÀÖÀ¸¸ç »õ·Î¿î º¯È¸¦ ¹Þ¾ÆµéÀÌ´Â °Í ¸¸ÀÌ ³²¾Æ ÀÖ´Â »óÅÂÀÌ´Ù.
ÀÌÁ¦´Â ½Ì±Û ÇÁ¸®½ÃÀü(Single Precision)À¸·Î ¹«·Á 1 Å׶óÇ÷ӽº(Tera Flops) ¼º´ÉÀ» °®´Â Tesla C1060À» ¿öÅ©½ºÅ×ÀÌ¼Ç PCI Express x16 ½½·Ô¿¡ 4´ë¸¦ ÀåÂø ÇÔÀ¸·Î¼ Áý¿¡¼ ¶Ç´Â ¿¬±¸½Ç Ã¥»ó¿¡¼ 4 Tera Flops ¼º´ÉÀÇ ½´ÆÛÄÄÇ»Å͸¦ »ç¿ëÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù. KISTI¿¡¼ ¿î¿µÇÏ´ø 3È£±âÀÇ ¼º´ÉÀÌ 7 Å׶óÇ÷ӽº Á¤µµÀÓÀ» °¨¾ÈÇÏÀÚ¸é °¡È÷ Çõ¸íÀûÀÎ »ç°ÇÀ̶ó ¾Æ´ÏÇÒ ¼ö ¾ø´Ù.
¡ã ±×·¡ÇÈÄ«µå ó·³ ¸ðµâÀ» ÀåÂøÇØ PC¸¦ HPC·Î ¸¸µé ¼ö ÀÖ´Â ¼¼»óÀÌ ¿Ô´Ù. (Á¦°ø : ¿£ºñµð¾Æ)
õü ¹°¸®¿¡¼ÀÇ Nbody SimulationÀ̳ª À¯Ã¼ ¿ªÇп¡¼ÀÇ Fluid SimulationÀº Á¦ÇÑÀûÀ¸·Î ¹Û¿¡ »ç¿ëÀÌ ¾È µÇ´Â ¼öÆÛÄÄÇ»Å͸¦ ÅëÇؼ °¡´ÉÇß´ø ÀÏÀ̾ú´Ù.
¸¸¾à¿¡ ÀÚ½ÅÀÌ °®°í ÀÖ´Â ÄÄÇ»ÅÍ¿¡¼ ÀÌ·¯ÇÑ ½Ãµµ¸¦ Çß¾ú´ø »ç¶÷À̶ó¸é, ±×°Íµµ ¸î ´ëÀÇ Å¬·¯½ºÅ͸µÀ» ÅëÇؼ, ±× °á°ú´Â ¾ÆÁÖ ¸¹Àº Àγ»¸¦ ¿ä±¸ÇÏ´Â ÀÛ¾÷À̾úÀ» °ÍÀÌ´Ù. ÇÊ¿ä¿¡ µû¶ó¼´Â °á°ú¸¦ ÇÑ ´Þ ÀÌ»ó ±â´Ù¸®°Å³ª ¾Æ¿¹ ´Ù¸¥ ¿¬±¸·Î ÁÖÁ¦¸¦ ¹Ù²Û °æ¿ìµµ ¸¹¾ÒÀ» °ÍÀ̶ó »ý°¢À» Çغ»´Ù. ÀÌ·¯ÇÑ ¿¬±¸µéÀÌ ÇÏ·ç ¸¸¿¡ ÀÚ½ÅÀÇ PC¿¡¼ °á°ú¸¦ ¾òÀ» ¼ö ÀÖ°Ô µÈ °ÍÀÌ´Ù.
ÀÌ·¯ÇÑ º¯È´Â ºñ´Ü ÆÛ½º³Î ½´ÆÛÄÄÇ»ÅÍ¿¡¼ »Ó¸¸ÀÌ ¾Æ´Ï¶ó ±âÁ¸ÀÇ ÀüÅëÀûÀÎ ½´ÆÛÄÄÇ»Åͼ¾ÅÍ¿¡¼µµ ÀϾ°Ô µÇ´Âµ¥, ´ëÇ¥ÀûÀ¸·Î ¾Æ½Ã¾Æ ±Ç¿¡¼´Â Áö³ 2007³â ¸»ºÎÅÍ ÃßÁøµÇ´Â Áß±¹ÀÇ ÄªÈ´ë Tesla Server 200 node ±¸Ãà°ú 2008³â ÇϹݱâºÎÅÍ ½ÃÀ۵ǰí ÀÖ´Â Toyko Titech S1070ÀÇ ±¸ÃàÀ» ¿¹·Î µé ¼ö ÀÖ´Ù.
¼öÆÛ ÄÄÇ»ÅÍÀÇ ¼Óµµ°¡ ±¹°¡ °æÀï·ÂÀÇ Ã´µµ°¡ µÈ´Ù´Â Á¡À» °¨¾ÈÇÑ´Ù¸é À̵éÀÇ ¹ß ºü¸¥ Çຸ´Â ´ç¿¬ÇÑ °á°ú·Î¼ ¹Þ¾Æµé¿©Áú ¼ö ÀÖ´Ù. ½ÇÁ¦·Î Tokyo TitechÀº ÇöÀç ¾Æ½Ã¾Æ¿¡¼ °¡Àå ºü¸¥ ¼öÆÛ ÄÄÇ»Å͸¦ º¸À¯ÇÏ°Ô µÇ¾úÀ¸¸ç À̸¦ Ãß¿ùÇϱâ À§ÇØ ´ë¸¸Àº ÇöÀç 1 Peta Flops ½Ã½ºÅÛÀ» ±¸ÃàÇϱâ À§Çؼ Àû±ØÀûÀ¸·Î Tesla¸¦ °ËÅäÇÏ°í ÀÖ´Â »óȲÀÌ´Ù.
¡ã ±âÁ¸ CPU ±â¹Ý Ŭ·¯½ºÅ͸µº¸´Ù GPU ±â¹Ý ¼³ºñ°¡ À¯¸®ÇÑ Ãø¸éÀÌ Á¸ÀçÇÑ´Ù. (Á¦°ø : ¿£ºñµð¾Æ)
Å×½½¶óÀÇ µµÀÔÀÌ °¡Á®´Ù ÁÖ´Â ÀåÁ¡Àº Å©°Ô ¼¼ °¡Áö·Î º¼ ¼ö ÀÖ´Ù. ù°´Â È¿À²ÀûÀÎ °ø°£ ÀÌ¿ëÀÌ´Ù. À§ ±×¸²¿¡¼ º¸´Â °Íó·³ 100 Å׶óÇ÷ӽº ±Ô¸ðÀÇ µ¥ÀÌÅͼ¾Å͸¦ ±¸ÃàÇÑ´Ù°í ºÃÀ» ¶§, °ø°£ È¿À²Àº ±âÁ¸ÀÇ CPU ±â¹Ý ¼¹ö¸¸À» »ç¿ëÇßÀ» ¶§º¸´Ù ´ë·« 20ºÐÀÇ 1 Á¤µµÀÇ È¿À²¼ºÀ» °¡Á®´Ù ÁØ´Ù. CPU 1U ¼¹ö 1,429´ë°¡ ÇÊ¿äÇß´ø °ÍÀÌ ÇìÅ×·ÎÁö´Ï¾î½º ÄÄÇ»Æà ¹æ½ÄÀ» ¾²°Ô µÇ¸é 50´ëÀÇ 1U ·¢ ¼¹ö·Î µ¿±Þ ¼º´ÉÀ» ³¾ ¼ö ÀÖ´Ù.
ÀÌ¿¡ µû¶ó ´ç¿¬ÇÏ°Ôµµ ºñ¿ë Àý°¨È¿°ú¸¦ ´©¸± ¼ö ÀÖ´Ù. ¹Ù·Î ÀÌ Á¡ÀÌ µÎ ¹ø° ÀåÁ¡À¸·Î ²ÅÀ» ¼ö ÀÖ´Â ºÎºÐÀÌ´Ù. Green IT°¡ Áß¿ä½Ã µÇ´Â ÇâÈÄ ½ÃÀå¿¡ ÀÖ¾î¼ È¹±âÀûÀ¸·Î ¼ÒºñÀü·ÂÀ» ÁÙÀÏ ¼ö ÀÖ´Ù´Â °ÍÀÌ ±× ¼¼ ¹ø° ÀåÁ¡ÀÌ´Ù.
½ÇÁ¦·Î 100TF SP¿î¿µ¿¡´Â ¿¬°£ 10¾ï¿ø¿¡ °¡±î¿î Àü±â¿ä±ÝÀÌ ³ª°¡°Ô µÇ´Âµ¥ À̸¦ 5õ¸¸¿ø Á¤µµ±îÁö ÁÙÀÏ ¼ö ÀÖ´Ù´Â °ÍÀº À¯Áö º¸¼ö ºñ¿ëÀÌ ¸¹ÀÌ µé¾î°¡´Â ¼öÆÛ ÄÄÇ»ÅÍ ¼¾ÅÍ¿¡´Â ÂüÀ¸·Î ÀûÇÕÇÑ ºÎºÐÀÌ´Ù. ¿ª ¹ß»óÀ» ÇÑ´Ù¸é ºñ½ÁÇÑ °ø°£°ú ºñ¿ëÀ¸·Î 2 ÆäŸÇ÷ӽº(Pera Flops)ÀÇ ¼¾ÅÍ ±¸ÃàÇÒ ¼ö ÀÖ´Ù´Â ³í¸®µµ °¡´ÉÇØ Áø´Ù.
CUDA ¿¬±¸ ¼º°ú ¹× Àû¿ë »ç·Ê
¢º °úÇÐ, ¿¬±¸ ¸ñÀû ÇÁ·Î±×·¥, ÀÌÁ¦´Â CUDA·Î Àüȯ
Çϵå¿þ¾îÀÇ ¹ßÀüÀº ¶ÇÇÑ ¼ÒÇÁÆ®¿þ¾îÀÇ ¹ßÀüÀ» µ¿¹ÝÇϱ⠸¶·ÃÀÌ´Ù. ÇÏÁö¸¸ ÃÖ±Ù ¸î ³â »ý°¢º¸´Ù ÈξÀ ºü¸£°Ô ¹ßÀüÀÌ µÇ¾î¿Â Çϵå¿þ¾î ¹× ÀÎÇÁ¶ó½ºÆ®·°Ã³ÀÇ ±¸Ãà¿¡ ´ëºñÇØ, »ó´ëÀûÀ¸·Î ÀÌ·¯ÇÑ ÀÚ¿øÀ» ÀÌ¿ëÇϱâ À§ÇÑ ¼ÒÇÁÆ®¿þ¾îÀÇ ¹ßÀüÀº ´õµð°Ô ÁøÇàÀÌ µÇ¾î ¿Ô´Ù.
½Ã½ºÅÛÀÌ ±¸ÃàÀÌ µÇ¾î À־ ´çÀå Heterogeneous ComputingÀ» ÀÌ¿ëÇؼ µ¹¸± ¼ö ÀÖ´Â »ó¿ëÈµÈ ¾ÖÇø®ÄÉÀ̼ǵéÀÌ ¸¹Áö ¾Ê±â ¶§¹®Àε¥, ÀÌ´Â CUDA¶ó´Â ¾ð¾î°¡ C¾ð¾î¿Í À¯»çÇؼ ¹è¿ì±â´Â ½±Áö¸¸, ½ÇÁúÀûÀ¸·Î º´·ÄÈ ¾Ë°í¸®ÁòÀ» ÀÌÇØÇؼ ÇÁ·Î±×·¥À» CUDA·Î ¹Ù²ãÁÖ´Â °ÍÀÌ ±×·¸°Ô ½¬¿î ÀÛ¾÷¸¸Àº ¾Æ´Ï±â ¶§¹®ÀÌ´Ù.
¶§¹®¿¡ CUDA¸¦ È°¿ëÇÑ ¿¬±¸ ¼º°ú´Â Á÷Á¢ ÇÁ·Î±×·¥À» ¸¸µé°Å³ª °³¹ßÀ» Çؼ »ç¿ëÀ» ÇÏ°í ÀÖ´Â ´ëÇа¡, ¿¬±¸¼Ò µîÀ» Áß½ÉÀ¸·Î ³ªÅ¸³ª°Ô µÈ´Ù. ´ç¿¬È÷ ¼ö ¸¹Àº ½ÃÇà Âø¿À¸¦ °ÅÄ¡°Ô µÇÁö¸¸ ÀÚÁÖ »ç¿ëÀÌ µÇ´Â ¾Æ·¡¿Í °°Àº ¾Ë·Î¸®Áò¿¡¼ ÃÖ¼Ò 20¹è¿¡¼ ÃÖ´ë 137¹è °¡±îÀÌ »¡¶óÁö´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ°Ô µÈ´Ù.
¡ã Çа迡¼´Â CUDA µµÀÔÀÌ ¾÷°èº¸´Ù ºü¸£°Ô ÁøôµÇ°í ÀÖ´Ù. (Á¦°ø : ¿£ºñµð¾Æ)
¢º ¿¬±¸ Çмú ºÐ¾ß¿¡¼ÀÇ ¼º°ú
¿£ºñµð¾Æ CUDA zone(http://www.nvidia.com/object/cuda_home.html)À» µé¾î°¡°Ô µÇ¸é 250°³ Á¤µµÀÇ ¹®¼ ¶Ç´Â ¾ÖÇø®ÄÉÀÌ¼Ç µîÀÌ ¿Ã¶ó¿Í ÀÖ´Ù. ÀÌÁß¿¡¼ ¸î °¡Áö ´ëÇ¥ÀûÀÎ ¼º°ú¸¦ ¼Ò°³ÇÏ°Ú´Ù.
Ä«¸Þ¶ó¸¦ ÅëÇÑ ¿ÀºêÁ§Æ® ÀÎ½Ä ¼Óµµ °³¼±¿¡ ´ëÇÑ ¿¬±¸´Â 'Augmented Reality'·ÎÀÇ Àû¿ë ¹× ÀÚµ¿Â÷ ÀÚµ¿ Ç×¹ý ½Ã½ºÅÛ ¹× ÁÖÇà Áß Ãæµ¹¿¡ ´ëÇÑ °æ°í¸¦ ½Ç½Ã°£À¸·Î °¡´ÉÇÏ°Ô ÇÑ´Ù. ¶ÇÇÑ ºÐÀÚ ¿ªÇÐ ºÐ¾ß ¼ÓµµÀÇ °³¼±Àº ½Å¼ÒÀç °³¹ß ¹× ½Å¾à °³¹ß¿¡ ¿µÇâÀ» ÁÙ °ÍÀÌ¸ç ³ª¾Æ°¡¼´Â ¹°¸®ÇÐ, »ý¹°ÇÐ, ¹ÙÀÌ¿À ¹× ³ª³ë ±â¼ú¿¡ Áö´ëÇÑ ¿µÇâÀ» ÁÙ °ÍÀ̶ó »ý°¢ÀÌ µç´Ù.
H.264 ÀÎÄÚµù(encoding) ¼Óµµ °³¼±Àº ¸ÖƼ¹Ìµð¾î ½ÃÀå¿¡¼ÀÇ ±Þ°ÝÇÑ º¯È¸¦ °¡Á®´Ù ÁÙ °ÍÀÌ´Ù. ±âÁ¸ Æ÷ÅлçÀÌÆ®¿¡¼´Â À̹ÌÁö ¶Ç´Â ÅؽºÆ® ±â¹ÝÀÇ ¼ºñ½º¸¦ ½Ç½ÃÇÏ°í ÀÖ¾úÁö¸¸ µ¿¿µ»ó UCC·ÎÀÇ ¼ºñ½º Àüȯ°ú ¸Â¹°·Á ¼¹ö ºÎÇÏ´Â Å« ¹®Á¦·Î¼ ´ëµÎµÇ°í ÀÖ´Â ½ÃÁ¡¿¡¼ ÀÌ·¯ÇÑ ±â¼úÀº ±â¾÷ÀÇ ºÎ´ãÀ» ÁÙ¿© ÁÖ´Â °á°ú¸¦ °¡Á®´Ù ÁÙ °ÍÀÌ´Ù. ¶ÇÇÑ IPTV ¼ºñ½º¸¦ ÃËÁø½Ãų ¼ö ÀÖ´Â °è±â°¡ µÉ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
ÀÌ¹Ì ±¹³» À¯¸í Æ÷ÅÐ »çÀÌÆ®¿Í ¹æ¼Û±¹¿¡¼´Â Å×½½¶ó(Tesla)ÀÇ °ËÅä°¡ ½ÃÀÛÀÌ µÇ°í ÀÖ´Ù. °ø´ë¿¡¼ ¸¹ÀÌ »ç¿ëµÇ°í ÀÖ´Â MATLAB ÇÔ¼ö¿¡ Ç÷¯±×ÀÎ(Plug in) ÇüÅ·ΠÁ¦°øÀÌ µÇ°í ÀÖ´Â AcceleyesÀÇ Jacket(±¹³» www.miruware.com ¿¡¼ °ø±Þ)À» ÅëÇØ °è»ê ½Ã°£À» ´ÜÃà ½Ãų ¼ö ÀÖÀ¸¸ç 100¹è °¡¼ÓÈ°¡ ÀÔÁõÀÌ µÈ N-body simulationÀº ¹ÌÁöÀÇ ¿ìÁÖ¿¡ ´ëÇÑ Àǹ®Á¡À» Ç®¾î³ª°¥ ¼ö ÀÖ´Â °·ÂÇÑ µµ±¸°¡ µÉ °ÍÀÌ´Ù. À̷й°¸®¿¡¼ ³íÀǵǾú´ø Ä«¿À½º À̷п¡ ´ëÇÑ ¿¬±¸°¡ ´Ù½Ã Çѹø È°¹ßÇÏ°Ô ¿¬±¸µÉ °ÍÀÌ´Ù.
»ç½Ç °¡Àå Æз¯·¼ ÄÄÇ»Æà ±â¼ú Àû¿ëÀÌ ºü¸£°Ô ÀÌ·ç¾î Áö°í ÀÖ´Â ºÐ¾ß´Â ±¹¹æ °ü·Ã ¾ÖÇø®ÄÉÀ̼ǰú º¸¾ÈºÐ¾ßÀε¥ À§¼º»çÁø ¶Ç´Â ¾ÏÈ£ Çص¶ µîÀÌ ±× ¿¹¶ó°í ÇÒ ¼ö ÀÖ´Ù. ÀÌ¹Ì ¹Ì±¹À» Æ÷ÇÔ Çѱ¹¿¡¼µµ ÀÌ ºÐ¾ß ¸¹Àº ¼º°ú°¡ ÀÌ·ç¾îÁö°í ÀÖ´Â »óȲÀÌ´Ù. ÀÌ¿Ü¿¡µµ ¸Þ½ÃºêÇÑ µ¥ÀÌÅ͸¦ ó¸®Çϰųª 1Ãʸ¦ ´ÙÅõ´Â ½ÃÀå¿¡¼ÀÇ Àû¿ëÀº µÎµå·¯Áö°Ô ³ªÅ¸³ª´Âµ¥, ´ëÇ¥ÀûÀ¸·Î ±â»ó¿¹Ãø ºÐ¾ß¿¡ ´ëÇÑ Àû¿ëÀÌ´Ù.
WRF¶ó´Â ¿ÀǼҽº´Â Çѱ¹¿¡¼µµ »ç¿ëÀÌ µÇ°í ÀÖ´Â ¾ÖÇø®ÄÉÀ̼ÇÀ¸·Î ÀϺΠCUDA·ÎÀÇ ÄÚµù ÀüȯÀÌ ÀÌ·ç¾îÁö¸é¼ 1% ÄÚµùÀÌ µÈ ½ÃÁ¡¿¡¼ 20%ÀÌ»óÀÇ ¼Óµµ Çâ»óÀ» °¡Á®´Ù Áֱ⵵ Çß´Ù. Çѱ¹ ±â»óû »êÇÏ ±â»ó¿¬±¸¼Ò¿¡¼´Â ÀÌ¿¡ ´ëÇÑ ¿¬±¸¸ñÀûÀ¸·Î Å×½½¶ó(Tesla)¸¦ µµÀÔÇÏ¿´À¸¸ç Á¦ÁÖ´ëÇб³ ¹× °¸ª´ëÇб³¿¡¼µµ µµÀÔÀ» ÃßÁøÇÏ°í ÀÖ´Ù. ±ÝÀ¶ ºÐ¾ß·ÎÀÇ µµÀÔÀº ½Ã°£ÀÌ °É¸®´Â ÀÛ¾÷À̱ä ÇÏ°ÚÁö¸¸ ¹Ì±¹ ¿ù°¡¿¡¼ÀÇ µµÀÔ ¹è°æÀ» °¨¾ÈÇÑ´Ù¸é ÇâÈÄ ±àÁ¤ÀûÀÎ ½ÃÀåÀÌ µÉ Àü¸ÁÀÌ´Ù.
¡ã ¹Ì±¹, ÀϺ» µî ¼±Áø±¹À» Áß½ÉÀ¸·Î Á¡Â÷ ¶Ñ·ÇÇÑ ¼º°úµéÀÌ ³ªÅ¸³ª°í ÀÖ´Ù. (Á¦°ø : ¿£ºñµð¾Æ)
°è¼ÓµÇ´Â ÁøÈ¿Í ³Ð¾îÁö´Â ¿µ¿ª
ÈÄ¹ß ÁÖÀڷμ ¼±µÎ ¾÷ü¸¦ µû¶ó Àâ´Â ¹æ¹ýÀº Å©°Ô µÎ °¡Áö°¡ ÀÖ´Ù. ù ¹ø°´Â °¡°ÝÀ¸·Î °æÀï»ç·ÎºÎÅÍÀÇ ¿ìÀ§¸¦ Á¡ÇÏ´Â ¹æ¹ýÀε¥ ÀÌ´Â ¿©·¯ °¡Áö·Î Á¦¾à »çÇ×ÀÌ ¸¹À» ¼ö ÀÖ°í, ¿µ¼¼ °³¹ß¾÷üÀÇ °æ¿ì´Â ´õ´õ¿í ºü¸¥ ½Ã°£ ¾È¿¡ ÅõÀÚ ÀÚ±ÝÀ» ȸ¼öÇØ¾ß ÇÑ´Ù´Â ÀÌÀ¯·Î ÀÎÇØ ½±Áö°¡ ¾ÊÀº Àü·«ÀÌ´Ù. ƯÈ÷ ÀÚ±ÝÀÌ ºó¾àÇÑ »óÅ¿¡¼ ÃâÇ÷ °æÀï¿¡ ¶Ù¾îµå´Â °ÍÀº ÀÚ»ì ÇàÀ§³ª ´Ù¸§ÀÌ ¾ø±â ¶§¹®ÀÌ´Ù.
µÎ ¹ø° ¹æ¹ýÀº ±â¼ú·Î ¼±Á¡À» ÃëÇÏ´Â ¹æ¹ýÀÌÁö¸¸ ÀüÅëÀûÀÎ ¹æ¹ýÀ¸·Î´Â ÀÌ ¶ÇÇÑ ¾î·Á¿òÀÌ ¸¹¾Ò´Ù. ¼±µÎ ¾÷ü ¿ª½Ã ±× µ¿¾È ÃàÀûµÈ ÀÚ±ÝÀ¸·Î ½Å±â¼úÀ» Áö¼ÓÀûÀ¸·Î °³¹ßÇÔÀ¸·Î½á °æÀï¾÷ü·ÎºÎÅÍ °ÝÂ÷¸¦ Å©°Ô ¹ú¿© ³ª°¡±â ¶§¹®ÀÌ´Ù. ÇÏÁö¸¸ ÀÌ·¯ÇÑ ¹®Á¦¸¦ CUDA¸¦ ÅëÇØ ÇØ°áÇÏ°íÀÚ ÇÏ´Â ³ë·ÂÀÌ ÀϾ°í Àִµ¥ ±×°ÍÀÌ °¡´ÉÇÑ ÀÌÀ¯´Â 100¹è³ª »¡¶óÁö´Â ¼Óµµ, Áï ¼º´ÉÀÇ È¹±âÀûÀÎ °³¼±¿¡ ÀÖ´Ù´Â °ÍÀÌ´Ù.
±×·³ Áö±ÝºÎÅÍ´Â °¢ ºÐ¾ßº° ´ëÇ¥ÀûÀ¸·Î CUDA°¡ Àû¿ëÀÌ µÇ°í ÀÖ´Â ¾ÖÇø®ÄÉÀ̼ǿ¡ ´ëÇؼ ¼³¸íÀ» µå¸®µµ·Ï ÇÏ°Ú´Ù.
(8) ÁöÁúŽ»ç, À¯Àü/°¡½ºÅ½»ç¿ë CUDA ±â¹Ý ¾ÖÇø®ÄÉÀ̼Ç
A. MATLAB plugin : Accelereyes http://www.accelereyes.com
B. Acceleware : Kirchoff and Reverse Time Migration http://www.acceleware.com/default/index.cfm/solutions/seismic-solutions/
C. SeismicCity : 3D seismic imaging for prestack depth migration http://www.seismiccity.com/
D. OpenGeoSolutions: Spectral decomposition and inversion http://www.opengeosolutions.com/
E. Mercury Computer systems: 3D data visualization http://3dviz.mc.com/solutions/oilandgas/ngog/
F. ffA : 3D Seismic processing software http://www.ffa.co.uk/
G. Headwave: Prestack data processing http://www.headwave.com/
H. GIS : Manifold http://www.manifold.net/index.shtml
CUDA°¡ °¡Áø Çö¾È, ±×¸®°í 'Àü¸Á'
¾Æ¹«¸® ÁÁÀº ±â¼úÀ̶ó ÇÏ´õ¶óµµ ±×°ÍÀ» »ç¿ëÇÏ°íÀÚ ÇÏ´Â »ç¶÷µéÀÌ ¾ø´Ù¸é ¹«¿ëÁö¹°ÀÌ µÇ°í ¸¸´Ù. 2008³â ÃÊ Çѱ¹¿¡¼´Â ¸¹Àº »ç¶÷µéÀÌ CUDA SDK¸¦ ´Ù¿î¹Þ°í CUDA Æ÷·³»çÀÌÆ®¸¦ ãÀ¸¸ç ÇìÅ×·ÎÁö´Ï¾î½º ÄÄÇ»ÆÃ(Heterogeneous Computing)¿¡ ´ëÇÑ °ü½ÉÀ» ³ô¿©°¬´Ù. ±â¾÷¿¡¼µµ Tesla ¹× CUDA¸¦ ±â¹ÝÀ¸·Î ÇÏ´Â ÀÚü ¼Ö·ç¼Ç °³¹ßÀ» ÅëÇØ »ý»ê¼ºÀ» ³ôÀÌ°íÀÚ Àη ÅõÀÔ °èȹÀ» ¼¼¿ì°í ÀÖ¾ú´Ù.
ÇÏÁö¸¸ ÀÌ·¯ÇÑ °ü½ÉÀº 5~6°³¿ùÀÌ Áö³ªÀÚ ½ÃµéÇØÁ® °¬´Ù. ½ÃÇà Âø¿À¸¦ °ÅÄ¡´Â °úÁ¤¿¡¼ Á¤º¸ÀÇ ºó¾àÇÔ°ú ±â¼ú Áö¿øÀÌ ¹ÌÈíÇß´ø Á¡ÀÌ ¸¹Àº »ç¶÷µéÀ» ÁöÃÄ°¡°Ô ¸¸µé¾úÀ¸¸ç »ó´ëÀûÀ¸·Î ¼ÒÇÁÆ®¿þ¾î ÀÎÇÁ¶ó½ºÆ®·°Ã³°¡ ºó¾àÇÑ Çѱ¹Àº ¹Ì±¹, ÀϺ» µî¿¡ µÚÃÄÁö±â ½ÃÀÛÇß´Ù. ½Ã¸®¾ó ÄÄÇ»Æÿ¡ Àͼ÷ÇØÁ® ÀÖ´ø »ç¶÷µé·ÎºÎÅÍÀÇ ¹«°ü½É ¶ÇÇÑ ½ÃÀåÀÌ È®´ëµÇ´Â °ÍÀ» ¸·°í ÀÖ¾ú´Ù.
ÀÌ·± ¿ÍÁß¿¡¼µµ ÀϺΠ¼±±¸ÀÚµéÀÇ Áö¼ÓÀûÀÎ ¿¬±¸¿Í ³ë·Â, ±×¸®°í ´ëÇп¡¼ÀÇ ¿¬±¸ ÅõÀÚ¿Í CUDA °ÀǸ¦ ÅëÇÑ Àη ¾ç¼ºÀº ¹ÌÈíÇß´ø ¼ÒÇÁÆ®¿þ¾î ÀÎÇÁ¶ó¿¡ °æÀï·ÂÀ» ´õÇØ °¬´Ù. ÀÌ·¯ÇÑ ³ë·ÂµéÀº 2009³â¿¡ µé¾î ´Ù½Ã Çѹø Æз¯·¼ ÄÄÇ»ÆÃÀÌ È°¼ºÈµÇ´Â °è±â¸¦ ¸¸µé±â ½ÃÀÛÇß°í, ¶ÇÇÑ ÇØ¿Ü¿¡¼ ¼Ò°³µÇ°í ÀÖ´Â ¿©·¯ °¡Áö CUDA ¾ÖÇø®ÄÉÀ̼ǵéÀº CUDA¸¦ ÁغñÇß´ø »ç¶÷µé ±×¸®°í »õ·ÎÀÌ ½ÃÀÛÇÏ°íÀÚ ÇÏ´Â »ç¶÷µé¿¡°Ô ´Ù½Ã Çѹø ±× °¡´É¼ºÀ» ½É¾î ÁÖ°Ô µÇ¾ú´Ù.
ÀÌÈ¿©ÀÚ´ëÇб³ ÄÄÇ»ÅÍ °øÇаú¿¡¼ ½ÃÀÛÀÌ µÇ¾ú´ø CUDA°ÀÇ´Â ÇöÀç ¿¬¼¼´ëÇб³¿¡¼µµ ´Ü±â ÄÚ½º·Î ½ÃÀÛÀÌ µÇ¾úÀ¸¸ç ¼¿ï´ëÇб³, Ä«À̽ºÆ®, Æ÷Ç×°ø´ë ±×¸®°í ±¤¿î´ëÇб³¿¡¼µµ 2009³â ÇϹݱ⠰ÀǸ¦ ÁغñÇϱ⿡ À̸£·¶´Ù. ÀÌ·± ¼Ò½ÄµéÀº Æз¯·¼ ÄÄÇ»Æà ±â¼ú ÀηÂÀ» ÇÊ¿ä·Î ÇÏ´Â ±â¾÷¿¡°Ô´Â ÁÁÀº ¼Ò½ÄÀÌ µÉ Àü¸ÁÀÌ´Ù.
¡ã °ÔÀÓ¿¡¼ ³Î¸® ¾²ÀÌ´Â PhysX ¹°¸®¿£Áøµµ CUDAÀÇ ´öÀ» º» ´ëÇ¥ÀûÀÎ »ó¿ë ±â¼ú. (Á¦°ø : ¿£ºñµð¾Æ)
1960³âºÎÅÍ ½ÃÀÛÀÌ µÈ ½Ã¸®¾ó ÄÄÇ»Æðú Æз¯·¼ ÄÄÇ»ÆÃÀÇ °æÀïÀº ÀÌÁ¦ ¾î´À ÇÑ Á¡À¸·Î ¼ö·ÅµÇ¾î °¡´Â °úÁ¤ÀÌ´Ù. ¿äÁò ¾÷°è¿¡¼ Á¡Â÷ À̽´·Î ºÎ»óÇÏ°í ÀÖ´Â OpenCL, DX11Àº CUDA ¾ÆÅ°ÅØó¿¡ ±â¹ÝÀ» µÎ°í ÀÖ´Ù. ÀÍÈ÷ ¾Ë·ÁÁø ¹Ù´ë·Î CPU´Â Áö¼ÓÀûÀ¸·Î Äھ ´Ã·Á ³ª°¨À¸·Î½á ±âÁ¸ ½Ã¸®¾ó°ú Æз¯·¼ÀÇ Â÷À̸¦ ½º½º·Î Çã¹°°í ÀÖ´Ù.
ÀÌ·¯ÇÑ ¹è°æ ¶§¹®¿¡ GPU¸¦ ÀÌ¿ëÇÑ Æз¯·¼ ÄÄÇ»Æà ±â¼úÀº Áö¼ÓÀûÀ¸·Î À¯Áö, ¹ßÀüÇØ ³ª°¥ °ÍÀÌ´Ù. ±Ø´ÜÀûÀÎ °üÁ¡¿¡¼ ºÁµµ Æз¯·¼ ÄÄÇ»Æà ±â¼ú·Î ¼ö·ÅÀÌ µÈ´Ù°í ºÃÀ» ¶§, Áö±ÝºÎÅÍ¶óµµ GPU¿Í °°Àº ¸Å´ÏÄÚ¾î ±¸Á¶¿¡ ´ëÇÑ Áö½ÄÀ» ½ÀµæÇØ ³ª°¡´Â °ÍÀº ¹Ì·¡¿¡ ÀÖ¾î¼ÀÇ °æÀï·ÂÀ» È®º¸ÇÏ´Â ±æÀ̶ó°í ¸»¾¸À» µå¸®°í ½Í´Ù.
ÇÑÆí, ¿£ºñµð¾Æ°¡ º¸±ÞÇÏ°í ÀÖ´Â CUDA¿¡ °ü·ÃµÈ º¸´Ù ÀÚ¼¼ÇÑ ³»¿ëÀº ȨÆäÀÌÁö(http://kr.nvidia.com/cuda)¸¦ ÅëÇØ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ, ¿£ºñµð¾Æ ÄÚ¸®¾Æ¿¡¼´Â CUDA º´·ÄÇÁ·Î±×·¡¹Ö¿¡ ´ëÇØ Áö¼ÓÀûÀÎ ±³À°°úÁ¤À» ¸¶·ÃÇØ ±³À°À» ½Ç½ÃÇÏ°í ÀÖ´Ù. CUDA ±³À°¿¡ °ü½ÉÀÌ ÀÖ´Â »ç¶÷Àº À̸ÞÀÏ(CUDA-KR@nvidia.com)À» ÅëÇØ ¹®ÀÇÇÏ¸é µÈ´Ù.
|