Shared Processor Scheduling of Multiprocessor Jobs
We study shared processor scheduling of multiprocessor weighted jobs where each job can be executed on its private processor and simultaneously on possibly many processors shared by all jobs in order to reduce their completion times due to processing time overlap. Each of m shared processors may charge different fee but otherwise the processors are identical. The total weighted overlap of all jobs is to be maximized. This problem is key to subcontractor scheduling in extended enterprises and supply chains, and divisible load scheduling in computing. We prove that, quite surprisingly, synchronized schedules that complete each job using shared processors at the same time on its private and shared processors include optimal schedules. We show that optimal α-private schedules that require each job to use its private processor for at least α=1/2+1/(4(m+1)) of the time required by the job guarantee more than an α fraction of the total weighted overlap of the optimal schedules. This gives an α-approximation algorithm that runs in strongly polynomial time for the problem, and improves the 1/2-approximation reported recently in the literature to 5/8-approximation for a single shared processor problem. The computational complexity of the problem, both single and multi-shared processor, remains open. We show however an LP-based optimal algorithm for antithetical instances where for any pair of jobs j and i, if the processing time of j is smaller than or equal to the processing time of i, then the weight of j is greater than or equal to the weight of i.
READ FULL TEXT