Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Transition from Pybind to Nanobind for Python Bindings #1774

Closed
vprajapati-tt opened this issue Jan 14, 2025 · 2 comments · Fixed by #2379
Closed

Transition from Pybind to Nanobind for Python Bindings #1774

vprajapati-tt opened this issue Jan 14, 2025 · 2 comments · Fixed by #2379
Assignees
Labels
enhancement New feature or request python Issues pertaining to Python Bindings

Comments

@vprajapati-tt
Copy link
Contributor

  • Now that MLIR has started to support Nanobind we should transition our Python bindings over to decrease compile time and increase efficiency.
  • Should hopefully be a quick transition, though it will impact all currently standing issues and PRs related to the python bindings.
  • This thread will be updated with progress and considerations.
@vprajapati-tt vprajapati-tt added enhancement New feature or request python Issues pertaining to Python Bindings labels Jan 14, 2025
@vprajapati-tt vprajapati-tt self-assigned this Jan 14, 2025
@vprajapati-tt
Copy link
Contributor Author

Seems like the LLVM version on our toolchain needs to be uplifted. Currently blocked until this is possible.

@vprajapati-tt
Copy link
Contributor Author

Read through this guide: https://nanobind.readthedocs.io/en/latest/porting.html

Unfortunately a lot of functionality depending on removed / ported functionality was introduced since this issue was filed. Looks like I have some more work to do :)

vprajapati-tt added a commit that referenced this issue Mar 7, 2025
### Ticket
- PR closes #1774 

### Problem description
- `nanobind` is now supported through MLIR. It's hopefully leaner,
faster, and better supported.
- We should switch our Python bindings over to `nanobind` ASAP to
prevent further complications

### What's changed
- Few functional changes to nanobind to support new python object
storage methods.
- Switched all of the bindings and build system from `pybind11` ->
`nanobind`.
odjuricicTT pushed a commit that referenced this issue Mar 8, 2025
- PR closes #1774

- `nanobind` is now supported through MLIR. It's hopefully leaner,
faster, and better supported.
- We should switch our Python bindings over to `nanobind` ASAP to
prevent further complications

- Few functional changes to nanobind to support new python object
storage methods.
- Switched all of the bindings and build system from `pybind11` ->
`nanobind`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request python Issues pertaining to Python Bindings
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant