Seems like every time I do a Clojure talk I get questions I can't
answer.  I did an informal session last night for Portland's
Functional Programming Study Group.

Two questions came up:

First, a Haskell coder made the broad claim that other attempts at STM
did not use MVCC because it was "too slow". I responded to the effect
that Clojure HashMap's are really fast and fast to mutate (he
countered with Haskell being able to modify an unmodifiable map in
place if there's only one reference to it).  I also emphasized that
Rich is very concerned with performance and that if Clojure STM would
be implemented some other way if MVCC wasn't fast enough.

In retrospect, the right answer may have been more to the effect that
Clojure STM limits the number of mutable "slots" (the refs) to keep it
efficient.  What's the correct response here?

Secondly, I told the story about the big simulation on the Azul, and
the 20 gig of GC/sec, etc. So if you've coded your simulation really
well, do 600 cores give you a 600x speedup over a single core?  (Of
course not). Given that 10% of the cores are doing GC, how much
benefit to you get from spreading across multiple cores?  And how much
better (or worse) is Clojure at this than a typical, non-naive, Java
approach?

-- 
Howard M. Lewis Ship

Creator of Apache Tapestry
Director of Open Source Technology at Formos

--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to