Hi,
this is the patch set I promised, which reduces MPD's memory usage.
Have a lok at these benchmark results (for details look at the commit
messages):
0.13.2: total 14,131,392; useful 11,408,972; extra 2,722,420
eric: total 18,370,696; useful 15,648,182; extra 2,722,514
mk f34f694: total 15,833,952; useful 13,111,470; extra 2,722,482
mk now: total 12,714,864; useful 10,626,383; extra 2,088,481
There are also some minor fixups for yesterday's client refactoring
patches.
git://repo.or.cz/mpd-mk.git
http://repo.or.cz/w/mpd-mk.git
Max
Max Kellermann (25):
client: removed superfluous assertion
pass constant pointers
client: added global "expired" flag
client: check "expired" after command execution
client: reorder function declarations
client: pass the client struct to processCommand()
export the function client_is_expired()
added xfree() which takes a const pointer
tag: renamed MpdTag and MpdTagItem to struct tag, struct
mpd_tag_item
tag: renamed functions, no CamelCase
tag: converted tag_add_item() to an inline function
wavpack: tag_new() cannot fail
tag: moved code to tag_id3.c
tag: converted MpdTag.items to a pointer list
removed tree.c
tag: converted tag_item.value to a char array
tag: added a pool for tag items
tag: converted macro fixUtf8() to an inline function
assert value!=NULL in fix_utf8()
added "length" parameter to validUtf8String()
tag: pass length to fix_utf8()
tag: try not to duplicate the input string
song: don't export newNullSong()
tag: try not to reallocate tag.items in every add() call
tag: static directory name
b/src/Makefile.am | 6
b/src/audio.c | 2
b/src/audio.h | 2
b/src/audioOutput.c | 3
b/src/audioOutput.h | 5
b/src/audioOutputs/audioOutput_shout.c | 4
b/src/client.c | 40 +
b/src/client.h | 18
b/src/command.c | 18
b/src/command.h | 7
b/src/dbUtils.c | 6
b/src/decoder_api.h | 3
b/src/directory.c | 8
b/src/inputPlugins/_flac_common.c | 12
b/src/inputPlugins/_flac_common.h | 6
b/src/inputPlugins/aac_plugin.c | 8
b/src/inputPlugins/audiofile_plugin.c | 6
b/src/inputPlugins/flac_plugin.c | 20
b/src/inputPlugins/mod_plugin.c | 8
b/src/inputPlugins/mp3_plugin.c | 59 +-
b/src/inputPlugins/mp4_plugin.c | 30 -
b/src/inputPlugins/mpc_plugin.c | 10
b/src/inputPlugins/oggvorbis_plugin.c | 26 -
b/src/inputPlugins/wavpack_plugin.c | 13
b/src/locate.c | 8
b/src/ls.c | 6
b/src/ls.h | 4
b/src/main.c | 2
b/src/path.c | 2
b/src/playlist.c | 6
b/src/song.c | 42 +
b/src/song.h | 4
b/src/tag.c | 508 +++++------------------
b/src/tag.h | 64 +--
b/src/tagTracker.c | 148 ++----
b/src/tagTracker.h | 6
b/src/tag_id3.c | 367 +++++++++++++++++
b/src/tag_id3.h | 33 +
b/src/tag_pool.c | 108 +++++
b/src/tag_pool.h | 31 +
b/src/utf8.c | 18
b/src/utf8.h | 4
b/src/utils.h | 13
src/tree.c | 699
---------------------------------
src/tree.h | 62 --
45 files changed, 996 insertions(+), 1459 deletions(-)
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Musicpd-dev-team mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team