cloud wars: optimizing performance vs. cost in aws, azure, and gcp | pilput