The latest version of symjit (v2.3.0) is now available (with thanks to Jason). You can install it as `conda install -c conda-forge symjit`.
In addition to being more stable, Symjit should be significantly faster, especially for certain workloads relevant to SymPy. The main improvements are: 1. Better codegen with optimized register allocator and fewer mem-copy operations. 2. Multi-threading is enabled on all platforms by default. Note that this is at the level of the Rust code and is not visible to Python nor affected by the GIL. Multi-threading can significantly improve the performance of parallel workloads when the compile function is called on vectors. 3. Symjit now recognizes and emits specialized code for exponentiation to an integer power with or without mod operation. This is especially important when evaluating polynomials, as we observe a speed-up of more than 100x for high-degree polynomial evaluation. The planned additions in the near future: 1. RISC-V support. 2. Common sub-expression elimination. Comments and recommendations are welcome, especially if there is a need for a specific feature. Thanks, Shahriar On Sunday, April 13, 2025 at 11:56:14 AM UTC-4 Oscar wrote: > On Sun, 13 Apr 2025 at 15:04, Shahriar Iravanian <[email protected]> > wrote: > > > > Hi Oscar, > > > > I wrote a light wrapper around the symjit python backend. It can be > installed using `pip install funcbuilder`. The only dependency is numpy. > The GitHub repo is https://github.com/siravan/funcbuilder. > > Thanks Shahriar. I will try adding it to protosym to do some testing. > > -- > Oscar > -- 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 view this discussion visit https://groups.google.com/d/msgid/sympy/bfc4cb7a-8651-4d9c-a331-80d05138619an%40googlegroups.com.
