On 2/13/07, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:


> But it didn't help at all with my benchmark.
> ...
> For information that change has no impact on my bench.

Interesting, what version of Perl are you running if those
changes don't do anything?


vdr26:~/xmltv# time ./xmltv2vdrv5.pl -s -c channels.conf -x tvguide.xml

real    3m4.397s
user    2m50.475s
sys     0m6.052s

vdr26:~/xmltv# time ./xmltv2vdrv6.pl -s -c channels.conf -x tvguide.xml

real    3m4.309s
user    2m48.951s
sys     0m7.240s

xmltv2vdrv5 = the version I posted
xmltv2vdrv6 = the version I posted + the o switch on all regex + title
and subtitle now use regex and no more split.

about perl (from debian sarge) :
vdr26:~/xmltv# perl --version

This is perl, v5.8.4 built for i386-linux-thread-multi


Futher improvement is that now it is unnecessary to read whole
XML-file into memory, as the file is linearly scanned through. So no
need to waste 5MB of memory if you are short of it.

--
# Read all the XMLTV stuff into memory - quicker parsing
open(XMLTV, "$xmltvfile") || die "cannot open xmltv file";
@xmllines=<XMLTV>;
close(XMLTV);

sub ProcessEpg
    # Find XML events

    foreach $xmlline (@xmllines)

--

=>
open(XMLTV, "$xmltvfile") || die "cannot open xmltv file";

sub ProcessEpg

        while($xmlline = <XMLTV>)


Good idea, I have not thought about it (my wonderful Celeron 233 has
384Mo of Ram).

Thanks for your help.

Sébastien

_______________________________________________
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr

Reply via email to