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

Are vector data types supported? #1101

Closed
yblainm opened this issue Sep 27, 2023 · 3 comments
Closed

Are vector data types supported? #1101

yblainm opened this issue Sep 27, 2023 · 3 comments
Labels

Comments

@yblainm
Copy link

yblainm commented Sep 27, 2023

Hi!

I see that there's been this branch merged #1023 which piqued my interest in this library, which as I understand it is primarily meant for JIT compiling kernels written in C# for various backends.

My question is: does ILGPU support vectorized operations and array math similar to Python's numpy, or NumSharp since the recent work on Vector types? I'm quite inexperience in writing kernels and am not very familiar with this codebase, plus I can't quite find documentation that explains it, though maybe I haven't searched well enough.

Thanks for your work and attention!

@m4rs-mt
Copy link
Owner

m4rs-mt commented Sep 27, 2023

Hi @yblainm, thanks for your question and welcome to the ILGPU community. Unfortunately, these vector types are meant to be used inside GPU kernels for improved throughput in terms of compute and memory bandwidth. And yes, the main purpose of ILGPU is compiling kernels written in .Net into GPU code that can be run natively on most GPU devices.

We are currently not supporting any of these high-level operations natively within ILGPU or ILGPU.Algorithms. However, @MPSQUARK is maintaining a high-level library around ILGPU being capable to turn vector and matrix operations into ILGPU-compatible kernels for acceleration.

@yblainm
Copy link
Author

yblainm commented Sep 27, 2023

Thank you! This answers my question. It's good to know about the work on https://github.com/MPSQUARK/BAVCL which I'll be keeping an eye on.

@yblainm yblainm closed this as completed Sep 27, 2023
@MPSQUARK
Copy link

Hi @yblainm the BAVCL library is a project I am working on which aims to provide high level functionality and is based on ILGPU. What you describe, "similar to pythons numpy" but for C# using gpu acceleration, was the motivation behind it's development.
The library is a work in progress but it has a lot of functionality, if there's anything you feel is lacking/missing feel free to raise an issue in BAVCL. I am an active member in the ILGPU discord server, and I do my best to attend all the talk to dev meetings, so if you have any questions you can find me there, and I do my best to keep up to date with the latest and greatest in ILGPU.
@m4rs-mt Thank you very much for the mention.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants