I recently tried the latest version and found it to be very useful. And I noticed a potential issue that could be improved. Currently, jobs are assigned based on available memory and are allocated to the GPU with the smallest ID that meets the memory requirements. The problem is that this available GPU might already be running a less memory-intensive job with high utilization, while another available GPU with 0% utilization remains available.
One possible solution could be to reorder the available GPUs by memory each time a job is assigned, and allocate the job to the GPU with the biggest available memory that also likely has 0% utilization.
Hi,
I recently tried the latest version and found it to be very useful. And I noticed a potential issue that could be improved. Currently, jobs are assigned based on available memory and are allocated to the GPU with the smallest ID that meets the memory requirements. The problem is that this available GPU might already be running a less memory-intensive job with high utilization, while another available GPU with 0% utilization remains available.
One possible solution could be to reorder the available GPUs by memory each time a job is assigned, and allocate the job to the GPU with the biggest available memory that also likely has 0% utilization.
Not sure if it helps.