1. In a computing environment, a method performed at least in part on at least one processor, comprising: processing a plurality of jobs, including processing resource usage data for the plurality of jobs, identifying two or more complementary jobs of the plurality of jobs, and mapping at least one job of the plurality of jobs to at least one other complementary job of the plurality of jobs based on the resource usage data, wherein complementary jobs have disparate utilization of a same resource during parallel execution; identifying at least two matching tasks of the at least one job and the at least one other job based on resource usage data, wherein the at least two matching tasks overload different resources and can be executed together; and executing the at least one job and the at least one other job on the same resource.