Hi,
Back home (after being abroad 2.5 months) I installed pytone on my main music system. This system has 52GB of music (I have a huge collection of music CDs) of about 11.500 songs.
Now, most of the music players I know have problems handling that amount of files. Usually this is memory related. Pytone consumes 140MB of RAM, which is compared to other players, not that bad. Some players consume far worse (not even usable with such a collection).
In fact when I restarted it it only consumed 15MB residential memory and 183MB virtual memory, before, when indexing, it consumed 140MB of residential memory and 360MB of virtual memory.
Furthermore, pytone works pretty well using the interface, but startup time the first time after it has indexed that much music was terrible. It took up too much time. 8 minutes ! After that I restarted and it started immediately.
And what might be even worse and probably the cause of this terrible startup time, is the amount of diskspace it consumed to store all the information.
[dag@lisse .pytone]$ du -s * 1398032 music 17176 music.db 4 pytonectl 4 pytone.dump
That's 1.4GB ! When I then restarted pytone again (after it was busy for 8 minutes) the result was:
[dag@lisse .pytone]$ du -s * 760 music 17176 music.db 4 pytonectl 4 pytone.dump
So I'm a bit stunned about the big difference. What's so different if you start pytone the first time after having it indexed ? Why does it takes so much diskspace and time to start ?
I believe this same issue bit me before on my laptop when my disk was full during indexing just because of pytone's logfiles. This of course corrupted the database itself requiring a removal.
Kind regards, -- dag wieers, dag@wieers.com, http://dag.wieers.com/ -- [all I want is a warm bed and a kind word and unlimited power]
Hi Dag,
On 27.06.05, Dag Wieers wrote:
Back home (after being abroad 2.5 months) I installed pytone on my main music system. This system has 52GB of music (I have a huge collection of music CDs) of about 11.500 songs.
Now, most of the music players I know have problems handling that amount of files. Usually this is memory related. Pytone consumes 140MB of RAM, which is compared to other players, not that bad. Some players consume far worse (not even usable with such a collection).
In fact when I restarted it it only consumed 15MB residential memory and 183MB virtual memory, before, when indexing, it consumed 140MB of residential memory and 360MB of virtual memory.
This could be due to Python not releasing the memory it has allocated.
Furthermore, pytone works pretty well using the interface, but startup time the first time after it has indexed that much music was terrible. It took up too much time. 8 minutes ! After that I restarted and it started immediately.
Have you looked whether there was a huge number of log files in the db environment directory.
And what might be even worse and probably the cause of this terrible· startup time, is the amount of diskspace it consumed to store all the· information. · »·····[dag@lisse .pytone]$ du -s * »·····1398032 music »·····17176 music.db »·····4 pytonectl »·····4 pytone.dump · That's 1.4GB ! When I then restarted pytone again (after it was busy for 8· minutes) the result was:
That's most probably due to an insane number of log files. Actually, the database is checkpointed every minute and the not-used log files should be removed automatically. The debugging output should contain some information about these checkpoint events.
»·····[dag@lisse .pytone]$ du -s * »·····760 music »·····17176 music.db »·····4 pytonectl »·····4 pytone.dump · So I'm a bit stunned about the big difference. What's so different if you start pytone the first time after having it indexed ? Why does it takes so much diskspace and time to start ?
I believe this same issue bit me before on my laptop when my disk was full during indexing just because of pytone's logfiles. This of course corrupted the database itself requiring a removal.
See above. Maybe there is a problem with the checkpointing code.
Jörg
On Tue, 28 Jun 2005, Joerg Lehmann wrote:
On 27.06.05, Dag Wieers wrote:
Back home (after being abroad 2.5 months) I installed pytone on my main music system. This system has 52GB of music (I have a huge collection of music CDs) of about 11.500 songs.
Now, most of the music players I know have problems handling that amount of files. Usually this is memory related. Pytone consumes 140MB of RAM, which is compared to other players, not that bad. Some players consume far worse (not even usable with such a collection).
In fact when I restarted it it only consumed 15MB residential memory and 183MB virtual memory, before, when indexing, it consumed 140MB of residential memory and 360MB of virtual memory.
This could be due to Python not releasing the memory it has allocated.
After running it for a day (and updating some databases fro mtime to time), this is what top says:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3952 dag 15 0 397m 128m 3580 S 1.0 12.9 1:35.57 python
If I simply restart pytone, memory usage looks like:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10869 dag 15 0 328m 59m 3448 S 0.0 6.0 0:00.81 python
This is for a collection of 12557 files divided over 5 databases.
Furthermore, pytone works pretty well using the interface, but startup time the first time after it has indexed that much music was terrible. It took up too much time. 8 minutes ! After that I restarted and it started immediately.
Have you looked whether there was a huge number of log files in the db environment directory.
There was.
All in all, the memory consumption of pytone is not that bad, except for the mentioned problems. Snackamp does slightly better overall.
Most other music players are not suitable for this amount of files (consuming much more memory causing my system to swap and become unusable).
-- dag wieers, dag@wieers.com, http://dag.wieers.com/ -- [all I want is a warm bed and a kind word and unlimited power]