I just tried this out with jacobian() and subs() over the commits since
0.7.3 to master. It's showing me that the new caching is the killer
slowdown:

https://github.com/sympy/sympy/commit/a63005e4

I've submitted a PR to Björn's repo:
https://github.com/bjodah/sympy_benchmarks_bjodah/pull/1/files

I'm assuming it uses fastcache because I have it installed, but maybe not.
I'm not sure how to control for dependencies yet.


Jason
moorepants.info
+01 530-601-9791

On Sun, Jul 19, 2015 at 10:39 AM, Ondřej Čertík <ondrej.cer...@gmail.com>
wrote:

> On Sun, Jul 19, 2015 at 5:16 AM, Björn Dahlgren <bjo...@gmail.com> wrote:
> > Hi all,
> >
> > On Tuesday, 14 July 2015 02:49:57 UTC+2, Aaron Meurer wrote:
> >>
> >> - Get a benchmark machine and run airspeed velocity on it. We need to
> >> catch performance regressions. The benchmark suite can be anything,
> although
> >> obviously well-made benchmarks are better.
> >
> >
> > I found a few hours and threw this together (motivated by having noticed
> > some things I have been doing with sympy has been getting slower):
> >
> > https://github.com/bjodah/sympy_benchmarks_bjodah
> >
> > then, on a machine with asv 0.1.1, I ran:
> >
> >    $ asv run ALL -s 100
> >
> > which essensitally takes 100 equally spaced commits from the whle history
> > and run the benchmarks one those.
> > You can view the results here:
> >
> > http://hera.physchem.kth.se/~sympy_asv
> >
> > some commits failed, maybe I should be targetting the merge commits but I
> > haven't
> > figured out how to do that yet.
> >
> > Furthermore: the comparison isn't quite fair since I belive the later
> > versions return more correct results (Piecewise solutions),
> > I'm not sure how to deal with this fairly, maybe some kind of assertion
> > should be made (like a tests) at the end of the individual benchmark,
> > a passing assertion means it should be included, a failing one that it
> > should be excluded. But then this
> > assertion shouldn't be included in the timing. There could be something
> in
> > asv for this but I haven't figured it out yet.
> >
> > I am stil a bit new to using asv so I haven't quite figured out best
> > practives here.
> > It would be nice to have a dedicated machine (or maybe several), maybe a
> > Raspberry Pi 2 which
> > would make it easy for people to get the exact same hardware for
> > comparisons?
> >
> > Anyways, thought I would share. Feel free to fork/send pull requests,
> I'll
> > happily run them on that machine if there is an
> > interest.
>
> Björn, thanks a lot for doing this! I need to setup something similar
> for SymEngine, I am currently benchmarking every commit that I think
> might slow things down by hand.
>
>
> I agree with everything that Aaron said. SymEngine is only fixing the
> "the speed as a side-effect of being in pure Python", i.e. with C++ we
> are much closer to the metal, so for low level representations of the
> symbolic expressions we have more freedom to nail the speed, but
> algorithmically it's the same issue as with SymPy and everything that
> Aaron said applies to SymEngine as well.
>
> We can buy a dedicated machine via NumFOCUS, SymPy should have enough
> money there, but I don't have time personally to make it happen. If
> anybody is interested, let me or Aaron now.
>
> Ondrej
>
> --
> 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.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/CADDwiVBBSj_BRVzPGubknQYmAvEaGLYhH%2BK4B7dXR90szteXNg%40mail.gmail.com
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAP7f1Aggf6HP_ka_3b73QwVGv67ShwRqtqgoRnCULVDmtbxTMg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to