1. A method executed by a scheduling system comprising one or more computer processors for scheduling execution of parallel or distributed applications, the method comprising: receiving a request to allocate at least one computing resource of a plurality of computing resources for execution of a first executable application; determining that a second executable application and a third executable application are each eligible for resizing to accommodate the request to allocate the at least one computing resource, wherein at least a first portion and a second portion of the second executable application are respectively executing on a first computing resource and a second computing resource of the plurality of computing resources; selecting the second executable application to resize based at least in part on determining that a respective difference between a remaining execution time prior to resizing and a remaining execution time after resizing is smaller for the second executable application than for the third executable application; causing the second executable application to be resized at least in part by sending a first signal to the first computing resource to cease execution of the first portion of the second executable application on the first computing resource, wherein execution of at least the second portion of the second executable application continues on the second computing resource after resizing; and sending a second signal to the first computing resource to initiate execution of at least a portion of the first executable application on the first computing resource.