Skip to content

Commit 02b9baf

Browse files
committed
kompute : ignore exceptions in ggml_vk_available_devices (#12)
Signed-off-by: Jared Van Bortel <[email protected]>
1 parent de9b0bb commit 02b9baf

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

ggml-kompute.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,9 +147,15 @@ std::vector<ggml_vk_device> ggml_vk_available_devices(size_t memoryRequired) {
147147
if (!komputeManager()->hasVulkan() || !komputeManager()->hasInstance())
148148
return results;
149149

150-
std::vector<vk::PhysicalDevice> physicalDevices = komputeManager()->listDevices();
151-
uint32_t deviceCount = physicalDevices.size();
150+
std::vector<vk::PhysicalDevice> physicalDevices;
151+
try {
152+
physicalDevices = komputeManager()->listDevices();
153+
} catch (vk::SystemError & err) {
154+
std::cerr << __func__ << ": ignoring Vulkan exception: " << err.what() << "\n";
155+
return results;
156+
}
152157

158+
uint32_t deviceCount = physicalDevices.size();
153159
if (deviceCount == 0)
154160
return results;
155161

0 commit comments

Comments
 (0)