|
ÄÚµå ·¹À̾ƿôÀ» º¯°æÇÏ¿© ¾îÇø®ÄÉÀ̼ÇÀÇ ÆÛÆ÷¸Õ½º¸¦ Çâ»ó½ÃŰ´Â ¹æ¹ý
±Ô¸ð°¡ Å« ¾îÇø®ÄÉÀ̼ǵéÀº ¸î°¡Áö ¹®Á¦°¡ ÀÖ½À´Ï´Ù:¼ö¸¹Àº ¸í·É¾îµé·Î ÀÌ·ç¾îÁ® ÀÖ¾î¼ ÇÁ·Î¼¼¼°¡
Àüü ¾îÇø®ÄÉÀ̼ÇÀ» Ĩ¿¡ ÇѲ¨¹ø¿¡ ´ã¾Æ µÑ ¼ö°¡ ¾ø½À´Ï´Ù. °á°úÀûÀ¸·Î ±Ô¸ð°¡ Å« ¾îÇø®ÄÉÀ̼ÇÀº ÇÁ·Î¼¼¼°¡ ¸Þ¸ð¸®¿¡¼ »õ·Î¿î ¸í·É¾î¸¦ ºÒ·¯¿À´Â
½Ã°£ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ ¹®¼¿¡¼´Â ÇÁ·Î¼¼¼°¡ ¸Þ¸ð¸®¿¡¼ È¿°úÀûÀÎ ¸í·É¾î¸¦ ºÒ·¯ µé¿©¿Í¼ ½ÇÇà ½Ã°£À» È¿°úÀûÀ¸·Î ´ÜÃàÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
¸ðµç ¸í·É¾îµéÀÌ µ¿ÀÏÇÏÁö´Â ¾Ê´Ù
¾îÇø®ÄÉÀ̼ÇÀº ¸¹Àº ¸í·É¾îµé·Î ÀÌ·ç¾îÁ® ÀÖ°í ÄÚµåµéÀº ¸ðµç »óȲµé(°¡²û ¹ß»ýÇÏ´Â »óȲµéµµ Æ÷ÇÔÇÏ¿©)À» ´Ù·ê ¼ö ÀÖµµ·Ï ¾²¿©Áý´Ï´Ù. °á°úÀûÀ¸·Î
¸¹Àº ¾îÇø®ÄÉÀ̼Ǿȿ¡ ÀüÇô »ç¿ëµÇÁö ¾Ê´Â ¸í·É¾îµéµµ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ±×¸² 1À» ÂüÁ¶Çغ¾½Ã´Ù. ³ì»ö »ç°¢ÇüÀº ¸¹Àº ·çƾµéÀÌ Æ÷ÇÔµÈ Àüü
¾îÇø®ÄÉÀ̼ÇÀ» ³ªÅ¸³À´Ï´Ù. ·çƾµé Áß¿¡¼ ÀÚÁÖ »ç¿ëµÇ´Â °ÍµéÀº »¡°£»öÀ¸·Î ³ªÅ¸³ª ÀÖ°í Àß »ç¿ëµÇÁö ¾Ê´Â ºÎºÐÀº ÆÄ¶õ»öÀ¸·Î ³ªÅ¸³ª ÀÖ½À´Ï´Ù.

