You have a stack of jobs to run â render these frames, compile these files, process these orders â and several identical machines to run them on. Each job takes some amount of time. The work isn't finished until the last machine stops. How do you split the jobs so that moment comes as early as possible?
That finishing time has a name: the makespan. Minimizing it is the classic multiprocessor scheduling problem, and it sits at the heart of everything from data-center load balancing to packing a dishwasher efficiently.
It sounds like the kind of thing you could just eyeball. Sometimes you can. But the moment the jobs and machines grow, finding the perfectly balanced split turns out to be one of the genuinely hard problems in computer science â even though, surprisingly, a one-line rule comes remarkably close.
Comments
Loading comments...