 | Infinite Loop : Ars covers the world of Apple |
Mac OS X 10.6 Snow Leopard: the Ars Technica review
Mac OS X 10.6, aka Snow Leopard has landed. This time around, Apple goes light on the glitz in favor of some heavy work under the hood. John Siracusa dives deep into Apple's new OS offering to see what's new, what's still the same, and whether it's worth upgrading.
By
John Siracusa | Last updated August 31, 2009 10:00 PM CT
OpenCL
Áö±Ý±îÁö ¿ì¸®°¡ ºÁ¿Â °ÍÀº "´õ ¸¹Àº ÀÚ¿øÀ¸·Î ´õ ¸¹ÀÌ Çϱâ"ÀÇ »ç·ÊÀÌ´Ù. Áï, »õ·Ó°í ´õ Çö´ëÀûÀÎ ÄÄÆÄÀÏ·¯ ÀÎÇÁ¶ó½ºÆ®·°ÃÄ, ±×¸®°í ÄÄÆÄÀÏ·¯°¡ Áö¿øÇÏ´Â Áß¿äÇÑ »õ·Î¿î ¾ð¾î ±â´É, ±×¸®°í °·ÂÇÏ¸é¼ ½Ç¿ëÀûÀÎ ¸ÖƼ½º·¹µå API(µ¿ ¾ð¾î ±â´ÉÀ» Áö¿øÇÏ´Â »õ ÄÄÆÄÀÏ·¯ÀÇ »ó´Ü¿¡ ¸¸µé¾îÁ³´Ù)ÀÌ´Ù. ÀÌ ¸ðµÎ°¡ OS°¡ Çϵå¿þ¾î¸¦ ÇѲ¯ Ȱ¿ëÇÒ ¼ö ÀÖµµ·Ï µ½´Â ¸ñÇ¥¸¦ °®°í ÀÖ´Ù.
±×·¯³ª CPU´Â Æ®·£Áö½ºÅ͸¸À¸·Î ÀÌ·ïÁø °ÍÀÌ ¾Æ´Ï´Ù. µ¶¸³ ÄÄÇ»ÆÃ ¿£Áø¸¸À¸·Î µûÁø´Ù¸é, ±× ¿ÕÁ´ ¸ðµç ¸Æ ¾È¿¡ µé¾î°¡ÀÖ´Â ¶Ç´Ù¸¥ ½Ç¸®ÄÜ,
GPU¿¡°Ô ÀÖ´Ù.
¼öÄ¡°¡ ³»¿ëÀ» ¾ê±âÇØÁØ´Ù. ¸Æ CPU°¡ 4°³ÀÇ Äھ °®°í´Â ÀÖÁö¸¸ (
´ëĪÇü ¸ÖƼ½º·¹µù´öºÐ¿¡ 8°³ÀÇ ·ÎÁöÄà ÄÚ¾î·Î ³ªÅ¸³´Ù), °í±ÞÇü GPU´Â Äھ 200°³µµ ³Ñ´Â´Ù. CPU°¡ ÇöÀç 100
GFLOPS¸¦ °® ³Ñ´Âµ¥ ¹ÝÇØ, ÃÖ°íÀÇ GPU´Â 1,000 GFLOPS°¡ ³Ñ´Â´Ù. ÃÊ´ç 1Á¶È¸°¡ ³Ñ´Â ÇÃ·ÎÆÃ-Æ÷ÀÎÆ® ¿¬»êÀÎ ¼ÀÀÌ´Ù. CPU¿Í ¸¶Âù°¡Áö·Î GPU´Â ÇöÀç º¸µå¿¡
Çϳª ÀÌ»ó ´Þ¸®°í ÀÖ´Ù.
Writing for the GPU
ºÒÇàÈ÷µµ GPU ÄÚ¾î´Â ÀϹÝÀûÀÎ ¸ñÀûÀÇ ÇÁ·Î¼¼¼°¡ ¾Æ´Ï´Ù. (Àû¾îµµ
Áö±ÝÀº ¾Æ´Ï´Ù.) GPU´Â °íÁ¤¼Ò¼öÁ¡(´ç½Ã Á÷Á¢ ÇÁ·Î±×·¡¹ÖÀ» ÀüÇô ÇÒ ¼ö°¡ ¾ø¾ú´Ù) ¿¬»êÀ» ÇÏ´ø Á¶»óÀ¸·ÎºÎÅÍ ÁøÈÇØ¿Â, ´õ °£´ÜÇÑ ÄÄÇ»ÆÃ ¿£ÁøÀÌ´Ù. GPU´Â CPU¿¡¼ °¡´ÉÇÑ Ç³ºÎÇÑ ÀνºÆ®·°¼ÇÀ» Áö¿øÇÏÁö ¸øÇϸç, µ¹¸± ¼ö ÀÖ´Â ÇÁ·Î±×·¥ ÃÖ´ë Å©±âµµ »ó´çÈ÷ Á¦ÇÑÀûÀ̸ç ÀÛ´Ù. °Ô´Ù°¡ ¸ðµç ±â´ÉÀÌ
IEEE ºÎµ¿¼Ò¼öÁ¡ ¿¬»ê ±Ô°Ý¿¡ ¸Â´Â ¾÷°è Ç¥Áصµ ¾Æ´Ï´Ù.
¿À´Ã³¯ÀÇ GPU´Â ÇÁ·Î±×·¡¹ÖÀÌ °¡´ÉÇÏÁö¸¸, ±× ÇÁ·Î±×·¡¹ÖÀ̶ó´Â °ÍÀÌ ´ëºÎºÐÀº ±×·¡ÇÈ ÇÁ·Î±×·¡¹Ö¿¡ »Ñ¸®±í°Ô ¹ÚÇô ÀÖ´Ù.
¹öÅØ½º ¼ÎÀÌ´õ(vertex shaders)¶óµç°¡
Áö¿À¸ÞÆ®¸® ¼ÎÀÌ´õ(geometry shaders),
Çȼ¿ ¼ÎÀÌ´õ(pixel shaders) µîÀÌ´Ù. GPU ÇÁ·Î±×·¡¹ÖÀ» Çϴµ¥ ¾²ÀÌ´Â ¾ð¾î ´ëºÎºÐÀº ±×·¡ÇÈ¿¡ ÃÊÁ¡ÀÌ µÇ¾î ÀÖ´Ù.
HLSL,
GLSL,
Cg µîÀÌ´Ù.
±×·³¿¡µµ ºÒ±¸Çϰí GPU Çϵå¿þ¾î¿¡ µé¾î¸Â´Â ±×·¡ÇÈ ¿¬»ê¸¸ Á¸ÀçÇÏÁö´Â ¾Ê´Â´Ù. ´Ù¸¥ ¿¬»êµµ ÀÖ´Ù. ºñ-±×·¡ÇÈ ¾ð¾î·Î ±× ¿¬»êÀ» ÇÒ ¼ö ÀÖÀ¸¸é ÁÁÀ» °ÍÀÌ´Ù. ÇÏÁö¸¸ ±× ÀÏÀÌ »ý°¢¸¸Å ½±Áö´Â ¾Ê´Ù. GPU Çϵå¿þ¾î´Â »ý°¢ÇÒ ¼ö ÀÖ´Â ¸ðµç ÇüÅ·Π»¸¾îÀÖ´Ù. Áï, ´ë´ÜÈ÷ ´Ù¾çÇÏ´Ù. ½ÇÇà À¯´ÖÀÇ ¼ö³ª Á¾·ù, µ¥ÀÌÅÍ Æ÷¸Ë, ÀνºÆ®·°¼Ç ¼Â, ¸Þ¸ð¸® ±¸Á¶, µî ¸ðµÎ°¡ °¢±â ´Ù¸£´Ù. ÇÁ·Î±×·¡¸ÓµéÀº ±×·± Â÷À̸¦ ½È¾îÇÑ´Ù. ƯÁ¤ µ¥ÀÌÅÍ Á¾·ù¿¡ µû¶ó, ȤÀº ±â´ÉÀÌ ¿ÏÀüÈ÷ ¾øÀ» °æ¿ì, ÀÛ¾÷ÀÌ ¾î·Á¿öÁö±â ¶§¹®ÀÌ´Ù.
GPU ȸ»çÀÎ
NVIDIA°¡ ÀÌ¿¡ ´ëÇÑ ÇØ°áÃ¥À» ³»³õÀº °ÍÀÌ Çϳª ÀÖ´Ù. º¤ÅÍ µ¥ÀÌÅÍ¿Í GPU ¸Þ¸ð¸® °èÃþÀ» ¹Ý¿µÇÏ´Â µ¥ÀÌÅÍ ½ºÅ丮Áö, ±× ¿Ü ¹øµéµÈ ¿¬»ê ¶óÀ̺귯¸®¸¦ À§ÇÑ C ¾ð¾î (ÀͽºÅÙ¼ÇÀÌ ÀÖ´Ù)ÀÇ ÇÏÀ§¼ÂÀÎ
CUDAÀÌ´Ù. CUDA´Â
GPGPU(General-Purpose computing on Graphics Processing Units)¿¡ ½ÅÂüÀ¸·Î µé¾î°¬Áö¸¸, GPU ȸ»ç¿¡¼ ³ª¿Â ´öÅÿ¡, º¥´õ¸¦ °¡¸®Áö ¾Ê°í °³¹ßÇÏ·Á´Â °³¹ßÀÚµé°ú ÀüÅõ¿¡ ÈÛ½ÎÀÌ°í ¸»¾Ò´Ù.
3D ÇÁ·Î±×·¡¹Ö¿¡¼´Â
OpenGLÀÌ ±× ¿ªÇÒÀ» ÇÑ´Ù. ±×·³ Áö±ÝÀº ½±»ç¸® ÃßÃøÇÏ½Ç ¼ö ÀÖ´Ù. OpenCLÀº ÀϹÝÀûÀÎ ¸ñÀûÀÇ ¿¬»êÀÌ ±× ¸ñÇ¥ÀÌ´Ù. »ç½Ç, OpenCLÀº OpenGL ÄÁ¼Ò½Ã¿ò°ú µ¿ÀÏÇÑ ÄÁ¼Ò½Ã¿òÀÇ Áö¿øÀ» ¹Þ°í ÀÖ´Ù. ´Ù¸§¾Æ´Ñ
Khronos ±×·ìÀÌ´Ù. ÇÏÁö¸¸ ÀØÁö ¸»¶ó. OpenCLÀº ¾ÖÇÃÀÌ ¸¸µé¾î³Â´Ù.
¾ÖÇÃÀº OpenCLÀÌ ¼º°øÇϱâ À§Çؼ´Â ¾÷°èÇ¥ÁØÀÌ µÇ¾î¾ß ÇÑ´Ù´Â Á¡À» ¾Ë°í ÀÖ´Ù. ¾ÖÇà ±â¼úÀÌ ¾Æ´Ï°í ¸»ÀÌ´Ù. ±×·¸°Ô Çϱâ À§ÇØ ¾ÖÇÃÀº ÃÖ°íÀÇ GPU ±â¾÷µé·ÎºÎÅÍÀÇ Çù·ÂÀ» ÇÊ¿ä·ÎÇÏ¿´´Ù. °Ô´Ù°¡ ±âÁ¸¿¡ Àß ¾Ë·ÁÁø Ç¥Áرⱸ¿ÍÀÇ Çù·Âµµ ÇÊ¿äÇß´Ù. ½Ã°£ÀÌ °É¸±Å×Áö¸¸, ÇöÀç·Î¼´Â ¸ðµÎ Çѵ¥ ¸ð¿©ÀÖ±ä ÇÏ´Ù.
»ç½Ç OpenCLÀº CUDA¿Í ´ë´ÜÈ÷ ´à¾Ò´Ù. OpenCLÀº º¤ÅÍ ÀͽºÅټǿ¡ ÀÖ¾î¼ C¿Í ºñ½ÁÇÑ ¾ð¾î¸¦ »ç¿ëÇϸç, ¸Þ¸ð¸® °èÃþ¼ºµµ À¯»çÇÑ ¸ðµ¨À» °®°í ÀÖ´Ù. ³î¶ó¿î ÀÏÀÌ ¾Æ´Ï´Ù. ¾ÖÇÃÀÌ ¿ö³« OpenCL °³¹ß¿¡ ÀÖ¾î¼ NVIDIA¿Í ±ä¹ÐÇÏ°Ô Çù·ÂÇØ¿Â Å¿ÀÌ´Ù. ÇÏÁö¸¸ ¾ÆÁ÷ °ËÁõ¹ÞÁö ¾ÊÀº Ç¥ÁØÀÎ ÀÌ OpenCLÀ» Áö¿øÇϱâ À§ÇØ GPU ¾÷üµéÀÌ °©ÀÚ±â Çϵå¿þ¾î¸¦ º¯°æ½Ãų ±î´ßÀº ¾ø´Ù. µû¶ó¼ OpenCLÀº ÀÌ¹Ì CUDA¿Í GLSL, ±× ¿Ü GPU ÇÁ·Î±×·¡¹Ö ¾ð¾î¿ëÀ¸·Î µðÀÚÀÎµÈ GPU¿Í Àß µ¹¾Æ°¡¾ßÇÑ´Ù´Â Á¶°ÇÀ» ÃæÁ·½ÃÄÑ¾ß Çß´Ù.
Mac OS X 10.6 Snow Leopard: the Ars Technica review - Ars Technica