I have some code that counts the elements in a list that map to true
in a lookup table, looking something like this:
(def lookup-table {1 true, 2 false})
(def elements (range 1000000))
(count (filter lookup-table elements))
On my machine, with server mode enabled, the count + filter got ~10
times slower when I updated from 1.3 Alpha 1 to 1.3 Alpha 2:
(Alpha 1)
user=> (time (count (filter lookup-table elements)))
"Elapsed time: 181.262702 msecs"
1
(Alpha 2)
user=> (time (count (filter lookup-table elements)))
"Elapsed time: 2017.744155 msecs"
1
Which is weird because looking up elements in the table did not become
any slower:
(Alpha 1)
user=> (time (doseq [x elements] (lookup-table x)))
"Elapsed time: 159.033341 msecs"
nil
(Alpha 2)
user=> (time (doseq [x elements] (lookup-table x)))
"Elapsed time: 159.965861 msecs"
nil
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en