Making Template Picking Multithreaded

I would like to propose a feature. It would be nice if template picking was multithreaded. It currently only uses one thread. I’m aware the slowest part is loading the image onto the gpu for the picking to occur. These days our GPUs memories are quite large and can hold multiple images at a time.

Thanks @breddy for this suggestion. To mimic multithreaded picking, you may split the dataset into smaller batches using the Exposure Sets Tool and run a separate picking job for each batch of exposures.

@wtempel While that suggestion works, it wouldn’t solve the issue where the gpu is idle most of the time during the template processing job. If we could run multipile jobs on the same GPU, I think it could saturate the gpu.

You can run multiple jobs on one GPU I think - if you use the queue to specific GPU option

1 Like

If you do, beware VRAM usage spikes. Some actions spike VRAM dramatically and if it happens to exceed the cards VRAM, every job will crash - or worse, do something unexpected silently which still looks “OK” but can propagate errors down the line.

How many jobs can be forced at once will depend on the card and the job/parameters - one or two templates is less load than 10-20, for example.