BACKRUSH  À¯´Ð½º¸í·É  ´ÙÀ½  ÀÚ·á½Ç  Ascii Table   ¿ø°ÝÁ¢¼Ó  ´Þ·Â,½Ã°£   ÇÁ·Î¼¼½º   ½©
ÁöÇÏö³ë¼±   RFC¹®¼­   SUN FAQ   SUN FAQ1   C¸Þ´º¾ó   PHP¸Þ´º¾ó   ³Ê±¸¸®   ¾Æ½ºÅ°¿ùµå ¾ÆÀÌÇǼ­Ä¡

±Û¾´ÀÌ: gc GC ¸ð´ÏÅ͸µ Á¶È¸¼ö: 8288


°¡ºñÁö ÄÝ·º¼Ç
2004³â 1¿ùÀÇ Å×Å©ÆÁÀ̾ú´ø Monitoring Class Loading and Garbage Collection¿¡¼­´Â ÀÚ¹Ù Ä¿¸Çµå ¶óÀÎ Åø (ÀÚ¹Ù ¾ÖÇø®ÄÉÀÌ¼Ç ·±ÃÄ)¸¦ ÀÌ¿ëÇÏ¿© Ä¿¸Çµå ¶óÀÎ ¿É¼ÇÀÎ -verbose:gc¿¡ ´ëÇؼ­ ¾Ë¾Æº¸¾Ò´Ù. Ç¥ÁØÀÌ ¾Æ´Ï¶ó´Â ÀÌÀ¯·Î -XX ¿É¼Ç¿¡ ´ëÇØ ½Å°æ ¾²Áö ¾Ê´Â´Ù°Å³ª, ¿É¼ÇÀÇ ±ÕÁú¼ºÀ» Áß¿ä½ÃÇѴٰųª, ¶Ç´Â ÇöÀç »ç¿ëÇÏ°í ÀÖ´Â ¿É¼Ç¿¡ ´ëÇؼ­ ¾Ë°í ½Í´Ù¸é ´ÙÀ½°ú °°ÀÌ -verbose:gc ¸¦ ÀÔ·ÂÇغ¸ÀÚ.

-XX:+PrintGC -XX:+TraceClassUnloading

ÀÌ°ÍÀº -verbose:gc ¿É¼ÇÀÌ ¾î¶»°Ô ¹ø¿ªµÇ´ÂÁö¸¦ º¸¿©ÁØ´Ù.

ÀÌ ¿É¼ÇÀº ¾ÖÇø®ÄÉÀ̼ÇÀÌ ½ÇÇàµÇ´Â µ¿¾È °¡ºñÁö ÄÝ·º¼Ç À̺¥Æ®ÀÇ ¸®Æ÷Æ®¸¦ ¿ä±¸ÇÑ´Ù. J2SE v1.4.2¿¡¼­´Â °¡ºñÁö ÄÝ·ºÅ͸¦ ÄÁÆ®·ÑÇÏ´Â ´Ù¸¥ ¸¹Àº Ä¿¸Çµå ¶óÀÎÀÌ ÀÖ´Ù. ÄÚµåÀÇ ¾î´À ¶óÀεµ º¯°æÇÏÁö ¾Ê°í ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¼º´ÉÀ» ÃÖ´ëÇÑÀ¸·Î È°¿ëÇÏ·Á¸é, ÀÌ ¿É¼ÇµéÀ» ÃÖ¼ÒÇÑ Çϳª ÀÌ»ó »ç¿ëÇÒ ¼ö°¡ ÀÖ´Ù. À̹ø ÆÁ¿¡¼­´Â °¡ºñÁö ÄÝ·ºÅ͸¦ ÄÁÆ®·ÑÇÏ´Â ºÎ¼öÀûÀÎ ¸¹Àº ÀÚ¹Ù Ä¿¸Çµå ¶óÀÎÀ» ´Ù·ê °ÍÀÌÁö¸¸, °¡ºñÁö ÄÝ·º¼Ç Æ©´× ¿É¼ÇÀÇ Àüü¸¦ ¸»ÇÏÁö´Â ¾Ê´Â´Ù.

