Uses the vcpus quota information saved at client initialization to dynamically switch to smaller VM instances if the default VM from the configuration file passes the quota limit:
Saves the vcpus counts for all available VM instances
During provisioning, falls back to a smaller VM if necessary using the quota and instance configs
There are two ways to "fall back":
1) Just use a smaller VM for the task
2) Partition the task to multiple tasks with smaller vms
Done:
Added the was, gcp, azure code for saving/loading vcpus counts
Please make sure to add comments to any parts of the code that might be confusing, as well as to function definitions. You can see examples in the code of how to format function definitions.
It might make testing easier if we put the VCPU limit file names into TransferConfig (instead of hard-coding them) so that during testing, we can point to different VCPU limit file that sets limit for the test without modifying the user's config.
Uses the vcpus quota information saved at client initialization to dynamically switch to smaller VM instances if the default VM from the configuration file passes the quota limit:
There are two ways to "fall back": 1) Just use a smaller VM for the task 2) Partition the task to multiple tasks with smaller vms
Done:
Roadmap: