• Max Kellermann's avatar
    tag: try not to reallocate tag.items in every add() call · 1aa34573
    Max Kellermann authored
    If many tag_items are added at once while the tag cache is being
    loaded, manage these items in a static fixed list, instead of
    reallocating the list with every newly created item.  This reduces
    heap fragmentation.
    
    Massif results again:
    
     mk before:  total 12,837,632; useful 10,626,383; extra 2,211,249
     mk now:     total 12,736,720; useful 10,626,383; extra 2,110,337
    
    The "useful" value is the same since this patch only changes the way
    we allocate the same amount of memory, but heap fragmentation was
    reduced by 5%.
    1aa34573
Name
Last commit
Last update
..
audioOutputs Loading commit data...
inputPlugins Loading commit data...
mp4ff Loading commit data...
Makefile.am Loading commit data...
ack.h Loading commit data...
audio.c Loading commit data...
audio.h Loading commit data...
audioOutput.c Loading commit data...
audioOutput.h Loading commit data...
audio_format.h Loading commit data...
buffer2array.c Loading commit data...
buffer2array.h Loading commit data...
charConv.c Loading commit data...
charConv.h Loading commit data...
client.c Loading commit data...
client.h Loading commit data...
command.c Loading commit data...
command.h Loading commit data...
compress.c Loading commit data...
compress.h Loading commit data...
condition.c Loading commit data...
condition.h Loading commit data...
conf.c Loading commit data...
conf.h Loading commit data...
crossfade.c Loading commit data...
crossfade.h Loading commit data...
dbUtils.c Loading commit data...
dbUtils.h Loading commit data...
decoder_api.c Loading commit data...
decoder_api.h Loading commit data...
decoder_control.c Loading commit data...
decoder_control.h Loading commit data...
decoder_internal.h Loading commit data...
decoder_list.c Loading commit data...
decoder_list.h Loading commit data...
decoder_thread.c Loading commit data...
decoder_thread.h Loading commit data...
directory.c Loading commit data...
directory.h Loading commit data...
dlist.h Loading commit data...
gcc.h Loading commit data...
inputStream.c Loading commit data...
inputStream.h Loading commit data...
inputStream_file.c Loading commit data...
inputStream_file.h Loading commit data...
inputStream_http.c Loading commit data...
inputStream_http.h Loading commit data...
inputStream_http_auth.h Loading commit data...
ioops.c Loading commit data...
ioops.h Loading commit data...
list.c Loading commit data...
list.h Loading commit data...
listen.c Loading commit data...
listen.h Loading commit data...
locate.c Loading commit data...
locate.h Loading commit data...
log.c Loading commit data...
log.h Loading commit data...
ls.c Loading commit data...
ls.h Loading commit data...
main.c Loading commit data...
main_notify.c Loading commit data...
main_notify.h Loading commit data...
metadataChunk.c Loading commit data...
metadataChunk.h Loading commit data...
mpd_types.h Loading commit data...
myfprintf.c Loading commit data...
myfprintf.h Loading commit data...
normalize.c Loading commit data...
normalize.h Loading commit data...
notify.c Loading commit data...
notify.h Loading commit data...
os_compat.h Loading commit data...
outputBuffer.c Loading commit data...
outputBuffer.h Loading commit data...
path.c Loading commit data...
path.h Loading commit data...
pcm_utils.c Loading commit data...
pcm_utils.h Loading commit data...
permission.c Loading commit data...
permission.h Loading commit data...
playerData.c Loading commit data...
playerData.h Loading commit data...
player_control.c Loading commit data...
player_control.h Loading commit data...
player_thread.c Loading commit data...
player_thread.h Loading commit data...
playlist.c Loading commit data...
playlist.h Loading commit data...
replayGain.c Loading commit data...
replayGain.h Loading commit data...
ringbuf.c Loading commit data...
ringbuf.h Loading commit data...
sig_handlers.c Loading commit data...
sig_handlers.h Loading commit data...
signal_check.c Loading commit data...
signal_check.h Loading commit data...
sllist.c Loading commit data...
sllist.h Loading commit data...
song.c Loading commit data...
song.h Loading commit data...
state_file.c Loading commit data...
state_file.h Loading commit data...
stats.c Loading commit data...
stats.h Loading commit data...
storedPlaylist.c Loading commit data...
storedPlaylist.h Loading commit data...
tag.c Loading commit data...
tag.h Loading commit data...
tagTracker.c Loading commit data...
tagTracker.h Loading commit data...
tag_id3.c Loading commit data...
tag_id3.h Loading commit data...
tag_pool.c Loading commit data...
tag_pool.h Loading commit data...
timer.c Loading commit data...
timer.h Loading commit data...
utf8.c Loading commit data...
utf8.h Loading commit data...
utils.c Loading commit data...
utils.h Loading commit data...
volume.c Loading commit data...
volume.h Loading commit data...
zeroconf.c Loading commit data...
zeroconf.h Loading commit data...