We study shared multi-processor scheduling problem where each job can be executed on its private processor and simultaneously on one of many processors shared by all jobs in order to reduce the job's completion time due to processing time overlap. The total weighted overlap of all jobs is to be maximized. The problem models subcontracting scheduling in supply chains and divisible load scheduling in computing. We show that synchronized schedules that complete each job at the same time on its private and shared processor, if any is actually used by the job, include optimal schedules. We prove that the problem is NP-hard in the strong sense for jobs with arbitrary weights, and we give an efficient, polynomial-time algorithm for the problem with equal weights.
For the multi-processor problem with equal weights for all jobs, REF gives an efficient, polynomial-time algorithm running in time O(n log n).
Shared multi-processor scheduling
European Journal of Operational Research 261(2): 503-514 (2017)
Computer Science