tmp: probe chunk import success

This commit is contained in:
2026-07-15 02:09:34 +02:00
parent 99f8050c32
commit 7b6183cc6f
+6
View File
@@ -17945,6 +17945,7 @@ static bool ggml_backend_vk_register_host_buffer(void * buffer, size_t size) {
}
bool success = false;
size_t total_registered = 0;
for (size_t i = 0; i < GGML_VK_MAX_DEVICES; i++) {
vk_device& device = vk_instance.devices[i];
if (!device || !device->external_memory_host || device->max_buffer_size == 0) {
@@ -17960,10 +17961,12 @@ static bool ggml_backend_vk_register_host_buffer(void * buffer, size_t size) {
uint8_t * p = static_cast<uint8_t *>(buffer);
size_t remaining = size;
bool dev_success = false;
size_t n_chunks = 0;
while (remaining > 0) {
size_t cur = std::min(remaining, chunk);
vk_buffer buf = ggml_vk_buffer_from_host_ptr(device, p, cur);
if (!buf || !buf->buffer) {
fprintf(stderr, "PROBE chunk import FAILED at offset %zu cur=%zu remaining=%zu\n", (size_t)(p - (uint8_t*)buffer), cur, remaining);
break;
}
{
@@ -17971,9 +17974,12 @@ static bool ggml_backend_vk_register_host_buffer(void * buffer, size_t size) {
device->pinned_memory.emplace_back(p, cur, buf);
}
dev_success = true;
total_registered += cur;
n_chunks++;
p += cur;
remaining -= cur;
}
fprintf(stderr, "PROBE device[%zu] registered %zu chunks %.2f MiB (of %.2f MiB)\n", i, n_chunks, (total_registered)/1048576.0, size/1048576.0);
if (dev_success) {
success = true;
}