Mojo's impact on Numba

I just took a quick read of Numba roadmap 2023 and I wonder how Numba could benefit from architectural design decisions of Mojo: GitHub - modularml/mojo: The Mojo Programming Language. Specifically, I have MLIR (https://mlir.llvm.org/) in mind. Apologies for a wishy-washy post, but I’m a new Numba user with a very limited knowledge of its internals.

This doesn’t answer your question but I found this graphic to have an interesting perspective of such projects. It looks like it doesn’t have mojo included yet.

1 Like

There is work ongoing that is attempting to use MLIR in Numba for the parallel regions of the code as identified when you have the parallel=True njit flag.

3 Likes

There is an exploratory Numba to MLIR integration: GitHub - numba/numba-mlir: POC work on MLIR backend. The work mostly explores replacing the post-typing lowering phase in Numba.

And as @DrTodd13 mentioned, there is an exploratory work to reimplement Numba’s loop parallelizer using MLIR.

I feel at this time Mojo sits parallel to both Cpython and Numba.

1 Like

There will also be a presentation about numba-mlir next week in the public dev meeting:

1 Like

Hi, apologies to revive this thread, but I have now posted a longer blog post on this topic that I think helps frame the comparison and give some thoughts on the relation the two projects could have: