## GoogleCloudPlatform/PerfKitBenchmarker — v1.14.0…v1.15.0

_345+ commits._

### Features
- **Add flag for testing windows tests over the internal IP.** (73db256)
- **Add the option in EdwClientInterface to set specific attributes after initialization, so that client_interface can always be created in the EdwService's init. Implement the method for Redshift (the only one that needs it right now).** (0540794)
- **Add a WarmUpQuery method to the client interface that can be used to detect cold start issues. Also deprecate the athena_database flag in favor of using the cluster_identifier.** (2d74f26)
- **Add Spec17 configs compatible with v1.1.** (932b98c)
- **Add Quota / Resource exceeded errors to GKE and EKS.** (2b531aa)
- **Add check in Prepare stage of PKB cloud datastore ycsb benchmark to ensure db is empty before running. Raise an exception & fail test if db is non-empty. Cleanup will run after failed test to attempt to clear db for the following run.** (1ceae49)
- **Add ICMP ping support for Azure using EXTERNAL ip address.** (3f83dde)
- **Add unittest.main call in vpn_service_test** (45691d4)
- **Enable support for specifying newer versions of GCC than what the OS supports by default.** (0da58f6)
- **Added GCE Placement Group support. By default, placement groups are not created.** (6053b8d)
- **Add Spec-supplied example configs.** (c53d761)
- **Add SPECCPU17 flag allowing to build but not run a suite.** (3051c75)
- **Allow managed db flags to run on benchmarks that does not support unmanaged db** (8037a88)
- **Add maven mirror settings template** (3608c8a)
- **Add support for AWS's m6g family.** (5a95656)
- **Support delete timing on provider implementations of object_storage_api script.** (8e2256d)
- **Add function to tag existing DynamoDB instances.** (304ebd6)
- **Add ability to specify existing subnet with --gce_subnet_name.** (86434fb)
- **Add public ip mode to large_scale_boot benchmark.** (ff1a5b7)
- **Add SSH keys to dpb EMR clusters for debuggability.** (2845b35)
- **Add support to PKB cloud datastore ycsb benchmark to use GCS files for** (1a61248)
- **Add changes for PreprovisionedData in virtual_machine.py and for Maven** (f13205a)
- **add to breaking changes** (816a301)
- **change to new enum. Remove ping flag** (8ec8721)
- **add ip address metadata enum** (79962c8)
- **add cidr to firewall rule key and string** (8b014e4)
- **add entry and comment** (2bd157a)
- **add cidr/source to entry** (b643b57)
- **Add timing for individual OpenFOAM commands.** (f57a568)
- **Adding Azure support for large_scale_boot benchmark** (e296398)
- **Add test scripts.** (8fe0f26)
- **Add back GCS boto client library as the default option alongside the Cloud Storage Python client library.** (337e408)
- **Add image files for tutorials.** (3cb6d41)
- **Add .png to .gitattributes.** (32fe8f8)
- **Add sql server to aws relational db provider.** (bbe8238)
- **Adding AWS support for large_scale_boot.** (5e8237a)

### Fixes
- **Minor spelling fix.** (2f67e3f)
- **Fix up DPB versions.** (e2aad82)
- **Fix bug where large_scale_boot script load both aws private ip and public ip address.** (4b5903d)
- **Fix issue calculating geomean.** (c235171)
- **Merge pull request #2224 from justinuang:patch-1** (63dcc0c)
- **Merge branch 'patch-1' of github.com:justinuang/PerfKitBenchmarker into patch-1** (3d9ac70)
- **Refactor static_virtual_machine_test.py to fix linter.** (aa6379a)
- **fix bug** (62571d3)
- **fix external ping for aws** (967d942)
- **Fix segfault issue for DLVM images** (5d17697)
- **Fix TPU transformer benchmark mishandles the decode_dir parameter.** (2060003)
- **Fix imports for proper typing.** (ea574a4)
- **Add AWS spot instance to metadata and fix a bug about parsing flag aws_spot_block_duration_minutes.** (71ce192)

