Matthew, I setup the timings as such:
Derivation: all the symbolic manipulation needed to get the symbolic expressions for the ODEs. Code Generation: The time it takes to convert the symbolic expressions into function that can be numerically evaluated. For lamdify, this is some argument prep and a single call the the lambdify function. For Theano, it's also argument prep and a call to the theano_function. And for Cython it is custom C and Cython generation from the symbolic expressions, compilation, and importing the new module. Integration: This is basically timing the evaluation of the numerical function evaluation, except that I evaluate it with scipy.integrate.odeint (my actual use case), as my goal is to reduce numerical integration times. So, compile time plays a role in the code generation timing I have in the graph. How would you all suggest timing these? Jason moorepants.info +01 530-601-9791 On Sat, Nov 2, 2013 at 6:11 PM, Matthew Rocklin <[email protected]> wrote: > I'm curious to know how by how much Cython outperforms Theano without > compile time. Jason, do you think that compile time played a significant > role in these timings? > On Nov 2, 2013 2:58 PM, "Jason Moore" <[email protected]> wrote: > >> Yes, Theano and Cython include code gen + compile time. >> >> >> Jason >> moorepants.info >> +01 530-601-9791 >> >> >> On Sat, Nov 2, 2013 at 12:38 PM, Aaron Meurer <[email protected]> wrote: >> >>> I'm interested in the discrepancies between the Theano, Cython, and >>> lambdify code generators. Do Theano and Cython include compile time? >>> >>> Aaron Meurer >>> >>> On Fri, Nov 1, 2013 at 5:54 AM, Jason Moore <[email protected]> >>> wrote: >>> > I've been tinkering with code generation for ODE's that >>> > sympy.physics.mechanics spits out and have some results: >>> > >>> > http://www.moorepants.info/blog/pydy-code-gen.html >>> > >>> > Several people have posted topics on this recently. We need to build >>> in a >>> > code generator for solving ODE's into SymPy that would play well with >>> the >>> > codegen and autowrap modules. I think I can use this code I wrote as a >>> base >>> > to start working on that but would need some help generalizing it >>> beyond our >>> > systems. Feedback is welcome. >>> > >>> > Jason >>> > moorepants.info >>> > +01 530-601-9791 >>> > >>> > -- >>> > You received this message because you are subscribed to the Google >>> Groups >>> > "PyDy" group. >>> > To unsubscribe from this group and stop receiving emails from it, send >>> an >>> > email to [email protected]. >>> > To post to this group, send email to [email protected]. >>> > Visit this group at http://groups.google.com/group/pydy. >>> > For more options, visit https://groups.google.com/groups/opt_out. >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "PyDy" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at http://groups.google.com/group/pydy. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >> >> -- >> 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 [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/sympy. >> >> For more options, visit https://groups.google.com/groups/opt_out. >> > -- > 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 [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/sympy. > > For more options, visit https://groups.google.com/groups/opt_out. > -- 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. For more options, visit https://groups.google.com/groups/opt_out.