ÀÚ¹Ù ¾ÖÇø®ÄÉÀÌ¼Ç ·±ÃĴ ǥÁØ Ä¿¸Çµå-¶óÀÎ ½ºÀ§Ä¡¿Í ºñÇ¥ÁØ Ä¿¸Çµå-¶óÀÎ ½ºÀ§Ä¡¸¦ ¸ðµÎ µ¿¹ÝÇÑ´Ù. -verbose:gc ¿É¼Ç¿¡ °üÇÑ Á¤º¸¿¡ ´ëÇØ ¾Ë¾Æº¸·Á¸é, ƯÁ¤ Ç÷§Æûº°·Î ´ÙÀ½ À¥ÆäÀÌÁö¸¦ Âü°íÇÏÀÚ.

Win32
Solaris
Linux
À§ÀÇ Âü°í ÆäÀÌÁö¿¡´Â ¸î¸î ºñÇ¥ÁØ ¿É¼Çµé¿¡ ´ëÇؼ­µµ ³ª¿ÍÀÖ´Ù. ÀÚ¹Ù Ä¿¸Çµå ¶óÀÎ Åø¿¡¼­ Ç¥ÁØ ¿É¼ÇÀÎ -XÀ» ½ÇÇàÇÏ¸é »ç¿ëÀÚÀÇ Ç÷§ÆûÀ» À§ÇÑ ºñÇ¥ÁØ ¿É¼ÇÀ» º¸¿©ÁØ´Ù.

¼Ö¶ó¸®½º Ç÷§ÆûÀ̶ó¸é, java -X À» ½ÇÇàÇßÀ» °æ¿ì Ãâ·ÂµÇ´Â ³»¿ëÀº ´ÙÀ½°ú °°´Ù.

-Xmixed mixed mode execution (default)
-Xint interpreted mode execution only
-Xbootclasspath:<directories and zip/jar files separated by :>
set search path for bootstrap classes and
resources
-Xbootclasspath/a:<directories and zip/jar files separated by :>
append to end of bootstrap class path
-Xbootclasspath/p:<directories and zip/jar files separated by :>
prepend in front of bootstrap class path
-Xnoclassgc disable class garbage collection
-Xincgc enable incremental garbage collection
-Xloggc:<file> log GC status to a file with time stamps
-Xbatch disable background compilation
-Xms<size> set initial Java heap size
-Xmx<size> set maximum Java heap size
-Xss<size> set java thread stack size
-Xprof output cpu profiling data
-Xrunhprof[:help]|[:<option>=<value>, ...]
perform JVMPI heap, cpu, or monitor profiling
-Xdebug enable remote debugging
-Xfuture enable strictest checks, anticipating future
default
-Xrs reduce use of OS signals by Java/VM (see
documentation)
-Xcheck:jni perform additional checks for JNI functions

The -X options are non-standard and subject to change without
notice.

À§ÀÇ Ãâ·Â°ªÀÇ ¸¶Áö¸· ÁÙÀ» ÁÖ¸ñÇÏÀÚ. ±×·¯ÇÑ ºñÇ¥ÁØ ¿É¼ÇµéÀ» »ç¿ëÇÏ´Â °ÍÀº »ç¿ëÀÚÀÇ Ã¥ÀÓ ÇÏ¿¡ ÀÖÀ½À» ºÐ¸íÈ÷ ³ªÅ¸³»°í ÀÖ´Ù.

°¡ºñÁö ÄÝ·º¼ÇÀ» À§ÇÑ ¼¼ °¡Áö ƯÁ¤ÇÑ ºñÇ¥ÁØ ¿É¼ÇÀº -Xnoclassgc, -Xincgc, ±×¸®°í -Xloggc:<file>ÀÌ´Ù. -Xnoclassgc ¿É¼ÇÀ» ÁöÁ¤ÇÑ´Ù¸é, ÄÝ·º¼ÇÀÌ ¹ß»ýÇÏÁö¸¸ Ŭ·¡½ºµéÀº permanent generationÀ¸·ÎºÎÅÍ ¼öÁýµÇÁö ¾Ê´Â´Ù. ÀÌ´Â ÄÝ·º¼ÇÀÌ ¼ö°ÅÇÏ´Â ¸Þ¸ð¸®°¡ ¾øÀ½À» ÀǹÌÇÑ´Ù. ¸¸¾à Ŭ·¡½º¸¦ ·ÎµùÇÏ·Á°í ÇÒ ¶§ ÀÌ¹Ì ·ÎµùµÈ Ŭ·¡½ºµéÀ» À§ÇØ ¸Þ¸ð¸®¸¦ ½á¹ö·È´Ù¸é ÄÝ·º¼ÇÀº ¹®Á¦¸¦ ÇØ°áÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.

