Tim Bunce <[EMAIL PROTECTED]> wrote:
> Michael Carman wrote:
>>
>> I tried it, and it does help some. In my very unscientific test[1] it
>> ran about 20% faster. The size of the db file (on disk) was about 75%
>> smaller.
>
> Thanks. 20% is certainly useful.
I ran some more tests, some of which might be more significant:
time(sec) db size (kB) peak RAM (MB)
no coverage 15 --- ~ 10
Data::Dumper+eval 246 245 ~ 23.4
Storable 190 60 ~ 19.7
no storage 184 --- ~ 18
The 'no coverage' run is to provide a baseline.
For the 'no storage' test, I ran using Devel::Cover, but modified the
read() and write() methods to be essentially no-ops. I did this to
isolate the time overhead of coverage itself, as opposed to the time
spent reading and writing the db.
Storable looks like it's performing pretty well, with only a small
overhead. Eventually, I think that a transition to a real database
(where you can read/write only the portions of interest) would be good.
-mjc