ARMÀº ARM ±â¹Ý ±â±â¿¡¼ ±¸µ¿µÇ´Â ¸®´ª½º ¾ÖÇø®ÄÉÀ̼ÇÀ» ÃÖÀûÈÇϱâ À§ÇÑ ÅøÀÎ Streamline Performance Analyzer (½ºÆ®¸²¶óÀÎ ¼º´ÉºÐ¼®±â)¸¦ ¹ßÇ¥Çß´Ù.
StreamlineÀº ¼º´É µ¥ÀÌÅÍ(performance data) ÃëÇÕ°ú Á÷°üÀûÀÎ µµÇ¥³ª ±×·¡ÇÈ º¸°í¼ »ý¼ºÀ» ÀÚµ¿ÈÇÏ¿© ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚ°¡ ¾ÖÇø®ÄÉÀÌ¼Ç ÇÖ½ºÆÌ, ¸ÖƼ½º·¹µù ¹®Á¦, ½Ã½ºÅÛ ¸®¼Ò½ºÀÇ ºñÈ¿À²Àû »ç¿ë ÁöÁ¡À» ½±°Ô ÆÇº°Çس¾ ¼ö ÀÖ°Ô ÇØÁØ´Ù.
StreamlineÀº ARM ±â¹Ý ±â±â¿¡ TCP/IP ¿¬°á¸¸ °®Ã߸é ÇÁ·Î¼¼¼ÀÇ ÇÁ·Î±×·¥°ú ÆÛÆ÷¸Õ½º Ä«¿îÅÍ(performance counter)¸¦ »ùÇøµÇÏ¿© ÃëÇÕÇØ ³·Àº ºñ¿ëÀ¸·Î Ÿ°ÙÀÇ ¸Þ¸ð¸® ¸®¼Ò½º¿¡ »ó°ü ¾øÀÌ Àüü ¸®´ª½º ¼ÒÇÁÆ®¿þ¾î ½ºÅÃÀ» Àå±â°£¿¡ °ÉÃÄ ºÐ¼®ÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ÃëÇÕµÈ ¼º´É µ¥ÀÌÅÍ´Â ½Ã½ºÅÛ ´ÜÀ§¿¡¼ ¼ÒÇÁÆ®¿þ¾î ¼öÇà »óŸ¦ º¸¿©ÁÖ¸ç, ¿©·¯ ¹ø ¹Ýº¹ ¼öÇà ¾øÀÌ ÃëÇÕµÈ µ¥ÀÌÅ͸¦ ´Ù½Ã ó¸®ÇÒ ¼ö ÀÖ¾î ¼ÒÇÁÆ®¿þ¾îÀÇ ´Ù¸¥ ¿µ¿ªµé¿¡ ºÐ¼®À» ÁýÁßÇÒ ¼ö ÀÖ´Ù.
StreamlineÀº °³¹ßÀÚµéÀÌ Á÷°üÀûÀ¸·Î ¸®´ª½º µå¶óÀ̹ö, ¶óÀ̺귯¸®, ¾ÖÇø®ÄÉÀ̼ÇÀ» ÃÖÀûÈÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. °¢ ÇÁ·Î¼¼½ººÎÅÍ ¾²·¹µå, ÇÔ¼ö, ¼Ò½º ÄÚµå, ¾î¼Àºí¸® ÄÚµå ¼öÁرîÁö ´Ù¾çÇÑ ¼öÁØ¿¡¼ Á¦°øµÇ´Â ÇÁ·ÎÆÄÀÏ ¸®Æ÷Æ®(Profile report)´Â °áÁ¤ÀûÀÎ ¼º´É ¿µ¿ª¿¡ ´ëÇÑ ÆÇº°À» ¿ëÀÌÇÏ°Ô Çϸç, ÄÚµå ³» °³º° ÄÝ ÆÐ½º(call path)¿¡ ´ëÇÑ ½ºÅà »ç¿ë º¸°í°¡ ÀÌ·ç¾îÁ®, °³¹ßÀÚ´Â °¢ ¾²·¹µå ´ç µ¿Àû ¸Þ¸ð¸® ¿ä±¸·®À» ÃÖ¼ÒÈÇϱâ À§ÇÑ ±â´Éµé¿¡ ÁýÁßÇÒ ¼ö ÀÖ°Ô µÈ´Ù.
StreamlineÀº ¶ÇÇÑ µ¶ÀÚÀûÀÎ Timeline (ŸÀÓ¶óÀÎ) º¸±â ¹æ½ÄÀ» °®Ãß°í ÀÖ¾î, Ȱ¼ºÈµÈ ÇÁ·Î¼¼½º, ¾²·¹µå, ÇÔ¼ö, ±×¸®°í cache missÀ̳ª processor load¿Í °°Àº ÆÛÆ÷¸Õ½º Ä«¿îÅÍ °ü·Ã Á¤º¸ °£ ½Ã°£ º° »ó°ü°ü°è¸¦ Á¦°øÇØÁØ´Ù. ŸÀÓ¶óÀÎ º¸±â ¹æ½ÄÀº °³¹ßÀÚµéÀÌ ¸ÖƼ¾²·¹µå ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÇöÇÒ ¶§ ºñÈ¿À²ÀûÀÎ ÁöÁ¡»Ó¸¸ ¾Æ´Ï¶ó ¼öÇàÀÇ º´¸ñÁöÁ¡, Â÷¼±(sub-optimal)ÀÇ Ä³½Ã »ç¿ë, Àü·Â »ç¿ë·®ÀÌ Å« À¯ÈÞ ·çÇÁ, ±âŸ ¸¹Àº Àüü ½Ã½ºÅÛ ³» ¹®Á¦¸¦ ÀÏÀ¸Å°°í ÀÖ´Â ÄÚµå ¿µ¿ª±îÁö °£´ÜÈ÷ ÆÇº°Çس¾ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
Ä¿³Î 2.6.32 ¶Ç´Â ±× ÀÌ»ó ¹öÀü¿¡ ±âÃÊÇÑ ARM ¸®´ª½º ½Ã½ºÅÛ°ú ȣȯÀÌ °¡´ÉÇÑ StreamlineÀÇ µ¶ÀÚÀûÀÎ Ä¿³Î ¸ðµâÀº ÅøÀÇ Æò±Õ ¿À¹öÇìµå¸¦ 5% ¾Æ·¡·Î À¯ÁöÇÏ¸é¼ ´ë·®ÀÇ ÆÛÆ÷¸Õ½º °ü·Ã µ¥ÀÌÅ͸¦ ÃëÇÕÇÒ ¼ö ÀÖ´Ù. ÀÌ ¿ÀǼҽº µå¶óÀ̹ö´Â Linaro¢â(¸®³ª·Î) Ä¿³Î ±â¹ÝÀ» Æ÷ÇÔÇØ °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â ARM ¸®´ª½º BSPµé¿¡ Æ÷ÇԵǾî ÀÖ´Ù. |