Vulkan: Select device with env variable, and skip initialize for unused devices. #629
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Introduces the
SD_VK_DEVICE
env variable that can be used to chose the device to run inference on.Also backend was initialized on every device for no apparent reason.
I know it was already possible to hide some devices from the Vulkan backend by setting the
GGML_VK_VISIBLE_DEVICES
env variable, but this isn't ideal, as it affects every program that uses Vulkan GGML.(Maybe the same should be done for CUDA and SYCL backends)