½ãÀÇ 1.4.2 ±¸Çö¿¡¼­ -XincgcÀº -XX:+UseTrainGC ¿É¼Ç°ú µ¿µîÇÑ °ªÀ» °¡Áø´Ù. Áï, -XincgcÀº old generationÀ» À§Çؼ­ µðÆúÆ® °ª¿¡¼­ ÁÖ¾îÁø "serial" ÄÝ·ºÅ͸¦ »ç¿ëÇϱ⠺¸´Ù´Â "train"ÄÝ·ºÅ͸¦ »ç¿ëÇÑ´Ù. ("generations"ÀÇ °³³äÀº À̹ø ÆÁÀÇ ÈĹݿ¡¼­ ´Ù·ç°ÔµÈ´Ù.) train ÄÝ·ºÅÍ´Â ¾à 10%ÀÇ ÆÛÆ÷¸Õ½º ºÎÇϸ¦ ¹ß»ý½ÃŲ´Ù. ¶ÇÇÑ old generation Àüü¸¦ ÇÑ ¹ø¿¡ ¼öÁýÇÒ ¼ö ¾ø±â ¶§¹®¿¡ ¾à°£ÀÇ °ø°£ÀûÀÎ ºÎÇÏ(space overhead)µµ ¹ß»ýÇÑ´Ù. train ÄÝ·ºÅÍ´Â Á¡ÁøÀûÀ¸·Î ÀÛµ¿ÇÏ´Â ÀåÁ¡À» °¡Áö±â ¶§¹®¿¡ ÈÞÁö ½Ã°£ÀÌ »ó´çÈ÷ ª´Ù. J2SE 1.5.0 º£Å¸ ¸±¸®Áî¿¡¼­´Â -Xincgc Ç÷¡±×´Â train ÄÝ·ºÅͺ¸´Ù´Â CMS(concurrent mark sweep) ÄÝ·ºÅ͸¦ Àκ¸Å·ÇÏ°Ô µÈ´Ù. ±× ÀÌÀ¯´Â, CMS ÄÝ·ºÅÍ°¡ train ÄÝ·ºÅͺ¸´Ù ´õ ±ÕÀÏÇϱ⠶§¹®ÀÌ´Ù.

-Xloggc ¿É¼ÇÀ» ÁöÁ¤ÇØÁÜÀ¸·Î½á -verbose:gc Ãâ·Â°ªÀÇ µî°¡¸¦ ÆÄÀÏ·Î Ãâ·ÂÇÒ ¼ö ÀÖ´Ù. -verbose:gc ¿¡ ÀÇÇÑ Ãâ·Â°ª°ú ºñ±³ÇØ º¸¸é, -Xloggc ¿¡ ÀÇÇÑ Ãâ·Â°ªÀº ÇÑ °¡Áö Ãß°¡ÀûÀÎ Ç׸ñÀ» Æ÷ÇÔÇϴµ¥, ±×°ÍÀº ¾ÖÇø®ÄÉÀ̼ǿ¡¼­ÀÇ Ã¹ ÄÝ·º¼ÇÀÌ ÀϾ ½Ã°£¿¡¼­ºÎÅÍ °¡ºñÁö ÄÝ·º¼ÇÀÌ ¹ß»ýÇÑ ½Ã°£¿¡ ´ëÇÑ Á¤º¸ÀÌ´Ù. ´ÙÀ½ÀÇ -Xloggc »ùÇà Ãâ·Â°ª¿¡¼­ »ìÆ캸ÀÚ.

