-
-
Notifications
You must be signed in to change notification settings - Fork 28
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
[Bug]: 'Unable to compute luma percent: ERROR_OUT_OF_DEVICE_MEMORY' #63
Comments
Interesting bug, thanks for sharing! Do you by any chance have multiple GPUs? If I were to bet, the issue comes from the fact that I haven't had a chance to experiment with devices that have an external GPU, so there are several places in the vulkan.rs code that just take the first available device, the first available queue, etc., instead of being smart about it and querying some properties and picking the most fitting objects to work with. Lines 57 to 84 in d13f50a
Do you have an interest to try to experiment with code and to make it work on your hardware? If so I can try to give some pointers to examples of what to try 😊 |
Thank you for your response, yes I do have 2 gpu's an intel integrated graphics gpu and one nvidia external gpu, I can't seem to make the nvidia one work though (some kind of driver problem) so it doesn't matter if wluma just ignores that one. Long story short I have some very basic rust knowledge and would like to have a try. :) |
Awesome! As a very first step, I suggest to focus on finding a hacked hardcoded version of the code that works on your hardware. See those hardcoded 0s as indexes in the code snippet above in a few places, for physical decide, queue, etc? What if you just randomly try 1s, would anything change? There are also functions you could call to query all (e.g. all physical devices), then you can print some details to console, like how many of what you have, which index corresponds to Intel and Nvidia, etc. Another thing that might help is just to add some prints everywhere, so you can get a rough idea of what is going on in Vulkan code, and what pieces are involved just before the crash. In other words, let's explore first, and once it gets clearer on what precisely is the problem and what should have been the right value or parameter, then we can focus on writing a pretty and generic code that works for everyone and can be merged. How does this sound? 😊 Feel free to post here some findings and analysis as you go, whether you find something interesting or get stuck, me and perhaps some folks who watch the repo will try to give you some pointers. |
Sounds great thanks for the help :) Is the code snippet above the only place with hard-coded devices or are there more places I should check? |
wluma also selected the wrong GPU for me, and I used |
Steps for reproducing the issue
What is the buggy behavior?
It panics instantly
What is the expected behavior?
It works and doesn't crash (or at least has a more approachable error)
Logs
Version
I am using version 4.1.2-1 from the Arch User Repositories
Environment
The text was updated successfully, but these errors were encountered: