Catwalk.jl VS DiffEqOperators.jl

Compare Catwalk.jl vs DiffEqOperators.jl and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
Catwalk.jl DiffEqOperators.jl
1 3
82 281
- -
3.7 4.6
8 months ago 11 months ago
Julia Julia
GNU General Public License v3.0 or later GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Catwalk.jl

Posts with mentions or reviews of Catwalk.jl. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-07-26.
  • What's Bad about Julia?
    6 projects | news.ycombinator.com | 26 Jul 2021
    Julia does have a minimal compilation path with an interpreter. You can even configure this on a per-module basis, which I believe some of the plotting packages do to reduce latency. There is even a JIT-style dynamic compiler which works similarly to the VMs you listed: https://github.com/tisztamo/Catwalk.jl/.

    IMO, the bigger issue is one of predictability and control. Some users may not care about latency at all, whereas others have it as a primary concern. JS and related runtimes don't give you much control over when optimization and are thus black boxes, whereas Julia has known semantics around it. I think fine-grained tools to externally control optimization behaviour for certain modules (in addition to the current global CLI options and per-package opt-ins) would go a long way towards addressing this.

DiffEqOperators.jl

Posts with mentions or reviews of DiffEqOperators.jl. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-11-30.
  • Julia 1.7 has been released
    15 projects | news.ycombinator.com | 30 Nov 2021
    >I hope those benchmarks are coming in hot

    M1 is extremely good for PDEs because of its large cache lines.

    https://github.com/SciML/DiffEqOperators.jl/issues/407#issue...

    The JuliaSIMD tools which are internally used for BLAS instead of OpenBLAS and MKL (because they tend to outperform standard BLAS's for the operations we use https://github.com/YingboMa/RecursiveFactorization.jl/pull/2...) also generate good code for M1, so that was giving us some powerful use cases right off the bat even before the heroics allowed C/Fortran compilers to fully work on M1.

  • Why are NonlinearSolve.jl and DiffEqOperators.jl incompatible with the latest versions of ModelingToolkit and Symbolics!!!? Symbolics and ModelingToolkit are heavily downgraded when those packages are added.
    1 project | /r/Julia | 20 Aug 2021
    (b) DiffEqOperators.jl is being worked on https://github.com/SciML/DiffEqOperators.jl/pull/467 .
  • What's Bad about Julia?
    6 projects | news.ycombinator.com | 26 Jul 2021
    I like that they are colored now, but really what needs to be added is type parameter collapasing. In most cases, you want to see `::Dual{...}`, i.e. "it's a dual number", not `::Dual{typeof(ODESolution{sfjeoisjfsfsjslikj},sfsef,sefs}` (these can literally get to 3000 characters long). As an example of this, see the stacktraces in something like https://github.com/SciML/DiffEqOperators.jl/issues/419 . The thing is that it gives back more type information than the strictest dispatch: no function is dispatching off of that first 3000 character type parameter, so you know that printing that chunk of information is actually not informative to any method decisions. Automated type abbreviations could take that heuristic and chop out a lot of the cruft.

What are some alternatives?

When comparing Catwalk.jl and DiffEqOperators.jl you can also consider the following projects:

JuliaInterpreter.jl - Interpreter for Julia code

Gridap.jl - Grid-based approximation of partial differential equations in Julia

BoundaryValueDiffEq.jl - Boundary value problem (BVP) solvers for scientific machine learning (SciML)

ApproxFun.jl - Julia package for function approximation

FourierFlows.jl - Tools for building fast, hackable, pseudospectral partial differential equation solvers on periodic domains

julia - The Julia Programming Language

oxide-enzyme - Enzyme integration into Rust. Experimental, do not use.

SciMLTutorials.jl - Tutorials for doing scientific machine learning (SciML) and high-performance differential equation solving with open source software.

DifferentialEquations.jl - Multi-language suite for high-performance solvers of differential equations and scientific machine learning (SciML) components. Ordinary differential equations (ODEs), stochastic differential equations (SDEs), delay differential equations (DDEs), differential-algebraic equations (DAEs), and more in Julia.

MethodOfLines.jl - Automatic Finite Difference PDE solving with Julia SciML

Infiltrator.jl - No-overhead breakpoints in Julia

mujoco - Multi-Joint dynamics with Contact. A general purpose physics simulator.