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

Iterating multiple times over a buffer object #1976

Open
antonio-fc opened this issue Dec 13, 2024 · 3 comments
Open

Iterating multiple times over a buffer object #1976

antonio-fc opened this issue Dec 13, 2024 · 3 comments

Comments

@antonio-fc
Copy link

Hi team,
I'm trying to implement an application using IRON. My application requires me to multiply the same data array by each element of another data array. However, when trying to iterate over the same memory buffer in a single kernel call, I got a h.wait() error.
Is this something that is possible, and if so, how can it be done?
If more details is needed do let me know. Thanks in advance.

@AndraBisca
Copy link
Collaborator

AndraBisca commented Dec 16, 2024

Hello and thank you for raising this issue! Could you please send us your IRON code?

This application can take several forms depending on the number of compute tiles you would like to use and whether the same data array is small enough to fit in the local memory of a compute tile or needs to be brought in piece by piece into the compute tile(s).

@antonio-fc
Copy link
Author

Hello,

The application can be found at: https://github.com/antonio-fc/my_mlir-aie/tree/testing/apps/app4
In the file 'aie2.py,' I am trying to iterate over the 'u' input twice in the 'runtime_sequence' method using the 'of_in_u' fifo object.
However, despite having the correct input and output size, this fails with a 'h.wait()' error. I found that this happens when I try to iterate over the same input again when I have already iterated over the entire volume once. This is because I want to multiply the entire content more than once. So, I wonder (hope) if this is possible, and if not what is the method to implement this type of operation in a single kernel call?

@antonio-fc
Copy link
Author

in order to run the application, use 'make run_py'

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

No branches or pull requests

2 participants