The expiation of most of the labels can be found in the paper 
Fast Numerical Evaluation for Symbolic Expressions in Java 
(https://www.researchgate.net/publication/279179451_Fast_Numerical_Evaluation_for_Symbolic_Expressions_in_Java).
 

For the SMC_xxx in the picture, they are the similar things but implemented 
in Python(SymPy+LLVMPY+LLVM) and C++ (GiNaC+LLVM). C++_O3 is the pure C++ 
implementation of the benchmark.


On Wednesday, April 20, 2016 at 1:45:37 PM UTC-7, Jason Moore wrote:
>
> Can you explain the graphs you attached. What do all the labels mean? Why 
> would lambdify by faster than ufuncify?
>
>
> Jason
> moorepants.info
> +01 530-601-9791
>
> On Wed, Apr 20, 2016 at 1:42 PM, Jason Moore <[email protected] 
> <javascript:>> wrote:
>
>> This sounds great. Note that we have recently merged some code that uses 
>> llvm to automatically JIT sympy expressions. Check out the master branch 
>> and search for the relevant pull requests. Maybe there is some overlap with 
>> your project.
>>
>>
>> Jason
>> moorepants.info
>> +01 530-601-9791
>>
>> On Wed, Apr 20, 2016 at 11:29 AM, yueming liu <[email protected] 
>> <javascript:>> wrote:
>>
>>> I am not sure if it is too late to contribute to SymPy and the paper. 
>>> I've been developing a private project called sympy-llvm which uses 
>>> just-in-time (JIT) compilation technique to compile SymPy expressions to 
>>> native machine code in order to speedup the numerical evaluation of the 
>>> expressions for numerical computation purpose. This is similar to the 
>>> existing functions in SymPy like subs/evalf, lambdify, ufuncify and Theano 
>>> (see http://docs.sympy.org/latest/modules/numeric-computation.html). 
>>> The advantage of sympy-llvm is that it is faster than all the existing 
>>> methods in the sense of compilation time and numerical evaluation time. 
>>> Another advantage is that no FORTRAN or C/C++ source code generation 
>>> involved.  Runnable machine code is generated in memory using LLVM 
>>> (Attached figures show some comparison benchmarks. SMC_py stands for 
>>> sympy-llvm implementation).  Example applications are implemented such as 
>>> the numerical computation for modals in PyDy. I'd like to make sympy-llvm 
>>> public and integrate into SymPy as an optional component for numerical 
>>> computation if possible.
>>>
>>> As you all may know that the projects like Google TensorFlow and Theano 
>>> are both using symbolic-numerical way to provide human friendly language 
>>> interface and fast numerical computation. The CASs projects developed a 
>>> couple of decades ago like Maple, Maxima, Mathematica, Reduce etc (
>>> https://en.wikipedia.org/wiki/List_of_computer_algebra_systems) none of 
>>> them have 'in-memory' JIT complication functions to bridge the gap between 
>>> symbolic and numeric computations. I believe sympy-llvm as a component of 
>>> SymPy will be a great enhancement of SymPy in numerical computation field.
>>>
>>> -Yueming Liu
>>>
>>>
>>> On Tuesday, April 19, 2016 at 3:53:13 PM UTC-7, Ondřej Čertík wrote:
>>>>
>>>> Hi, 
>>>>
>>>> I would like to invite anybody to contribute to our paper about SymPy 
>>>> and become an author. We use the authorship criteria that are written 
>>>> in our README: 
>>>>
>>>>
>>>> https://github.com/sympy/sympy-paper/blob/2a93d84a6f3447f8e15e24f02cedb6c27c299abd/README.md#authorship-criteria
>>>>  
>>>>
>>>> In other words, to satisfy 1), you must contribute to sympy in some 
>>>> way (e.g. some good patch that is more than, say, fixing a typo in 
>>>> documentation), to satisfy 2), get involved with the development of 
>>>> the sympy-paper repository: https://github.com/sympy/sympy-paper, 
>>>> submit a patch there, write a section, or just review PRs. Finally, 
>>>> you must also be willing to satisfy 3) and 4). Hopefully this should 
>>>> be pretty clear, but if you have any questions about authorship, 
>>>> please let me or Aaron know. 
>>>>
>>>> Once this paper is accepted, we will probably put it into the SymPy's 
>>>> README for people to cite, so I encourage everyone to get involved. 
>>>>
>>>> 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 [email protected] <javascript:>.
>>> To post to this group, send email to [email protected] 
>>> <javascript:>.
>>> Visit this group at https://groups.google.com/group/sympy.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/sympy/af0be361-2f60-4c4e-878c-6a264289ba50%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/sympy/af0be361-2f60-4c4e-878c-6a264289ba50%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> 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 [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/bade1cb5-bf1e-4ac6-b01a-0a4b9aaa6c05%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to