Hi everyone!
I’m Mrigesh Thakur, a GSoC 2025 contributor, and I’m incredibly excited to work on Project #8: Replace Brian’s Just-In-Time Compilation Mechanism under the mentorship of Marcel Stimberg, Dan Goodman, and Benjamin Evans.
What This Project Is About
Brian currently uses Cython for runtime JIT compilation, but this approach introduces significant compilation delays and maintenance overhead. The project aims to:
- Replace Python/Cython-based runtime data structures (like dynamic arrays, spike queues) with their C++ counterparts.
- Enable direct memory sharing between Python and C++ with minimal overhead.
- Optimize performance by eliminating redundant Python/C++ boundary crossings.
- Potentially explore alternatives to Cython like lightweight weave-like compilation backends.
The goal is to streamline the runtime backend, reduce compilation bottlenecks, and improve simulation performance while preserving the flexibility and interactivity that Brian is known for.
More Details
You can find a detailed write-up here:
Proof of Concept + Research Repo
Would love to hear any suggestions, feedback, or ideas you might have related to this direction!
Looking forward to learning from and collaborating with this amazing community