Àß »ç¿ëµÇÁö ¾Ê´Â ¸í·É¾îµéÀº ¸Þ¸ð¸®, ij½Ãµî¿¡¼ °ø°£À» Â÷Áö Çϰí ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ÇÑ Ä³½Ã ¶óÀο¡ ÀÚÁÖ »ç¿ëµÇ´Â ¸í·É¾îµé°ú ÀÚÁÖ
»ç¿ëµÇÁö ¾Ê´Â ¸í·É¾îµéÀÌ °°ÀÌ Æ÷ÇԵǾîÁ® ÀÖ´Ù¸é ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â ¸í·É¾îµéÀº °ø°£¸¸ Â÷ÁöÇÒ »ÓÀÌ°í °á°úÀûÀ¸·Î Äڵ带 ºÒ·¯¿À±â À§ÇØ ´õ
¸¹Àº ij½Ã¶óÀÎÀÌ ÇÊ¿äÇÒ °ÍÀÔ´Ï´Ù. ¶ÇÇÑ ¸Þ¸ð¸®¾È¿¡ ÄÚµåÀÇ ·¹À̾ƿô ¶§¹®¿¡ ÀÚÁÖ »ç¿ëµÇ´Â Äڵ尡 ¶Ç ´Ù¸¥ ÀÚÁÖ »ç¿ëµÇ´Â ÄÚµåÀÇ Ä³½Ã¸¦ Â÷ÁöÇÏ·Á°í
ÇÏ´Â Àϵµ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ »óȲÀº ij½¬ÀÇ ¾²·¹½Ì(thrashing)À̶ó°í ºÒ¸³´Ï´Ù. °á·ÐÀûÀ¸·Î Á¦ÇÑµÈ ¸í·É¾îÀÇ ¼Âµé¸¸ ó¸®
µÉ ¼ö ÀÖ½À´Ï´Ù.
¾îÇø®ÄÉÀ̼ǿ¡¼ ÀÌ·¯ÇÑ ÄÚµå ·¹À̾ƿôÀÇ ¹®Á¦Á¡Àº ¾öû³ ij½¬ ¹Ì½º À̺¥Æ®, TLB ¹Ì½º À̺¥Æ®, ¶Ç´Â ºÐ±â ¿¹Ãø ½ÇÆÐ À̺¥Æ® µîÀ» ¹ß»ý½Ãŵ´Ï´Ù.
ÀÌ·¯ÇÑ ¹®Á¦µéÀº UltraSPARC-III ÀÇ ÆÛÆ÷¸Õ½º Ä«¿îÅ͸¦ ÅëÇØ¼ ½Äº° ÇÒ ¼ö ÀÖ½À´Ï´Ù. (Using
UltraSPARC-IIICu Performance Counters to Improve Application Performance
¹®¼ ÂüÁ¶)
ÀÌÁ¦ ¸Þ¸ð¸®¾È¿¡¼ ÄÚµå ·¹À̾ƿôÀ» Çâ»ó½ÃŰ´Â ±â¼ú¿¡ ´ëÇØ ¾Ë¾Æº¾½Ã´Ù. ÀÏ´Ü ±×Àü¿¡ ¾Ë¾ÆµÑ°ÍÀº ¸í·É¾î ·¹º§¿¡¼¸¸ ÀÌ·¯ÇÑ ¹®Á¦°¡ ¹ß»ýÇÏ´Â
°ÍÀº ¾Æ´Ï¶ó´Â °ÍÀ» ÀνÄÇÏ´Â °ÍÀÔ´Ï´Ù. ¸ðµç ·çƾÀÌ ¸Å¿ì ÀÚÁÖ »ç¿ëµÉ ¼öµµ ÀÖ°í ±×·¸Áö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. ºñ½ÁÇÏ°Ô ¶óÀ̺귯¸®µµ Àüü°¡
´Ù ÀÚÁÖ »ç¿ë µÉ ¼ö ÀÖ°í ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â ÇϳªÀÇ ¶óÀ̺귯¸®Äݸ¸ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
ÄÄÆÄÀÏ·¯´Â ¸Þ¸ð¸®¾È¿¡¼ ÄÚµåÀÇ ·¹À̾ƿôÀ» ¹Ù²Ü ¼ö ÀÖ´Â ±â´ÉÀÌ Àֱ⠶§¹®¿¡ ÄÄÆÄÀÏ·¯¸¦ ÀÌ¿ëÇØ¼ ¸Þ¸ð¸®¸¦ È¿°úÀûÀ¸·Î »ç¿ëÇϵµ·Ï ¸¸µé ¼ö
ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ÀÏÀ» ÇϱâÀ§Çؼ± ¸î°¡Áö Á¤º¸°¡ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ ±ÛÀÇ ³ª¸ÓÁö ºÎºÐ¿¡¼´Â ¸Þ¸ð¸®¿¡ ¾îÇø®ÄÉÀÌ¼Ç ·¹À̾ƿôÀ» Çâ»ó½Ãų ¼ö ÀÖ´Â
3°¡ÁöÀÇ ´Ù¸¥ Á¢±Ù¹ý¿¡ ´ëÇØ ¾Ë¾Æº¾´Ï´Ù.
mapfileÀ» ÀÌ¿ëÇÏ¿© ·çƾÀ» ÀçÁ¤·Ä
ÇѰ¡Áö Á¢±Ù ¹æ¹ýÀº mapfileÀ» ÀÌ¿ëÇÏ´Â °Í ÀÔ´Ï´Ù. mapfileÀº ¸µÄ¿°¡ ¸Þ¸ð¸®¿¡ ·çƾµéÀ» ¾î¶»°Ô ¹è¿ ÇÒÁö¿¡ ´ëÇÑ Á¤º¸¸¦ °¡Áö°í
ÀÖ½À´Ï´Ù. ÀÌ °ÍÀ» ÀÌ¿ëÇϱâ À§Çؼ´Â ·çƾµéÀ» ÀÚÁÖ »ç¿ëÇÏ´Â ¼ø¼´ë·Î Á¤·ÄÇÏ´Â °ÍÀÌ ÇÊ¿äÇÕ´Ï´Ù. ±×¸² 2¹øÀº ¸ÊÆÄÀÏÀ» ÀÌ¿ëÇÏ¿© ±×¸²1¹øÀÇ
ÇÁ·Î±×·¥À» Àç¹è¿ ÇÑ °ÍÀÔ´Ï´Ù.

mapfileÀ» ¼öµ¿À¸·Î ¸¸µé¾î ÁÙ¼öµµ ÀÖÁö¸¸ ´õ ½¬¿î ¹æ¹ýÀº ÆÛÆ÷¸Õ½º ºÐ¼®±â¸¦ ÀÌ¿ëÇØ Á¢±ÙÇÏ´Â °ÍÀÔ´Ï´Ù:
-
flag -xF ¸¦ ÀÌ¿ëÇÏ¿© ÇÁ·Î±×·¥À» ºôµåÇÑ´Ù
-
Run the program with a representative workload under collect
-
er_print -mapfile <app> <mapfilename>¸¦ ÀÌ¿ëÇÏ¿© ¸ÊÆÄÀÏÀ»
¸¸µç´Ù
-
flags -xF -M <mapfile>¸¦ ÀÌ¿ëÇÏ¿© ÇÁ·Î±×·¥À» ÀçºôµåÇÑ´Ù.
¾îÇø®ÄÉÀ̼ÇÀÇ ¸ÊÆÄÀÏÀ» »ý¼ºÇÏ°í ³ª¸é ¾îÇø®ÄÉÀ̼ÇÀÇ ÇÁ·ÎÆÄÀÏÀÌ ¹Ù²î°Å³ª ·çƾÀÇ À̸§ÀÌ º¯°æµÇ°Å³ª ·çƾÀÌ Ãß°¡µÇ´õ¶óµµ °è¼Ó »ç¿ëÇÒ ¼ö
ÀÖ½À´Ï´Ù.
$ cc -O -xF -o app *.c
$ collect app < test_data
Creating experiment test.1.er ...
$ er_print -mapfile app app.map test.1.er
$ cc -O -xF -M app.map -o app *.c
|
Ç¥ 1 - ÆÛÆ÷¸Õ½º ºÐ¼®±â ÅøÀ» ÀÌ¿ëÇØ ¸ÊÆÄÀÏÀ» ÀÛ¼º
ÇÁ·ÎÆÄÀÏ Çǵå¹éÀ» ÀÌ¿ëÇÏ¿© ¸í·É¾îµéÀÇ ·¹À̾ƿôÀ» Çâ»ó
mapfileÀº ÀÚÁÖ »ç¿ëµÇ´Â ·çƾ°ú »ç¿ëµÇÁö ¾Ê´Â ·çƾÀ» ºÐ¸®Çϴµ¥ ¾ÆÁÖ À¯¿ëÇÕ´Ï´Ù. ±×·¯³ª ¸í·É¾î ·¹º§¿¡¼ ÇÁ·Î¼¼¼°¡ ½ÇÇàµÇÁö ¾Ê´Â
ÄÚµåµéÀÇ ºí·°À» Á¡ÇÁÇϴµ¥ ¼Ò¿äµÇ´Â ½Ã°£µµ ¾ÆÁÖ ¸¹ÀÌ °É¸³´Ï´Ù. ÇÁ·ÎÆÄÀÏ Çǵå¹éÀº ÀÌ·¯ÇÑ Çö»óÀ» Çâ»ó½ÃŰ´Â ÄÄÆÄÀÏ·¯ ±â¼úÀÔ´Ï´Ù.
ÇÁ·ÎÆÄÀÏ Çǵå¹éÀº Äڵ尡 ÀüÇüÀûÀ¸·Î ¾î¶»°Ô µ¹¾Æ°¡´ÂÁö¿¡ ´ëÇÑ Á¤º¸¸¦ ÄÄÆÄÀÏ·¯¿¡ Á¦°øÇÏ´Â °ÍÀ¸·Î ´ÙÀ½°ú °°Àº Á¤º¸µéÀ» ÅëÇØ ÄÚµå ÃÖÀûȸ¦
¼öÇà ÇÒ ¼ö ÀÖ½À´Ï´Ù.:
ÇÁ·ÎÆÄÀÏ Çǵå¹éÀº Å©·Î½ºÆÄÀÏ ÃÖÀûÈ´Â(flag -xipo¿¡ ÀÇÇØ Á¶Á¤µÊ) ¸ðµç ¼Ò½ºÆÄÀÏ °£ÀÇ ÃÖÀûȸ¦ ÀáÀçÀûÀ¸·Î
°¡´ÉÇÏ°Ô ÇÏ´Â ÃÖ°íÀÇ ¹æ¹ýÀÔ´Ï´Ù.
±×¸² 3¹øÀº ÇÁ·ÎÆÄÀÏ Çǵå¹éÀÌ ¾î¶»°Ô ÀÚÁÖ ½ÇÇàµÇ´Â ÄÚµåµéÀ» Çѱºµ¥ Á¤·ÄÇÏ´ÂÁö¿¡ ´ëÇÑ ¹æ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.