0.000: [GC 512K->153K(1984K), 0.0198483 secs]
0.372: [GC 506K->281K(1984K), 0.0206428 secs]
0.393: [Full GC 281K->281K(1984K), 0.0888926 secs]
0.519: [GC 947K->941K(1984K), 0.0045715 secs]
0.524: [Full GC 941K->941K(1984K), 0.0797666 secs]
0.650: [GC 2107K->1597K(2808K), 0.0013546 secs]
0.838: [GC 2107K->1700K(2808K), 0.0116557 secs

ÆÄÀÏ¿¡ ÀçÀü¼ÛÇÒ ÇÊ¿ä¾øÀÌ -XX:+PrintGCTimeStamps ¿É¼ÇÀ» ÁöÁ¤ÇØÁÜÀ¸·Î½á -Xloggc Ãâ·Â°ª¿¡ ½Ã°£ ¼ÒÀÎÀ» ³ªÅ¸³¾ ¼ö ÀÖ´Ù.

-Xnoclassgc, -Xincgc °ú -Xloggc:<file> ÀÌ¿Ü¿¡µµ °¡ºñÁö ÄÝ·ºÅ͸¦ ÄÁÆ®·ÑÇÏ´Â ´Ù¸¥ ¿É¼ÇµéÀÌ Á¸ÀçÇÑ´Ù. ¿¹¸¦ µéÀÚ¸é, ÄÝ·ºÅÍ°¡ ½ÇÇàÇÒ ¶§ °£Á¢ÀûÀ¸·Î ¿µÇâÀ» ³¢Ä¡µµ·Ï -Xms¿Í -Xmx ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¸Þ¸ð¸® ÇÒ´çÀÇ Ç® »çÀÌÁ º¯°æÇÒ ¼ö ÀÖ´Ù. -XmsÀÇ °ªÀ» Å©°Ô ÁöÁ¤ÇØÁÖ¸é, ±×¸¸Å­ Å« ÀÚ¹Ù °´Ã¼ ÈüÀ¸·Î ÀÛ¾÷ÇÏ°Ô µÈ´Ù. ÀÌ°ÍÀº ÈüÀ» ä¿ì´Â µ¥¿¡ ´õ ¸¹Àº ½Ã°£ÀÌ °É¸°´Ù´Â °ÍÀ» ÀǹÌÇÏ°í °á°úÀûÀ¸·Î ÄÝ·º¼ÇÀ» ÇÇÇÏÁö´Â ¾ÊÁö¸¸ ¹Ì·ç°Ô µÈ´Ù´Â °ÍÀÌ´Ù. Å« -Xms °ªÀº ¶ÇÇÑ ´õ ¸¹Àº ½Ã½ºÅÛ ¸®¼Ò½º¸¦ ¼Ò¸ðÇÏ°Ô µÈ´Ù. ¹Ý¸é -XmxÀÇ °ªÀ» Å©°Ô ÁöÁ¤Çϸé, ÀÚ¹Ù °´Ã¼ ÈüÀÇ »çÀÌÁî°¡ ÇÊ¿ä ½Ã¿¡ Ä¿Áú ¼ö ÀÖ°Ô µÈ´Ù. ÀÌ·¸°Ô °ªÀÌ Å« °´Ã¼ ÈüÀº Á¶±Ý ´ú ºó¹øÇÏ°Ô °¡ºñÁö ÄÝ·ºÆ®µÈ´Ù´Â Á¡ ¿Ü¿¡´Â ¸ðµç Á¡ÀÌ µ¿ÀÏÇÏ´Ù. µû¶ó¼­ ÀÌ ¿É¼ÇÀ» ÅëÇØ °¡ºñÁö ÄÝ·º¼ÇÀÌ ºó¹øÇÏÁö¸¸ ªÀº ½Ã°£µ¿¾È ÀϾ´Â °Í°ú, Ƚ¼ö´Â ÀûÁö¸¸ ¿À·£ ½Ã°£µ¿¾È °¡ºñÁö ÄÝ·º¼ÇÀÌ ÀϾ´Â °Í Áß Çϳª¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ °¢°¢ÀÇ ÄÝ·º¼ÇÀÌ ºÎÇϸ¦ ¹ß»ýÇϱ⠶§¹®¿¡, »ç¿ëÀÚ°¡ Á¤ÀÇÇÏ´Â ¿ä±¸Á¶°Ç¿¡ µû¶ó ´õ ³ªÀº Á¢±Ù¹ýÀº ´Þ¶óÁö°Ô µÇ¾îÀÖ´Ù.

-Xms ¿Í -Xmx ¿Ü¿¡µµ °¡ºñÁö ÄÝ·º¼Ç¿¡ ¿µÇâÀ» ÁÖ´Â ºñÇ¥ÁØ ¿É¼ÇµéÀÌ Á¸ÀçÇÑ´Ù. ±× ¿É¼ÇµéÀº java -X µµ¿ò¸»¿¡¼­ º¼ ¼ö ¾ø´Âµ¥, ±× ÀÌÀ¯´Â ÀÌ ¿É¼ÇµéÀº ºñÇ¥ÁØ ¿É¼ÇÀ̱⠶§¹®¿¡ µÎ°³ÀÇ X¸¦ »ç¿ëÇؾßÇϱ⠶§¹®ÀÌ´Ù.

¸¸¾à ÈüÀÇ ÃÖ¼Ò°ª°ú ÃÖ´ë°ªÀ» ÁöÁ¤ÇØÁÖ°íÀÚ ÇÑ´Ù¸é (ÀÌ ¶§, µðÆúÆ® °ªÀÇ ¹üÀ§´Â 40%~70%), -XX:MinHeapFreeRatio=<Minimum> ¿É¼Ç°ú -XX:MaxHeapFreeRatio=<Maximum> ¿É¼ÇÀ» »ç¿ëÇÏ¸é µÈ´Ù. ±×·¯³ª ÃÖ¼Ò°ªÀ» ³Ê¹« ÀÛ°Ô ¼³Á¤ÇسõÀ¸¸é, ÈüÀº ÄÝ·º¼Ç ÈÄ¿¡ ÃæºÐÇÑ ¿©À¯°ø°£À» È®º¸ÇÏÁö ¸øÇÏ°Ô µÇ¹Ç·Î, ´Ü±â°£ ³»¿¡ ¶Ç´Ù½Ã ÄÝ·ºÆÃÀ» ÇؾßÇÒ ¼öµµ ÀÖ´Ù. ¹Ý¸é, ÃÖ¼Ò°ªÀ» Å©°Ô ¼³Á¤Çϸé, ´õ ¸¹Àº "head room"ÀÌ »ý±â¹Ç·Î ´ÙÀ½ ÄÝ·º¼Ç ¶§±îÁö ½Ã°£À» Áö¿¬½Ãų ¼ö ÀÖÀ» °ÍÀÌ´Ù. -XX:MinHeapFreeRatio ÀÇ °ªÀ» Å©°Ô ÇßÀ» ¶§ÀÇ ´ÜÁ¡Àº ½Ã½ºÅÛ ¸Þ¸ð¸®°¡ ÀÌ °¡»ó ÀåÄ¡¿¡ °íÁ¤µÇ±â ¶§¹®¿¡ »ç¿ëÀÚÀÇ ¶Ç ´Ù¸¥ ¾ÖÇø®ÄÉÀ̼ǿ¡ »ç¿ëµÉ ¼ö ¾ø´Ù´Â Á¡ÀÌ´Ù.

-XX ¼¼Æ®³»ÀÇ ´Ù¸¥ ºñÇ¥ÁØ ¿É¼ÇµéÀº °¡ºñÁö ÄÝ·ºÅÍÀÇ ÀÛµ¿ ¹æ¹ý¿¡ ¿µÇâÀ» ³¢Ä£´Ù. -XX:+UseConcMarkSweepGC Ä¿¸Çµå ¶óÀÎ Ç÷¡±×("concurrent mark sweep garbage collection"ÀÇ ÁÙÀÓ¸»)´Â º´Çà(concurrent) °¡ºñÁö ÄÝ·ºÅ͸¦ ½ÇÇà½ÃŲ´Ù. -XX:+UseConcMarkSweepGC ÄÝ·ºÅÍ´Â old generationÀ» µ¿½Ã¿¡ ÄÝ·ºÆÃÇÑ´Ù. ±× ÀÌÀ¯´Â Àü¹ÝÀûÀÎ ÄÝ·º¼Ç °°Àº old generation µéÀº ÄÝ·¢ÆÃÇÒ ¶§ ´ëüÀûÀ¸·Î ½Ã°£ÀÌ ¿À·¡ °É·Á¼­ º´Çà °¡ºñÁö ÄÝ·ºÅ͸¦ ½ÇÇà½ÃÅ°´Â °ÍÀÌ ´õ È¿°úÀûÀ̱⠶§¹®ÀÌ´Ù. ÀÌ´Â ¾ÖÇø®ÄÉÀ̼ǿ¡¼­ °¡ºñÁö ÄÝ·º¼Ç ÈÞÁö ½Ã°£À» ª°Ô ÇÒ ¼ö ÀÖµµ·Ï ÇÁ·Î¼¼½Ì ÆÄ¿ö¸¦ È°¿ëÇÑ´Ù´Â °ÍÀ» ¸»ÇÑ´Ù. -XX:+UseParallelGC Ä¿¸Çµå ¶óÀÎ Ç÷¡±×´Â º´·Ä °¡ºñÁö ÄÝ·ºÆÃÀ» °¡´ÉÇÏ°Ô ÇÑ´Ù. -XX:+UseParallelGC ÄÝ·ºÅÍ´Â ¿ÀÁ÷ ´ÙÁß ÇÁ·Î¼¼¼­¸¦ ÀÌ¿ëÇÑ young generation¸¸À» ÄÝ·ºÆÃÇÑ´Ù. ÀÌ Á¢±Ù¹ýÀº ó¸®À²Àº ³ôÀÌÁö¸¸, Àü¹ÝÀûÀÎ ÄÝ·º¼ÇÀÇ ÈÞÁö ½Ã°£À» ÁÙÀÌÁö´Â ¸øÇÑ´Ù.

¶Ç ÇϳªÀÇ Èï¹Ì·Î¿î ¿É¼ÇÀÎ -XX:+PrintGCDetails ´Â °¢°¢ÀÇ ÄÝ·º¼Ç¿¡¼­ °¢ generation¿¡ ¾î¶² ÀÏÀÌ ¹ß»ýÇß´ÂÁö¸¦ º¸¿©ÁØ´Ù. (´Ü, permanent generation ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ »çÇ×µéÀº º¸¿©ÁÖÁö ¾Ê´Â´Ù. ÀÌ Á¡Àº JDK 1.5.0.¿¡¼­ ¼öÁ¤µÇ¾ú´Ù.)

SwingSet2ÀÇ µ¥¸ð¿¡ »ç¿ëµÈ -XX:+PrintGCDetailsÀÇ ¿¹Á¦¸¦ »ìÆ캸ÀÚ. (Ãâ·Â°ªÀÇ ¶óÀεéÀº Å×Å©ÆÁ ÆäÀÌÁöÀÇ °æ°è¼±¿¡ ¸ÂÃß±â À§ÇØ ³ª´©¾îÁÖ¾ú´Ù.)

java -Xloggc:details.out -XX:+PrintGCDetails -jar
/home/eo86671/j2sdk1.4.2/demo/jfc/SwingSet2/SwingSet2.jar

0.000: [GC 0.000: [DefNew: 511K->64K(576K), 0.0182344 secs]
511K->153K(1984K), 0.0185255 secs]
1.387: [GC 1.387: [DefNew: 417K->64K(576K), 0.0192086 secs]
1.407: [Tenured: 217K->281K(1408K), 0.0725645 secs]
506K->281K(1984K), 0.0923346 secs]
1.559: [GC 1.559: [DefNew: 10K->3K(576K), 0.0044098 secs]
1.564: [Tenured: 937K->941K(1408K), 0.0741569 secs]
948K->941K(1984K), 0.0790573 secs]
1.703: [GC 1.703: [DefNew: 510K->0K(576K), 0.0011627 secs]
2107K->1597K(2808K), 0.0013820 secs]
2.210: [GC 2.210: [DefNew: 509K->64K(576K), 0.0112637 secs]
2107K->1710K(2808K), 0.0115942 secs]
2.927: [GC 2.927: [DefNew: 575K->64K(576K), 0.0170128 secs]
2222K->1841K(2808K), 0.0173293 secs]
8.430: [GC 8.430: [DefNew: 576K->64K(576K), 0.0142839 secs]
2353K->2025K(2808K), 0.0156266 secs]
8.823: [GC 8.823: [DefNew: 494K->64K(576K), 0.0164915 secs]
2456K->2243K(2808K), 0.0166323 secs]
8.856: [GC 8.856: [DefNew: 569K->41K(576K), 0.0058505 secs]
8.862: [Tenured: 2341K->1656K(2360K), 0.1464764 secs]
2749K->1656K(2936K), 0.1526133 secs]

º¯°æ³»¿ëÀÌ ±× °á°ú¿¡ ¾î¶² ¿µÇâ (¿¹¸¦ µé¾î¼­, ÄÝ·º¼Ç°£ÀÇ ½Ã°£ ¿¬ÀåÀ̳ª °¢°¢ ƯÁ¤ ÈÞÁö ½Ã°£ÀÇ °¨¼Ò)À» ÁÖ´ÂÁö¸¦ ¾Ë¾Æº¸±â À§ÇØ -Xms ¿É¼Ç°ú -Xmx ¿É¼ÇÀ» Á¶Á¤Çغ¸ÀÚ.

¾Õ¼­ 'generations'ÀÇ Èü °ø°£¿¡ ´ëÇØ ¾ð±ÞÇÑ ¹Ù ÀÖ´Ù. ÀÌ ¸»ÀÌ ¹«½¼ ÀǹÌÀÎÁö ±Ã±ÝÇÏ´Ù¸é, ¿©±â ©¸·ÇÑ ¼³¸íÀ» ÂüÁ¶ÇÏÀÚ. JRE 1.4.2 ¿¡¼­ ÈüÀº young, old, ±×¸®°í permanet¿Í °°ÀÌ ¼¼ °³ÀÇ generationÀ¸·Î ±¸ºÐµÈ´Ù. young generationÀº °´Ã¼°¡ »ý¼ºµÈ Àå¼ÒÀÌ´Ù. ÀÌ generationÀÇ »çÀÌÁî´Â -XX:NewSize ¿É¼Ç°ú -XX:MaxNewSize ¿É¼Ç¿¡ ÀÇÇØ ÄÁÆ®·ÑµÈ´Ù. »õ·Î¿î °´Ã¼¸¦ º¸À¯ÇÏ°Ô µÇ¸é, old generationÀ¸·Î ½Â°ÝµÈ´Ù. old generationÀÇ »çÀÌÁî´Â Àüü Èü »çÀÌÁî (-Xms °ú -Xmx) ¿¡¼­ young generationÀÇ »çÀÌÁî (-XX:NewSize °ú -XX:MaxNewSize)¸¦ °¨ÇÑ »çÀÌÁî·Î °è»êµÈ´Ù. young generationÀº ¸í½ÃÀû Å©±âº¸´Ù´Â -XX:NewRatio=¸¦ ÀÌ¿ëÇÏ¿© ´õ Àß ÁöÁ¤ÇÒ ¼ö Àִµ¥, -XX:NewRatio= ¿É¼ÇÀº Èü ¼³Á¤ÀÇ Àüü »çÀÌÁ ¼³Á¤ÇØÁֱ⠶§¹®ÀÌ´Ù. ¼±ÅÃÇÑ »çÀÌÁî´Â ÄÝ·ºÆà µÇ´Â ½Ã°£¿¡ ´ëÇØ ÄÝ·º¼ÇÀÇ È½¼ö¸¦ °áÁ¤ÇÏ°Ô µÈ´Ù. ¾î¶² ¾ÖÇø®ÄÉÀ̼ǵéÀº ªÀº ÈÞÁö ½Ã°£À» ¿ä±¸ÇÏ´Â ÇÑÆí, ÄÝ·ºÅÍÀÇ È¿À²¼ºÀ» ÇÊ¿ä·Î ÇÏ´Â ¾ÖÇø®ÄÉÀ̼ǵ鵵 ÀÖ´Ù. (¸¹Àº ¾ÖÇø®ÄÉÀ̼ǿ¡¼­ ÀÌ ´Ü°èÀÇ Æ©´×À» ÇØÁÙ ÇÊ¿ä´Â ÀüÇô ¾ø´Ù.)

¸¶Áö¸·À¸·Î ¾ð±ÞÇÒ GC¿É¼ÇÀº -XX:+DisableExplicitGCÀÌ´Ù. System.gc()ÀÇ È£ÃâÀ» ÀÌ¿ëÇÏ¿© °¡ºñÁö ÄÝ·ºÅ͸¦ ½ÇÇàÇ϶ó´Â ¸í·ÉÀ» ÇßÀ» ¶§, ½Ã½ºÅÛÀÌ À̸¦ ¹«½ÃÇϱ⸦ ¿øÇÑ´Ù¸é ÀÌ ¿É¼ÇÀ» »ç¿ëÇغ¸ÀÚ. °¡ºñÁö ÄÝ·ºÅÍ´Â ÇÁ·Î±×·¡¸Ó°¡ ¸í·ÉÇßÀ» ¶§°¡ ¾Æ´Ñ, ÇÊ¿ä½Ã¿¡ °è¼ÓÇؼ­ ½ÇÇàµÇ°í ÀÖÀ» °ÍÀÌ´Ù. ÇÏÁö¸¸ ÇÁ·Î±×·¡¸ÓÀÇ ¸í·ÉÀ» ¹«½ÃÇÏ´Â °ÍÀÌ ÁÁÀº »ý°¢Àϱî? ¾Æ¸¶µµ ¾Æ´Ò °ÍÀÌ´Ù. ¿Ö³ÄÇϸé, ÇÁ·Î±×·¡¸Ó°¡ °¡ºñÁö ÄÝ·ºÅ͸¦ ½ÇÇàÇϱâ Àû´çÇÑ ½ÃÁ¡À̶ó°í »ý°¢ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ¹°·Ð, ¸¸¾à °øÀ¯ ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ°í ÀÖ°í, ½ÇÇà ÄÜÅؽºÆ®°¡ ÇÁ·Î±×·¡¸ÓÀÇ ¿ø·¡ÀÇ °èȹ°ú ´Ù¸£´Ù¸é, ÀÌ·¯ÇÑ »õ·Î¿î »óȲ¿¡ À¯È¿ÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ´Ù.

°¡ºñÁö ÄÝ·º¼Ç¿¡ °ü·ÃµÈ ¿É¼Çµé¿¡ ´ëÇØ Á»´õ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¿øÇÑ´Ù¸é, Tuning Garbage Collection with the 1.4.2 Java Virtual Machine¸¦ Àо±â ¹Ù¶õ´Ù. Æ©´×À» ÇÒ ¶§´Â Æ©´×ÀÇ ¸ñÀûÀÌ ¼º´É Çâ»óÀÎÁö, ªÀº ÈÞÁö ½Ã°£ÀÎÁö ¾Æ´Ï¸é ÀÛÀº ¹üÀ§ÀÇ ¤¤¸Þ¸ð¸® »ç¿ëÀ» À§ÇÑ °ÍÀÎÁö ±× ¸ñÀûÀ» È®½ÇÈ÷ ÇØ¾ß ÇÑ´Ù. JVMÀÌ ¾÷µ¥ÀÌÆ® µÇ¸é¼­ ¼±ÅÃÇÒ ¼ö ÀÖ´Â Æ©´× ¿É¼Çµéµµ ´Ù½Ã Çѹø »ìÆì º¸¾Æ¾ß ÇÑ´Ù. À̹ø ÆÁ¿¡¼­ ´Ù·é ¿É¼ÇµéÀÇ ´ëºÎºÐÀº ½ãÀÇ ·±Å¸ÀÓ È¯°æ 1.4.2 ¸±¸®Áî¿¡ ÇÑÁ¤µÊÀ» ±â¾ïÇÏÀÚ. 1.5.0 ¸±¸®Áî´Â °íÀ¯ÀÇ ÄÁÆ®·Ñ ¼Â°ú µðÆúÆ® ¼ÂÀ» °¡Áø´Ù.

°ü·Ã±Û : ¾øÀ½ ±Û¾´½Ã°£ : 2006/06/19 15:42 from 218.38.148.205

  [ÀÀ´ä]gc Àå¾ÖÁø´Ü ¸ñ·Ïº¸±â »õ±Û ¾²±â Áö¿ì±â ÀÀ´ä±Û ¾²±â ±Û ¼öÁ¤ IIS Á×´Â Çö»ó Æ©´×  
BACKRUSH  À¯´Ð½º¸í·É  ´ÙÀ½  ÀÚ·á½Ç  Ascii Table   ¿ø°ÝÁ¢¼Ó  ´Þ·Â,½Ã°£   ÇÁ·Î¼¼½º   ½©
ÁöÇÏö³ë¼±   RFC¹®¼­   SUN FAQ   SUN FAQ1   C¸Þ´º¾ó   PHP¸Þ´º¾ó   ³Ê±¸¸®   ¾Æ½ºÅ°¿ùµå ¾ÆÀÌÇǼ­Ä¡