chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] [Chicken-hackers] Any thoughts on performance woes?


From: Andy Bennett
Subject: Re: [Chicken-users] [Chicken-hackers] Any thoughts on performance woes?
Date: Wed, 08 Apr 2015 13:04:54 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.3.0

Hi,

> The difference is, this one is much better code, which doesn't exercise
> the garbage collector, so it isn't much use as a GC benchmark.

Code involving SSQL would be good for a GC benchmark. I recently
reworked the query generation in Knodium to be up-front rather than at
access-time and got an ordes of magnitude speed up and an order of
magnitude fewer GCs.

Here's a snippet from my commit message:

-----
(account 'read "1:3") query generation (each call returns 1 account object)

    > (time (for-each (lambda x (account 'read "1:3")) (iota 6500)))

    Original:

    5.296s CPU time, 0.492s GC time (major), 3334265 mutations, 86/28886
GCs (major/minor)
    5.357s CPU time, 0.48s GC time (major), 3334265 mutations, 84/28888
GCs (major/minor)
    5.332s CPU time, 0.508s GC time (major), 3334265 mutations, 89/28883
GCs (major/minor)
    5.284s CPU time, 0.46s GC time (major), 3334265 mutations, 83/28889
GCs (major/minor)
    5.397s CPU time, 0.501s GC time (major), 3334283 mutations, 83/28889
GCs (major/minor)

    With pre-generated query in read-account:

    0.304s CPU time, 0.004s GC time (major), 220077 mutations, 1/656 GCs
(major/minor)
    0.296s CPU time, 220077 mutations, 0/657 GCs (major/minor)
    0.304s CPU time, 220077 mutations, 0/657 GCs (major/minor)
    0.296s CPU time, 220077 mutations, 0/657 GCs (major/minor)
    0.3s CPU time, 220077 mutations, 0/657 GCs (major/minor)
-----





Regards,
@ndy

-- 
address@hidden
http://www.ashurst.eu.org/
0290 DA75 E982 7D99 A51F  E46A 387A 7695 7EBA 75FF


Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]