-
Notifications
You must be signed in to change notification settings - Fork 115
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
Error message: "An item with the same key has been added" #51
Comments
@Costigan Thank you for submitting this bug report. It seems to be an internal ILGPU compiler issue that should not occur and is not related to an error in your program. I have already investigated the described problem and I guess that it has been caused by a synchronization issue in the Can you test whether the latest commits solve this problem? Furthermore, rolling back to version 0.6 should circumvent this problem as well. |
Some additional remarks: It looks like you are not using any Note that using shared memory in combination with implicitly grouped kernels can lead to undefined and unintended behavior. We should add an error message to ILGPU that simply forbids such kernels. Please use an explicitly grouped kernel to have fine-grained control regarding the number of threads per group. |
I'll close this issue for now, since the above-mentioned commit solves this problem on all test machines. Should you encounter further problems, we can always take up this topic again. |
@m4rs-mt I'm sorry for not responding quickly. I ended up going with a multi-core solution, and performance was good enough. However, getting this implementation going will help me in the future. I'll get it running and add another comment confirming that. Wrt the synchronization instructions, you're right. I should have included one after loading shared memory. Thank you. |
Hello. I'm using 0.7.0.0 and the Cuda accelerator. I'm getting a runtime error with the message "An item with the same key has been added". The error doesn't occur when using the CPU accelerator.
I don't think this is an ILGPU bug, but I'm uncertain how to debug my code given the lack of specificity in the error message.
The error is generated on this line, the first (and only) time an action is generated from my kernel.
var landing_probability_kernel = accelerator.LoadStreamKernel<Index2, ArrayView2D, ArrayView2D, int, int>(EstimateLandingProbability);
My question is 'how should I debug this message'? What sorts of things should I look for?
(I'm including the code for completeness, but I'm not asking you to look at it if you can suggest a direction to look.)
One possibility I'm unsure about is that this kernel allocates shared memory and create a 2D view of if. I don't know for sure whether creating 2D views is allowed inside kernels.
The text was updated successfully, but these errors were encountered: