New 13.5 installation on an i7 with 16 GB of RAM and 2x SSDs. Low usage, but memory grows about 8% per day under load. This site is closed after hours, so the usage stops growing at night. I can’t seem to track down where the memory is going. I read that at 13.8, the taskprocessor shows individual modules. If I can figure it out on 13.5, I’ll leave it there, otherwise, I’ll have to upgrade. Recompiled with malloc_debug. Never used Valgrind, so I’m trying to avoid it for now.
Any suggestions would be appreciated. Thanks.
> top - 16:12:42 up 1 day, 20:03, 1 user, load average: 0.01, 0.04, 0.05
> Tasks: 128 total, 2 running, 126 sleeping, 0 stopped, 0 zombie
> %Cpu0 : 0.0 us, 0.0 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.7 si, 0.0 st
> %Cpu1 : 0.7 us, 0.7 sy, 0.0 ni, 84.1 id, 14.6 wa, 0.0 hi, 0.0 si, 0.0 st
> %Cpu2 : 0.0 us, 0.7 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
> %Cpu3 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
> KiB Mem: 16316608 total, 4367240 used, 11949368 free, 188944 buffers
> KiB Swap: 19564540 total, 0 used, 19564540 free. 1150524 cached Mem
> PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
> 13737 root 20 0 4880268 2.607g 18656 S 0.0 16.8 9:47.13 asterisk
> asterisk-twc01*CLI> memory show summary
> 276861 bytes in 441 allocations in file /usr/src/asterisk-13.5.0/include/asterisk/strings.h
> 19147 bytes in 117 allocations in file /usr/src/asterisk-13.5.0/include/asterisk/threadstorage.h
> 211856 bytes in 372 allocations in file app.c
> 736 bytes in 1 allocations in file app_bridgewait.c
> 992 bytes in 1 allocations in file app_confbridge.c
> 320 bytes in 2 allocations in file app_meetme.c
> 61000 bytes in 177 allocations in file app_queue.c
> 352 bytes in 9 allocations in file app_stack.c
> 10336 bytes in 9 allocations in file app_voicemail.c
> 10090 bytes in 484 allocations in file asterisk.c
> 1300416 bytes in 16255 allocations in file astobj2.c
> 7296 bytes in 21 allocations in file bridge.c
> 248 bytes in 5 allocations in file bridge_basic.c
> 704 bytes in 2 allocations in file bridge_channel.c
> 1016 bytes in 1 allocations in file bucket.c
> 928 bytes in 8 allocations in file ccss.c
> 17825 bytes in 19 allocations in file cdr.c
> 1876 bytes in 23 allocations in file cdr_adaptive_odbc.c
> 6999 bytes in 7 allocations in file cel.c
> 5880 bytes in 3 allocations in file chan_dahdi.c
> 1070281 bytes in 787 allocations in file chan_sip.c
> 32280 bytes in 34 allocations in file channel.c
> 2780 bytes in 6 allocations in file channel_internal_api.c
> 10038 bytes in 507 allocations in file cli.c
> 5384 bytes in 40 allocations in file codec.c
> 25920 bytes in 1 allocations in file codec_resample.c
> 36824 bytes in 13 allocations in file confbridge/conf_config_parser.c
> 3509 bytes in 38 allocations in file config.c
> 45552 bytes in 214 allocations in file config_options.c
> 160 bytes in 1 allocations in file core_local.c
> 26605 bytes in 43 allocations in file data.c
> 12384 bytes in 164 allocations in file devicestate.c
> 12351752 bytes in 28402 allocations in file endpoints.c
> 96 bytes in 4 allocations in file features.c
> 6115 bytes in 37 allocations in file features_config.c
> 7920 bytes in 30 allocations in file file.c
> 20615 bytes in 309 allocations in file format.c
> 1016 bytes in 1 allocations in file format_cache.c
> 2639296 bytes in 18405 allocations in file format_cap.c
> 16012 bytes ( 16012 cache) in 38 allocations in file frame.c
> 736 bytes in 1 allocations in file func_dialgroup.c
> 2148 bytes in 11 allocations in file func_odbc.c
> 28040 bytes in 27 allocations in file hashtab.c
> 15 bytes in 3 allocations in file http.c
> 67119 bytes in 1200 allocations in file indications.c
> 8228 bytes in 4 allocations in file io.c
> 106692879 bytes in 943204 allocations in file json.c
> 2296 bytes in 1 allocations in file libasteriskssl.c
> 27100 bytes in 188 allocations in file loader.c
> 8490 bytes in 9 allocations in file logger.c
> 182869 bytes in 292 allocations in file manager.c
> 56 bytes in 3 allocations in file max_forwards.c
> 2618200 bytes in 10403 allocations in file media_index.c
> 96 bytes in 2 allocations in file message.c
> 832 bytes in 2 allocations in file named_acl.c
> 144 bytes in 1 allocations in file parking.c
> 26 bytes in 2 allocations in file parking/parking_bridge_features.c
> 1766506 bytes in 12812 allocations in file pbx.c
> 27011 bytes in 715 allocations in file pbx_config.c
> 9312 bytes in 1 allocations in file pbx_realtime.c
> 56 bytes in 1 allocations in file presencestate.c
> 187000 bytes in 1450 allocations in file res_config_odbc.c
> 256 bytes in 1 allocations in file res_config_sqlite3.c
> 601 bytes in 6 allocations in file res_http_websocket.c
> 2406 bytes in 8 allocations in file res_musiconhold.c
> 5273 bytes in 90 allocations in file res_odbc.c
> 3156 bytes in 14 allocations in file res_parking.c
> 20000 bytes in 4 allocations in file res_rtp_asterisk.c
> 992 bytes in 1 allocations in file res_sorcery_memory_cache.c
> 8000 bytes in 5 allocations in file res_stasis.c
> 736 bytes in 1 allocations in file res_stasis_device_state.c
> 2176 bytes in 1 allocations in file res_stasis_recording.c
> 9152 bytes in 1 allocations in file res_timing_pthread.c
> 272 bytes in 2 allocations in file res_timing_timerfd.c
> 5840 bytes in 13 allocations in file rtp_engine.c
> 34096 bytes in 174 allocations in file sched.c
> 736 bytes in 1 allocations in file sig_pri.c
> 3166 bytes in 93 allocations in file sip/route.c
> 16264 bytes in 1 allocations in file smoother.c
> 9901 bytes in 44 allocations in file sorcery.c
> 424063 bytes in 2655 allocations in file stasis.c
> 2232 bytes in 2 allocations in file stasis/messaging.c
> 3086648 bytes in 11409 allocations in file stasis_bridges.c
> 3737492 bytes in 65556 allocations in file stasis_cache.c
> 12600 bytes in 105 allocations in file stasis_cache_pattern.c
> 314752865 bytes in 256168 allocations in file stasis_channels.c
> 642512 bytes in 6178 allocations in file stasis_endpoints.c
> 36156403 bytes in 265972 allocations in file stasis_message.c
> 68712 bytes in 496 allocations in file stasis_message_router.c
> 37104 bytes in 2 allocations in file stdtime/localtime.c
> 1370017 bytes in 11311 allocations in file strings.c
> 224364905 bytes in 7009335 allocations in file taskprocessor.c
> 37856 bytes in 368 allocations in file threadpool.c
> 240 bytes in 7 allocations in file timing.c
> 76096 bytes in 40 allocations in file translate.c
> 208 bytes in 2 allocations in file udptl.c
> 7190 bytes in 92 allocations in file utils.c
> 981762 bytes in 4746 allocations in file xmldoc.c
> 715760504 bytes allocated (16012 in caches) in 8672267 allocations