Hi Andy, the timings were collected with two litte macros I've written
and which are available here:
http://hg.postspectacular.com/macrochrono/src/tip/src/macrochrono.clj

The actual project in question will be released in the next few
months, once things are more stable.

I haven't run a profiler yet, but will try tomorrow...

Thanks, K.

On 3 October 2012 01:40, Andy Fingerhut <andy.finger...@gmail.com> wrote:
> I'm not aware of what changes made in 1.4 could cause this performance 
> degradation.
>
> Out of curiosity, are you willing to share your code for performance 
> profiling of future Clojure versions?  i.e. is it open source already and so 
> that wouldn't be a problem, or is it closed source?
>
> Have you run a profiler on your tests to see where the time is spent with 
> Clojure 1.3 vs Clojure 1.4?
>
> Andy
>
> On Oct 2, 2012, at 4:24 PM, Karsten Schmidt wrote:
>
>> Today, I decided to finally switch one of my projects from Clojure
>> 1.3.0 to 1.4.0 (and test driving the 1.5.0 snapshot) but quickly found
>> some discouraging effects in terms of performance. The project
>> involves a lot of geometry and I'm using vanilla vectors for all
>> vector math. So far I've *not* been using any type hints or casting,
>> but was generally happy with the performance under 1.3.0...
>>
>> Under 1.3.0, e.g. a Delaunay triangulation of 5000 random 2D points
>> resulting in approx. 9450 triangles takes:
>>
>> average 422ms / minimum 393ms - version with transients: avg. 358ms / min. 
>> 324ms
>>
>> The exact same code under 1.4.0:
>>
>> average 695ms / minimum 640ms - version with transients: avg. 672ms / min. 
>> 616ms
>>
>> That's 1.65x slower and the only thing changed is the clojure version
>> number in project.clj. 1.5.0 snapshot is in the same league... :( Also
>> note that the impact of transients is much reduced compared to
>> 1.3.0...
>> (All stats collected over 60sec duration.)
>>
>> Has there been another overhaul or behavior change of numerics in
>> these recent versions? I'm really quite suprised/shocked by this find
>> and can't explain it to myself. I was hoping to use the library also
>> from CLJS in the future and hence have stayed away from adding type
>> hints and explicit casting...
>>
>> Thanks for any insights!
>>
>> Best, K.
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en

-- 
Karsten Schmidt
+44 7875 524 336

http://postspectacular.com | http://toxiclibs.org | http://toxi.co.uk

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to