[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Extremely high overhead of 'par-map'
From: |
Mark H Weaver |
Subject: |
Extremely high overhead of 'par-map' |
Date: |
Fri, 29 Mar 2013 02:00:26 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
I wrote:
> Nala Ginrut <address@hidden> writes:
>> --------------------cut-------------------
>> scheme@(guile-user)> ,time (define a (map (lambda (x) (expt x 5)) (iota
>> 10000)))
>> ;; 0.008019s real time, 0.007979s run time. 0.000000s spent in GC.
>> scheme@(guile-user)> ,time (define a (par-map (lambda (x) (expt x 5))
>> (iota 10000)))
>> ;; 6.596471s real time, 6.579375s run time. 1.513880s spent in GC.
>> --------------------end-------------------
> [...]
>> Well, is there any example?
>
> The timings above suggest that, on your machine, the overhead of
> 'par-map' is in the neighborhood of 660 microseconds per thread (that's
> the total run time divided by 10000 iterations).
I must say that 'par-map' has shockingly poor performance.
We really ought to try to improve this.
Mark