### Backend
- **Update release notes for PKB version 1.15.0.** (905e273)
- **Change Spec17 benchmark to run when proc/meminfo reports less than 16GB memory** (cefb0db)
- **Migrate Athena benchmarking to script_driver framework so that testing is standardized across products, and so that execution time is observed correctly.** (aa7d00a)
- **Increase nuttcp command timeout buffer to 60 seconds.** (4cc4e54)
- **Update test class description.** (82524e7)
- **Change deletion batch size of Cloud datastore YCSB benchmark.** (4165dea)
- **Pin rsa version to 3.1.4.** (80a0e87)
- **Change openfoam_num_threads to openfoam_num_threads_per_vm.** (20415fa)
- **Clean up EdwService methods related to interacting with the client whose functionality is now covered by the EdwClientInterface.** (319bc00)
- **Make BaseVirtualMachine inherit from BaseOsMixin.** (554492b)
- **managed_db_azure_compute_unit and managed_db_tier flag for adjusting managed db size in azure** (f6ba55d)
- **Update GKE Acccelerator repo branch to match: https://cloud.google.com/kubernetes-engine/docs/how-to/gpus#installing_drivers** (3de2195)
- **Use different batch sizes for read and delete operations in the cleanup phase. Added keys only filter to avoid fetching full entities.** (387b9c6)
- **Implement EdwClientInterface for Azure Synapse.** (5491876)
- **Implement EdwClientInterface for Snowflake.** (2f6eb31)
- **Use comma separated list in --tags flag for EKS.** (c1957cf)
- **Implement EdwClientInterface for Athena.** (24b1b32)
- **Implement EdwClientInterface for Redshift.** (bf413d8)
- **Adding a modular edw service client interface** (0b712e0)
- **Install software-properties-common into Ubuntu docker images to allow adding ppa:ubuntu-toolchain-r/test** (03865f2)
- **Use python integer division when determining HPCC columns.** (63e5346)
- **Removed optional description field from create GCE placement group** (97b9873)
- **After InstallPackages("python") try to set the default version of python.** (035cc30)
- **Sort AWS AMI images by CreationDate instead of by name to get default image** (466cd65)
- **do not fail if autoremove cannot find openmpi-bin package** (634d331)
- **Implement parallel deletion of entities for multiple kinds in smaller batches to improve cleanup performance.** (78db33c)
- **Adding the expected list of queries to the Benchmark aggregator.** (f961be5)
- **Remove trailing newline in reported pip version.** (aecf7b1)
- **Adding tests for the benchmark results aggregation logic.** (31a8f93)
- **Snowflake JDBC client.** (4dc272c)
- **Merge pull request #2225 from florinpapa:preprovisioned-data** (0774199)
- **Merge branch 'master' into preprovisioned-data** (e47cb6f)
- **Address copybara feedback for maven_test.py** (ea5555d)
- **Address copybara feedback for maven.py** (5188165)
- **Update sysbench benchmark to be more tolerant of errors for improved reliability.** (5d32bcc)
- **Update CHANGES.next.md to reflect latest changes** (c090e24)
- **Merge branch 'master' into preprovisioned-data** (ad45971)
- **Catch the NotImplementedError if the provider does not implement ShouldDownloadPreprovisionedData** (a190e73)
- **Cast sample values to floats** (9a9d8e9)
- **Adding a edw query results aggregator to compile raw results and aggregate them for benchmark level metrics.** (e2efce7)
- **Added MultiStreamDelete to Object Storage API Tests.** (4fae5d5)
- **Create common Test VmSpec, OsMixin, and VirtualMachine classes.** (42b5544)
- **Adds a check for existence before deleting an AWS network.** (34c6e55)
- **Merge branch 'master' into preprovisioned-data** (edfc94f)
- **Address mirror_url feedback** (5318db6)
- **Added MultiStreamDelete to Object Storage API Tests.** (513082f)
- **Expose Spark SQL benchmark metadata** (e0f5f38)
- **Added MultiStreamDelete to Object Storage API Tests.** (04d1870)
- **Allow Horovod benchmark to use tcmalloc** (b5e22e5)
- **In Mdtest, run a full sweep (create/stat/delete) when dropping caches is unspecified.** (d516730)
- **Refactor os_virtual_machine_test.py to simplify test params and mock in setUp.** (5622cc2)
- **Update Boto client library for S3 to boto3.** (d1c53af)
- **Assigning ip addresses to gcp windows vms adds 30sec.** (98ca01d)
- **Rename preprovisioned Snowflake config file from config to snowsql_config.** (490f2ad)
- **Update multichase github release version to allow for Ubuntu18 runs.** (2cf9269)
- **Update maven test** (02e9f55)
- **Remove java lib symlink** (3ab3ebe)
- **Create all SparkSQL tables in one job to save time.** (4bf3f16)
- **Keep the curl package installed** (f1c7203)
- **Internal change that won't show up in a public commit.** (2c67952)
- **Check against None, instead of relying on truth value of float** (9d38446)
- **Check against None, instead of relying on truth value of float** (7fbf804)
- **Update Maven test** (eed428d)
- **Check against None, instead of relying on truth value of float** (1fbf809)
- **Check against None, instead of relying on truth value of float** (5fb1f03)
- **Clean up imports for vm tests.** (0730a7a)
- **Change GCP large scale boot to use GCP's bulk api.** (df3fdc0)
- **Makes AWS bucket tagging on creation retryable** (1df63e0)
- **Merge pull request #2184 from SMU-ATT-Center-for-Virtualization:allow_icmp** (af571dc)
- **Merge pull request #2211 from florinpapa:boot_disk_size** (507bacd)
- **Update PKB cloud datastore ycsb benchmark:** (89c9faf)
- **Refactor required attribute CLOUD in virtual_machine.py.** (3334c55)
- **update tutorial to no longer use ping_also_run_using_external_ip** (0a53293)
- **update unit test. By switching to ShouldRunOnExternalIpAddress, runs more tests by default, so assertions needed to be updated** (b4b1356)
- **Update app service metadata.** (f86675e)
- **change iperf ip_type from string to enum as well** (8b4454e)
- **revert ip metadata to lowercase** (5fb95c2)
- **revert change** (8b0b4b0)
- **update method docstring** (6091df4)
- **perfkitbenchmarker/linux_benchmarks/ping_benchmark.py** (db9e115)
- **move icmp firewall rules to their own set/dict** (34c99f8)
- **changed to use existing enum** (9552036)
- **change order of clauses in if statement** (3eb3e9d)
- **remove debug statement** (29efb3f)
- **implement AllowIcmp for gcp provider. Allows ping tests with external IPs** (28851fa)
- **Reorder BaseVirtualMachine and BaseOsMixin.** (dc8560c)
- **Use the openmpi package to determine the MPI version used in OpenFOAM.** (385889a)
- **Update CHANGES.next.md** (4532f88)
- **remove default keyword from AWS and Azure boot disk size** (a5d573c)
- **Enable specifying SpecCPU's results directory** (789fed8)
- **Switched Netperf Benchmarks to Python3 by default** (090352a)
- **Deprecate Amazon Linux 1 `amazonlinux1` os_type.** (2ea1979)
- **Update Boto client library for S3 to boto3.** (4b0b941)
- **Create PKB tutorials for low-friction trials.** (d486aa9)
- **Move from perfkitbenchmarker.flags to absl.flags to improve dependency analysis.** (7ddeed2)
- **Remove deprecated versionless os_types.** (07b756d)
- **Do not pass a default --boot-disk-size or --boot-disk-type to GCE.** (862f26d)
- **Update AWS EFA version to 1.8.3** (d47cd47)
- **Update OpenFOAM documentation.** (d5e6b97)
- **Update Boto client library for S3 to boto3.** (dd1c5ed)
- **Merge pull request #2187 from SMU-ATT-Center-for-Virtualization:iperf_sending_threads** (ac39978)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/GoogleCloudPlatform/PerfKitBenchmarker?utm_source=github-action)._