ÇÁ·ÎÇÁÀÏ Çǵå¹éÀº ¾Æ·¡¿Í °°ÀÌ Á÷°üÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:
-
-xprofile=collect -xipo¸¦ ÀÌ¿ëÇÏ¿© ¾îÇø®ÄÉÀ̼ÇÀ» ºôµåÇÑ´Ù
-
Run the application with one or more representative workloads
-
-xprofile=use -xipo¸¦ ÀÌ¿ëÇÏ¿© ¾îÇø®ÄÉÀ̼ÇÀ» ÀçºôµåÇÑ´Ù
-xipo flag´Â ÄÄÆÄÀÏ·¯°¡ ¿©·¯ ¼Ò½ºÄÚµåµé¿¡ °ÉÃļ ÃÖÀûȸ¦ ¼öÇàÇ϶ó´Â Áö½ÃÀÔ´Ï´Ù.
$ cc -O -xprofile=collect:app.profile -xipo -o app *.c
$ app < test_data
$ cc -O -xprofile=use:app.profile -xipo -o app *.c
|
Ç¥ 2 - ÇÁ·ÎÇÁÀÏ Çǵå¹éÀ» ÀÌ¿ëÇÏ¿© ¾îÇø®ÄÉÀ̼ÇÀ» ÃÖÀûÈ
¸µÅ©-ŸÀÓ ÃÖÀûÈ
mapfileÀº ·çƾ ·¹º§¿¡¼ ÀÛµ¿Çϰí ÇÁ·ÎÆÄÀÏ Çǵå¹é Àº ·çƾ ¾È¿¡¼ »ç¿ëµË´Ï´Ù;µÎ °¡Áö¸¦ ÇѲ¨¹ø¿¡ »ç¿ë ÇÒ ¼ö ÀÖ´Ù¸é ´õ °£´ÜÇÒ
°ÍÀÔ´Ï´Ù. ¸µÅ©-ŸÀÓ ÃÖÀûȸ¦ ÅëÇØ¼ À̰ÍÀÌ °¡´ÉÇÕ´Ï´Ù.(post-optimisationÀ̶ó°íµµ ºÒ¸²)
¸µÅ©Å¸ÀÓ ÃÖÀûÈÀÇ ±âº» ¿ø¸®´Â ÀÌ·¸½À´Ï´Ù. ÄÄÆÄÀÏ·¯°¡ ÀÖ°í Äڵ尡 ÀÖ´Ù¸é ´ÜÁö ±×°ÍÀ» ¿Ã¹Ù¸£°Ô ¹è¿ ÇÏ´Â °Í¸¸ÀÌ ¹®Á¦°¡ µË´Ï´Ù. Äڵ带
¿Ã¹Ù¸£°Ô ¹è¿Çϱâ À§Çؼ´Â ¸µÅ©-ŸÀÓ ¿ÉƼ¸¶ÀÌÁ®°¡ ÀÚÁÖ »ç¿ëµÇ´Â ·çƾÀ» ÇÑ ±ºµ¥·Î ¸ðÀ¸°í(mapfileÀ» »ç¿ëÇϴ°Ͱú ºñ½Á) ·çƾ¾È¿¡ ÀÚÁÖ
»ç¿ëµÇ´Â ¸í·É¾îµéÀ» ¶Ç´Ù½Ã ÇÑ ±ºµ¥·Î ¸ðÀ¸´Â °ÍÀÔ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¿© ÀÚÁÖ »ç¿ëµÇ´Â ¸í·É¾îµéÀ» ÇÑ ±ºµ¥·Î ¸ðÀ¾´Ï´Ù. ´ÙÀ½°ú °°Àº ¹æ¹ýÀ» ÅëÇØ¼
¸µÅ©-ŸÀÓ¿¡ ÃÖÀûȰ¡ °¡´ÉÇÕ´Ï´Ù:
-
ÀÚÁÖ »ç¿ëµÇ´Â Äڵ尡 È®ÀÎµÇ¸é ±×°ÍµéÀ» ÇÑ ±ºµ¥·Î ¸ðÀ¸´Â°ÍÀÌ °¡´ÉÇÏ°í ¶ÇÇÑ ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â ÄÚµåµéµµ ¸ðÀ¸´Â °ÍÀÌ °¡´ÉÇÏ´Ù.
±×·±ÈÄ¿¡ ´Ù¸¥ ·çƾ¿¡¼ ÀÚÁÖ »ç¿ëµÇ´Â ÄÚµåµéÀ» ÀÚÁÖ »ç¿ëµÇ´Â ÇÑ Áö¿ªÀÇ ¸Þ¸ð¸®·Î À̵¿½ÃŲ´Ù.
-
º¯¼ö¿Í ·çƾµéÀÇ ÁÖ¼Ò°¡ Á¤È®ÇÏ°Ô °è»êÀÌ °¡´ÉÇÏ´Ù¸é Á» ´õ ÃÖÀûȸ¦ ÇÒ ¼ö ÀÖ´Ù. µû¶ó¼ ¸µÅ©-ŸÀÓ ¿ÉƼ¸¶ÀÌÁ®°¡ º¯¼ö³ª ·çƾÀÇ
ÁÖ¼Ò °è»ê Ç¥ÇöÀ» °£´ÜÇÏ°Ô ÇÏ¿© ¸í·É¾î Ä«¿îÆ®¸¦ ÁÙ¿© ÁÙ ¼ö ÀÖ´Ù.
±×¸² 4¹øÀº ¸µÅ©-ŸÀÓ ÃÖÀûȰ¡ ¼öÇàµÈ µÚ¿¡ ¾îÇø®ÄÉÀ̼ÇÀÇ ¸ð½ÀÀ» º¸¿©ÁÝ´Ï´Ù. ÀÚÁÖ »ç¿ëµÇ´Â ÄÚµå´Â ¹ÙÀ̳ʸ®ÀÇ ÇÑ ºÎºÐ¿¡ ¸ð¿©Á® ÀÖ°í
ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â ºÎºÐÀº ³ª¸ÓÁö¿¡ ¹è¿ µÇÀÖ½À´Ï´Ù.

