Am 03.10.2013 07:46, schrieb Ondřej Čertík:
Try the Boehm-Demers-Weiser collector and see what that brings.
Use really long-running tasks to benchmark it, it has a relatively high
fixed space overhead.
I'll give it a shot, thanks for the tip. If nothing, it would be good to know
the performance of GC compared to reference counting.
Well, the BDW collector cannot give you the full power of GC, for the
reasons mentioned, so you'll be comparing the BDW collector, not GC in
general.
I'd suggest trying out Java, which has a top-tier GC. Java does have some
performance issues related to run-time class loading and the presence of
introspection facilities, so it might not shine until the GC really starts
to become relevant.
I doubt you can beat CSymPy with Java, but I'll be happy to be proven wrong.
Heh. Unfortunately, I won't find the time to do that, so I'll have to pass.
Also, Java is unattractive for Sympy because it's a rather heavyweight
runtime that you simply do not want to interface with any Python except
Jython.
... that's giving me a thought though: Maybe it's a good idea to make a
Sympy-to-whatever-language translation. On Jython, a C++ library just
doesn't make sense, but it would allow experimentation with different
languages.
It still comes with all the multiple-language-downsides as discussed
above, but if the backend can work with multiple languages, it's easier
to avoid relying too much on the features of one backend language, so
the restrictions on the Python side would turn out to be less.
In my experience, one has to write a clean algorithm in C++ by hand, so
the only thing that matters is the algorithm itself.
Okay... pity.
Garbage management is a real issue in C++.
Currently I use reference counting. I don't see any issue --- can you elaborate
on what you mean?
See http://www.hpl.hp.com/personal/Hans_Boehm/gc/issues.html for issues
with and around the BDW collector.
There's also the seminal Zorn paper "Memory Allocation Costs in Large C
and C++ Programs" at
http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=6E5ECAB5D093601BF25863BDECEC9821?doi=10.1.1.89.6277&rep=rep1&type=pdf
--
You received this message because you are subscribed to the Google Groups
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at http://groups.google.com/group/sympy.
For more options, visit https://groups.google.com/groups/opt_out.