[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Guile-commits] GNU Guile branch, master, updated. v2.1.0-68-g79eb47
From: |
Ludovic Courtès |
Subject: |
Re: [Guile-commits] GNU Guile branch, master, updated. v2.1.0-68-g79eb47e |
Date: |
Wed, 07 Mar 2012 22:01:12 +0100 |
User-agent: |
Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.93 (gnu/linux) |
Hi,
Andy Wingo <address@hidden> skribis:
> Hi!
>
> On Mon 27 Feb 2012 16:57, address@hidden (Ludovic Courtès) writes:
>
>>>> How does this change influence ‘benchmark-suite/benchmarks/ports.bm’?
>>>
>>> Dunno, that wasn't my benchmark. It makes the web server go faster
>>> (e.g. guile examples/web/debug-sxml.scm).
>>
>> Can you check with that benchmark? I think it’s important to have
>> concrete figures when doing such a change, to make sure the
>> performance/maintenance cost ratio is good.
>
> Before:
>
> address@hidden:~/src/guile-master$ ./benchmark-guile ports.bm
> Benchmarking /home/wingo/src/guile-master/meta/guile ... ports.bm
> with GUILE_LOAD_PATH=/home/wingo/src/guile-master/benchmark-suite
> ;; running guile version 2.1.0.43-4813a-dirty
> ;; calibrating the benchmarking framework...
> ;; framework time per iteration: 3.81469669342041e-8
> ("ports.bm: peek-char: latin-1 port" 700000 user 0.08 benchmark
> 0.0532971231460571 bench/interp 0.0532971231460571 gc 0.0)
> ("ports.bm: peek-char: utf-8 port, ascii character" 700000 user 0.05
> benchmark 0.0232971231460571 bench/interp 0.0232971231460571 gc 0.0)
> ("ports.bm: peek-char: utf-8 port, Korean character" 700000 user 0.08
> benchmark 0.0532971231460571 bench/interp 0.0532971231460571 gc 0.0)
> ("ports.bm: read-char: latin-1 port" 10000000 user 0.7 benchmark
> 0.318530330657959 bench/interp 0.318530330657959 gc 0.0)
> ("ports.bm: read-char: utf-8 port, ascii character" 10000000 user 0.68
> benchmark 0.298530330657959 bench/interp 0.298530330657959 gc 0.0)
> ("ports.bm: read-char: utf-8 port, Korean character" 10000000 user 0.68
> benchmark 0.298530330657959 bench/interp 0.298530330657959 gc 0.0)
> ("ports.bm: char-ready?: latin-1 port" 10000000 user 0.57 benchmark
> 0.188530330657959 bench/interp 0.188530330657959 gc 0.0)
> ("ports.bm: char-ready?: utf-8 port, ascii character" 10000000 user 0.57
> benchmark 0.188530330657959 bench/interp 0.188530330657959 gc 0.0)
> ("ports.bm: char-ready?: utf-8 port, Korean character" 10000000 user 0.57
> benchmark 0.188530330657959 bench/interp 0.188530330657959 gc 0.0)
> ("ports.bm: rdelim: read-line" 1000 user 0.38 benchmark 0.379961853033066
> bench/interp 0.297933677033066 gc 0.082028176)
>
> After:
>
> ;; running guile version 2.1.0.43-4813a-dirty
> ;; calibrating the benchmarking framework...
> ;; framework time per iteration: 3.81469669342041e-8
> ("ports.bm: peek-char: latin-1 port" 700000 user 0.05 benchmark
> 0.0232971231460571 bench/interp 0.0232971231460571 gc 0.0)
> ("ports.bm: peek-char: utf-8 port, ascii character" 700000 user 0.05
> benchmark 0.0232971231460571 bench/interp 0.0232971231460571 gc 0.0)
> ("ports.bm: peek-char: utf-8 port, Korean character" 700000 user 0.08
> benchmark 0.0532971231460571 bench/interp 0.0532971231460571 gc 0.0)
> ("ports.bm: read-char: latin-1 port" 10000000 user 0.74 benchmark
> 0.358530330657959 bench/interp 0.358530330657959 gc 0.0)
> ("ports.bm: read-char: utf-8 port, ascii character" 10000000 user 0.76
> benchmark 0.378530330657959 bench/interp 0.378530330657959 gc 0.0)
> ("ports.bm: read-char: utf-8 port, Korean character" 10000000 user 0.77
> benchmark 0.388530330657959 bench/interp 0.388530330657959 gc 0.0)
> ("ports.bm: char-ready?: latin-1 port" 10000000 user 0.68 benchmark
> 0.298530330657959 bench/interp 0.298530330657959 gc 0.0)
> ("ports.bm: char-ready?: utf-8 port, ascii character" 10000000 user 0.64
> benchmark 0.258530330657959 bench/interp 0.258530330657959 gc 0.0)
> ("ports.bm: char-ready?: utf-8 port, Korean character" 10000000 user 0.62
> benchmark 0.238530330657959 bench/interp 0.238530330657959 gc 0.0)
> ("ports.bm: rdelim: read-line" 1000 user 0.39 benchmark 0.389961853033066
> bench/interp 0.306389294033066 gc 0.083572559)
>
> The times are quite variable, though.
Thanks for running the bench! That’s not very conclusive, though.
I improved ports.bm in stable-2.0 (in particular, the ‘read-char’
benchmarks made little sense before as they quickly reached EOF). It
would be ideal if you could try it, and use --iteration-factor to have
longer timings.
Thanks,
Ludo’.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Guile-commits] GNU Guile branch, master, updated. v2.1.0-68-g79eb47e,
Ludovic Courtès <=