¸µÅ©-ŸÀÓ ÃÖÀûÈ ´Ü°è´Â ÇÁ·ÎÆÄÀÏ Çǵå¹é µ¥ÀÌÅͰ¡ ÇÊ¿äÇÕ´Ï´Ù. ±×·¡¼ ´ÙÀ½°ú °°Àº ´Ü°è¸¦ µû¶ó¾ß ÇÕ´Ï´Ù:
-
flags -xprofile=collect -xipo¸¦ ÀÌ¿ëÇÏ¿© ¾îÇø®ÄÉÀ̼ÇÀ»
ºôµåÇÑ´Ù
-
Run the application with one or more representative workloads
-
-xprofile=use -xipo -xlinkopt¸¦ ÀÌ¿ëÇÏ¿© ¾îÇø®ÄÉÀ̼ÇÀ»
¸®ºôµåÇÑ´Ù
$ cc -O -xprofile=collect:app.profile -xipo -o app *.c
$ app < test_data
$ cc -O -xprofile=use:app.profile -xipo -o app *.c -xlinkopt
|
Ç¥ 3 - ¸µÅ©-ŸÀÓ ÃÖÀûÈ¿Í ÇÁ·ÎÆÄÀÏ Çǵå¹éÀ» Á¶ÇÕ
°á·Ð
Å« ±Ô¸ðÀÇ ¾îÇø®ÄÉÀ̼ǿ¡ ÀÌ·¯ÇÑ ±â¼úÀ» »ç¿ëÇÏ¸é ¾öû³ ¼º´É Çâ»óÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. ¹°·Ð ºôµåŸÀÓÀÌ Áõ°¡ÇÏ°í ºôµåÀÇ º¹À⼺ÀÌ Áõ°¡ÇÑ´Ù´Â
°ÍÀº ´ç¿¬ÇÕ´Ï´Ù; °á°úÀûÀ¸·Î Ãß°¡ÀûÀÎ ³ë·Â¿¡ ºñÇØ ¼º´ÉÀ» ¾ó¸¶³ª Çâ»ó½Ãų ¼ö ÀÖ´ÂÁö µûÁ® º» ÈÄ¿¡ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¶ÇÇÑ ¸ðµç ¾îÇø®ÄÉÀ̼ÇÀÌ
ÀÌ·¯ÇÑ ÄÚµå ·¹À̾ƿô ÃÖÀûÈ °úÁ¤À» °ÅÃÄ¾ß ÇÏ´Â °Íµµ ¾Æ´Ï°í °³¹ß°úÁ¤¿¡¼ÀÇ ºôµå¿¡¼´Â ÀÌ·¯ÇÑ °úÁ¤ÀÌ ÇÊ¿ä¾øÀ¸¸ç ÃÖÁ¾ Á¦Ç° ºôµåÀ϶§¿¡ »ç¿ëµÇ¾î¾ß
ÇÑ´Ù´Â °Íµµ ¾Ë¾Æ¾ß ÇÕ´Ï´Ù.
ÀúÀÚ¿¡ ´ëÇÏ¿©
Darryl Gove´Â ½ã ¸¶ÀÌÅ©·Î½Ã½ºÅÛÁîÀÇ ÄÄÆÄÀÏ·¯ ÆÛÆ÷¸Õ½º ¿£Áö´Ï¾î¸µ ºÎ¼¿¡¼ ±Ù¹«Çϸç ÇöÀç ±×¸®°í ¹Ì·¡ÀÇ UltraSPARC
ÇÁ·Î·¹¼ »óÀÇ ¾îÇø®ÄÉÀÌ¼Ç ÆÛÆ÷¸Õ½º ÃÖÀûȸ¦ ´ã´çÇÏ´Â ÀÏÀ» Çϰí ÀÖ´Ù. DarrylÀº ¿µ±¹ÀÇ »ç¿ì½º ÇÜÆ° ´ëÇп¡ ¼®,¹Ú»ç ÇÐÀ§¸¦ °¡Áö°í
ÀÖ°í ½ã¿¡¼ ±Ù¹«Çϱâ Àü¿¡´Â ¿µ±¹¿¡¼ ´Ù¾çÇÑ ¼ÒÇÁÆ®¿þ¾î °³¹ß¿¡ Âü¿©Çß´Ù.
|