[ 
https://issues.apache.org/jira/browse/TS-1006?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13539224#comment-13539224
 ] 

jaekyung oh commented on TS-1006:
---------------------------------

i've tried again in accordance with your guide.

[2ba8ae8cc700:43][ink_queue.cc:00601][-] all:4011MB  t:1024    f:8     m:40    
avg:40.0    malloc:1016        csize:32    tsize:32768   cbsize:1052672
[2ba8adbb7e20:40][ink_queue.cc:00595][M] all:4029MB  t:767     f:87    m:86    
avg:84.8    malloc:680         csize:64    tsize:4096    cbsize:266240
[2ba8adbb7e20:40][ink_queue.cc:00601][-] all:4029MB  t:703     f:23    m:86    
avg:84.8    malloc:680         csize:64    tsize:4096    cbsize:266240
[2ba8ae8cc700:03][ink_queue.cc:00668][F] all:4044MB  t:628     f:108   m:108   
avg:107.1   malloc:519         csize:70    tsize:232     cbsize:16384
[2ba8ae8cc700:03][ink_queue.cc:00674][-] all:4044MB  t:557     f:38    m:108   
avg:107.1   malloc:519         csize:70    tsize:232     cbsize:16384
/usr/local/bin/traffic_server - STACK TRACE:
/usr/local/lib/libtsutil.so.3(ink_freelist_new+0x992)[0x2ba8ab4b5072]
/usr/local/bin/traffic_server[0x64a68f]
/usr/local/bin/traffic_server(_ZN7CacheVC10handleReadEiP5Event+0x1e2)[0x64ef52]
/usr/local/bin/traffic_server(_ZN5Cache9open_readEP12ContinuationP7INK_MD5P7HTTPHdrP21CacheLookupHttpConfig13CacheFragTypePci+0x754)[0x67ef54]
/usr/local/bin/traffic_server(_ZN14CacheProcessor9open_readEP12ContinuationP3URLP7HTTPHdrP21CacheLookupHttpConfigl13CacheFragType+0x130)[0x6540f0]
/usr/local/bin/traffic_server(_ZN11HttpCacheSM9open_readEP3URLP7HTTPHdrP21CacheLookupHttpConfigl+0x74)[0x521c14]
/usr/local/bin/traffic_server(_ZN6HttpSM24do_cache_lookup_and_readEv+0xfd)[0x538c1d]
/usr/local/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0xb20)[0x54ffd0]
/usr/local/bin/traffic_server(_ZN6HttpSM17handle_api_returnEv+0x33a)[0x547fda]
/usr/local/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0x353)[0x5494d3]
/usr/local/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x538)[0x54f9e8]
/usr/local/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0xb92)[0x550042]
/usr/local/bin/traffic_server(_ZN6HttpSM17handle_api_returnEv+0x33a)[0x547fda]
/usr/local/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0x353)[0x5494d3]
/usr/local/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x538)[0x54f9e8]
/usr/local/bin/traffic_server(_ZN6HttpSM17handle_api_returnEv+0x33a)[0x547fda]
/usr/local/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0x353)[0x5494d3]
/usr/local/bin/traffic_server(_ZN6HttpSM18state_api_callbackEiPv+0x9a)[0x55091a]
/usr/local/bin/traffic_server(TSHttpTxnReenable+0x40d)[0x4bec1d]
/usr/local/libexec/trafficserver/purge.so(+0x1e56)[0x2ba8b99bfe56]
/usr/local/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0xfb)[0x54927b]
/usr/local/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x538)[0x54f9e8]
/usr/local/bin/traffic_server(_ZN6HttpSM32setup_client_read_request_headerEv+0x39f)[0x54793f]
/usr/local/bin/traffic_server(_ZN6HttpSM17handle_api_returnEv+0x25a)[0x547efa]
/usr/local/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0x353)[0x5494d3]
/usr/local/bin/traffic_server(_ZN6HttpSM21attach_client_sessionEP17HttpClientSessionP14IOBufferReader+0x688)[0x54a4e8]
/usr/local/bin/traffic_server(_ZN17HttpClientSession16state_keep_aliveEiPv+0xa8)[0x523738]
/usr/local/bin/traffic_server[0x6b6f4a]
/usr/local/bin/traffic_server(_ZN10NetHandler12mainNetEventEiP5Event+0x1fe)[0x6aff0e]
/usr/local/bin/traffic_server(_ZN7EThread13process_eventEP5Eventi+0x8e)[0x6dfd4e]
/usr/local/bin/traffic_server(_ZN7EThread7executeEv+0x4f0)[0x6e06c0]
/usr/local/bin/traffic_server[0x6df9b2]
/lib64/libpthread.so.0(+0x6a3f)[0x2ba8ab6dca3f]
/lib64/libc.so.6(clone+0x6d)[0x2ba8ad91a67d]
FATAL: Failed to mmap 50331648 bytes, Cannot allocate memory     
<----------------------------------------------------------------- here you 
want?
/usr/local/bin/traffic_server - STACK TRACE:
/usr/local/lib/libtsutil.so.3(ink_fatal+0x88)[0x2ba8ab4b0c68]
/usr/local/lib/libtsutil.so.3(+0x17aca)[0x2ba8ab4b3aca]
/usr/local/lib/libtsutil.so.3(ink_freelist_new+0x992)[0x2ba8ab4b5072]
/usr/local/bin/traffic_server[0x64a68f]
/usr/local/bin/traffic_server(_ZN7CacheVC10handleReadEiP5Event+0x1e2)[0x64ef52]
                
> memory management, cut down memory waste ?
> ------------------------------------------
>
>                 Key: TS-1006
>                 URL: https://issues.apache.org/jira/browse/TS-1006
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 3.1.1
>            Reporter: Zhao Yongming
>            Assignee: Bin Chen
>             Fix For: 3.3.2
>
>         Attachments: 0001-Allocator-optimize-InkFreeList-memory-pool.patch, 
> 0002-Allocator-make-InkFreeList-memory-pool-configurable.patch, 
> Memory-Usage-After-Introduced-New-Allocator.png, memusage.ods, memusage.ods
>
>
> when we review the memory usage in the production, there is something 
> abnormal, ie, looks like TS take much memory than index data + common system 
> waste, and here is some memory dump result by set 
> "proxy.config.dump_mem_info_frequency"
> 1, the one on a not so busy forwarding system:
> physics memory: 32G
> RAM cache: 22G
> DISK: 6140 GB
> average_object_size 64000
> {code}
>      allocated      |        in-use      | type size  |   free list name
> --------------------|--------------------|------------|----------------------------------
>           671088640 |           37748736 |    2097152 | 
> memory/ioBufAllocator[14]
>          2248146944 |         2135949312 |    1048576 | 
> memory/ioBufAllocator[13]
>          1711276032 |         1705508864 |     524288 | 
> memory/ioBufAllocator[12]
>          1669332992 |         1667760128 |     262144 | 
> memory/ioBufAllocator[11]
>          2214592512 |         2211840000 |     131072 | 
> memory/ioBufAllocator[10]
>          2325741568 |         2323775488 |      65536 | 
> memory/ioBufAllocator[9]
>          2091909120 |         2089123840 |      32768 | 
> memory/ioBufAllocator[8]
>          1956642816 |         1956478976 |      16384 | 
> memory/ioBufAllocator[7]
>          2094530560 |         2094071808 |       8192 | 
> memory/ioBufAllocator[6]
>           356515840 |          355540992 |       4096 | 
> memory/ioBufAllocator[5]
>             1048576 |              14336 |       2048 | 
> memory/ioBufAllocator[4]
>              131072 |                  0 |       1024 | 
> memory/ioBufAllocator[3]
>               65536 |                  0 |        512 | 
> memory/ioBufAllocator[2]
>               32768 |                  0 |        256 | 
> memory/ioBufAllocator[1]
>               16384 |                  0 |        128 | 
> memory/ioBufAllocator[0]
>                   0 |                  0 |        576 | 
> memory/ICPRequestCont_allocator
>                   0 |                  0 |        112 | 
> memory/ICPPeerReadContAllocator
>                   0 |                  0 |        432 | 
> memory/PeerReadDataAllocator
>                   0 |                  0 |         32 | 
> memory/MIMEFieldSDKHandle
>                   0 |                  0 |        240 | 
> memory/INKVConnAllocator
>                   0 |                  0 |         96 | 
> memory/INKContAllocator
>                4096 |                  0 |         32 | 
> memory/apiHookAllocator
>                   0 |                  0 |        288 | 
> memory/FetchSMAllocator
>                   0 |                  0 |         80 | 
> memory/prefetchLockHandlerAllocator
>                   0 |                  0 |        176 | 
> memory/PrefetchBlasterAllocator
>                   0 |                  0 |         80 | 
> memory/prefetchUrlBlaster
>                   0 |                  0 |         96 | memory/blasterUrlList
>                   0 |                  0 |         96 | 
> memory/prefetchUrlEntryAllocator
>                   0 |                  0 |        128 | 
> memory/socksProxyAllocator
>                   0 |                  0 |        144 | 
> memory/ObjectReloadCont
>             3258368 |             576016 |        592 | 
> memory/httpClientSessionAllocator
>              825344 |             139568 |        208 | 
> memory/httpServerSessionAllocator
>            22597632 |            1284848 |       9808 | memory/httpSMAllocator
>                   0 |                  0 |         32 | 
> memory/CacheLookupHttpConfigAllocator
>                   0 |                  0 |       9856 | 
> memory/httpUpdateSMAllocator
>                   0 |                  0 |        128 | 
> memory/RemapPluginsAlloc
>                   0 |                  0 |         48 | 
> memory/CongestRequestParamAllocator
>                   0 |                  0 |        128 | 
> memory/CongestionDBContAllocator
>             5767168 |             704512 |       2048 | memory/hdrStrHeap
>            18350080 |            1153024 |       2048 | memory/hdrHeap
>               53248 |               2912 |        208 | 
> memory/httpCacheAltAllocator
>                   0 |                  0 |        112 | 
> memory/OneWayTunnelAllocator
>              157696 |               1232 |       1232 | 
> memory/hostDBContAllocator
>              102240 |              17040 |      17040 | memory/dnsBufAllocator
>              323584 |                  0 |       1264 | 
> memory/dnsEntryAllocator
>                   0 |                  0 |         16 | 
> memory/DNSRequestDataAllocator
>                   0 |                  0 |       1072 | memory/SRVAllocator
>                   0 |                  0 |         48 | 
> memory/ClusterVConnectionCache::Entry
>                   0 |                  0 |        560 | 
> memory/cacheContAllocator
>                   0 |                  0 |        112 | 
> memory/inControlAllocator
>                   0 |                  0 |        112 | 
> memory/outControlAllocator
>                   0 |                  0 |         32 | 
> memory/byteBankAllocator
>                   0 |                  0 |        576 | 
> memory/clusterVCAllocator
>                   0 |                  0 |         48 | memory/evacuationKey
>                6144 |                  0 |         48 | memory/cacheRemoveCont
>              270336 |             262560 |         96 | memory/evacuationBlock
>             4997120 |            3968416 |        976 | 
> memory/cacheVConnection
>              798720 |             522080 |        160 | memory/openDirEntry
>                   0 |                  0 |         64 | 
> memory/RamCacheLRUEntry
>            56426496 |           56426304 |         96 | 
> memory/RamCacheCLFUSEntry
>             9584640 |            6168000 |        960 | memory/netVCAllocator
>                   0 |                  0 |        128 | 
> memory/udpReadContAllocator
>                   0 |                  0 |        128 | 
> memory/udpWorkContinuationAllocator
>                   0 |                  0 |        160 | 
> memory/udpPacketAllocator
>                   0 |                  0 |        304 | memory/socksAllocator
>              139264 |              68544 |       1088 | 
> memory/sslNetVCAllocator
>                   0 |                  0 |        128 | 
> memory/UDPIOEventAllocator
>              671744 |             115520 |         64 | 
> memory/ioBlockAllocator
>            28305408 |           28301520 |         48 | memory/ioDataAllocator
>             2273280 |             406320 |        240 | memory/ioAllocator
>             1904640 |            1489920 |         80 | memory/mutexAllocator
>             1105920 |             188544 |         96 | memory/eventAllocator
>             2359296 |             129024 |       1024 | memory/ArenaBlock
> {code}
> this box will crash every 2days, so the memory waste may no that high
> 2, our production reverse system:
> physics memory: 16G
> RAM cache: 8G
> DISK: 1516 GB
> average_object_size 16384
> and it run for a much long time:
> {code}
>      allocated      |        in-use      | type size  |   free list name
> --------------------|--------------------|------------|----------------------------------
>           805306368 |                  0 |    2097152 | 
> memory/ioBufAllocator[14]
>           738197504 |            8388608 |    1048576 | 
> memory/ioBufAllocator[13]
>          1258291200 |           46661632 |     524288 | 
> memory/ioBufAllocator[12]
>          1300234240 |          183762944 |     262144 | 
> memory/ioBufAllocator[11]
>          1170210816 |          466223104 |     131072 | 
> memory/ioBufAllocator[10]
>          1790967808 |         1223426048 |      65536 | 
> memory/ioBufAllocator[9]
>          2970615808 |         2601418752 |      32768 | 
> memory/ioBufAllocator[8]
>          2067791872 |         2044608512 |      16384 | 
> memory/ioBufAllocator[7]
>          1169424384 |         1169121280 |       8192 | 
> memory/ioBufAllocator[6]
>           711458816 |          710463488 |       4096 | 
> memory/ioBufAllocator[5]
>             1572864 |                  0 |       2048 | 
> memory/ioBufAllocator[4]
>              131072 |                  0 |       1024 | 
> memory/ioBufAllocator[3]
>               65536 |                  0 |        512 | 
> memory/ioBufAllocator[2]
>               32768 |                  0 |        256 | 
> memory/ioBufAllocator[1]
>               16384 |                  0 |        128 | 
> memory/ioBufAllocator[0]
>                   0 |                  0 |        576 | 
> memory/ICPRequestCont_allocator
>                   0 |                  0 |        112 | 
> memory/ICPPeerReadContAllocator
>                   0 |                  0 |        432 | 
> memory/PeerReadDataAllocator
>                   0 |                  0 |         32 | 
> memory/MIMEFieldSDKHandle
>                   0 |                  0 |        240 | 
> memory/INKVConnAllocator
>                   0 |                  0 |         96 | 
> memory/INKContAllocator
>                4096 |                  0 |         32 | 
> memory/apiHookAllocator
>                   0 |                  0 |        288 | 
> memory/FetchSMAllocator
>                   0 |                  0 |         80 | 
> memory/prefetchLockHandlerAllocator
>                   0 |                  0 |        176 | 
> memory/PrefetchBlasterAllocator
>                   0 |                  0 |         80 | 
> memory/prefetchUrlBlaster
>                   0 |                  0 |         96 | memory/blasterUrlList
>                   0 |                  0 |         96 | 
> memory/prefetchUrlEntryAllocator
>                   0 |                  0 |        128 | 
> memory/socksProxyAllocator
>                   0 |                  0 |        144 | 
> memory/ObjectReloadCont
>             1136640 |             125504 |        592 | 
> memory/httpClientSessionAllocator
>              372736 |              27248 |        208 | 
> memory/httpServerSessionAllocator
>            11317248 |              39296 |       9824 | memory/httpSMAllocator
>                   0 |                  0 |         32 | 
> memory/CacheLookupHttpConfigAllocator
>                   0 |                  0 |       9888 | 
> memory/httpUpdateSMAllocator
>                   0 |                  0 |        128 | 
> memory/RemapPluginsAlloc
>                   0 |                  0 |        512 | memory/HCSMAllocator
>                   0 |                  0 |         48 | 
> memory/VCEntryAllocator
>                   0 |                  0 |         96 | 
> memory/HCEntryAllocator
>                   0 |                  0 |         64 | 
> memory/HCHandlerAllocator
>                   0 |                  0 |         48 | 
> memory/CongestRequestParamAllocator
>                   0 |                  0 |        128 | 
> memory/CongestionDBContAllocator
>             6029312 |             643072 |       2048 | memory/hdrStrHeap
>             7077888 |             657408 |       2048 | memory/hdrHeap
>               26624 |                208 |        208 | 
> memory/httpCacheAltAllocator
>                   0 |                  0 |        112 | 
> memory/OneWayTunnelAllocator
>              630784 |               1232 |       1232 | 
> memory/hostDBContAllocator
>              238560 |              17040 |      17040 | memory/dnsBufAllocator
>              161792 |                  0 |       1264 | 
> memory/dnsEntryAllocator
>                   0 |                  0 |         16 | 
> memory/DNSRequestDataAllocator
>                   0 |                  0 |       1072 | memory/SRVAllocator
>                   0 |                  0 |         48 | 
> memory/ClusterVConnectionCache::Entry
>                   0 |                  0 |        560 | 
> memory/cacheContAllocator
>                   0 |                  0 |        112 | 
> memory/inControlAllocator
>                   0 |                  0 |        112 | 
> memory/outControlAllocator
>                   0 |                  0 |         32 | 
> memory/byteBankAllocator
>                   0 |                  0 |        576 | 
> memory/clusterVCAllocator
>                   0 |                  0 |         48 | memory/evacuationKey
>                6144 |                  0 |         48 | memory/cacheRemoveCont
>            17006592 |           14972928 |         96 | memory/evacuationBlock
>             1777664 |             759872 |        992 | 
> memory/cacheVConnection
>              307200 |             111520 |        160 | memory/openDirEntry
>                   0 |                  0 |         64 | 
> memory/RamCacheLRUEntry
>           104275968 |          104274048 |         96 | 
> memory/RamCacheCLFUSEntry
>             3440640 |            1819200 |        960 | memory/netVCAllocator
>                   0 |                  0 |        128 | 
> memory/udpReadContAllocator
>                   0 |                  0 |        128 | 
> memory/udpWorkContinuationAllocator
>                   0 |                  0 |        160 | 
> memory/udpPacketAllocator
>                   0 |                  0 |        304 | memory/socksAllocator
>                   0 |                  0 |       1088 | 
> memory/sslNetVCAllocator
>                   0 |                  0 |        128 | 
> memory/UDPIOEventAllocator
>              237568 |              22528 |         64 | 
> memory/ioBlockAllocator
>            26087424 |           26081904 |         48 | memory/ioDataAllocator
>              890880 |              84240 |        240 | memory/ioAllocator
>             1525760 |            1403440 |         80 | memory/mutexAllocator
>              565248 |             129696 |         96 | memory/eventAllocator
>             1179648 |               4096 |       1024 | memory/ArenaBlock
> {code}
> our team is working on the memory free issue, trying to improve the memory 
> management. and this a big project, the more input|comment the better.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to