Releases: GoogleCloudPlatform/gcsfuse
Gcsfuse v3.5.4
Fixes GO-2025-4155 by upgrading Golang from 1.24.10 to 1.24.11.
Gcsfuse v3.5.3
Fix to honour machine-type from config file above the one coming from metadata server PR#4083.
Gcsfuse v3.5.2
Fixes GO-2025-4134 & GO-2025-4135 by upgrading crypto package from 0.40.0 to 0.45.0.
Gcsfuse v3.5.1
DNS Caching
- GCSFuse will not do a DNS resolution for every new connection, instead it will cache the DNS lookup results. By caching DNS results, it will avoid making an additional call for DNS resolution for JSON API (using HTTP/1) shielding the GCSFuse performance from DNS latencies.
- This will improve both read and write multi-stream performance of GCSFuse significantly benefitting scenarios where HTTP/1 connections need to be created at high frequencies such as random IO observed during AI data training or multiple parallel requests to read/write data such as Orbax checkpoint restores and where DNS lookups are not cached by default e.g. while using host-network in GKE.
- Impact:
- 3x reduction in accelerator block % (14.5% to 4.9%) in Llama 3.1-70B training.
- vLLM safetensors serving latency reduction : We observed an average 3-7% latency reduction and a peak latency reduction of 21%.
Bug Fixes
- Fixed double counting for gcs/reader_count and gcs/download_bytes_count metrics. (PR#3895)
- Fixed issue with metric updates via gcp-metrics-exporter in multi-mount scenarios.
The metric updates in multi-mount cases on the same VM would incorrectly update the same time-series. This would result in errors saying that a metric is being updated more frequently than allowed. It is addressed in this release. - Fixed error message during unmount due to double-shutdown of gcp-metrics-exporter.
Whenever trace was enabled, during shutdown it'd raise an error: "Error while shutting down trace exporter: …" even if the error was not due to double-shutdown of gcp-metrics-exporter. With this release, this error message won’t appear during the unmount. - Delay between consecutive retries increased from ms to sec for GetStorageLayout call, happens during the Mount. (PR#3962)
- Fixes stability issue in buffered read while setting
--read-global-max-blocks=-1. (PR#3855) (PR#3857)
Full Changelog: v3.4.4 ... v3.5.1
Gcsfuse v3.4.4
Updated the golang version from 1.24.6 to 1.24.9 to fix the CVEs
Gcsfuse v3.4.3
Updated the golang version from 1.24.5 to 1.24.6 to fix the CVEs
Gcsfuse v3.4.1
This release is built on top of 3.4.0 & upgrades go sdk dependency (from v1.56.2 to v1.56.3).
Dependency Upgrades / CVE fixes
Go SDK patch release upgrade 1.56.2 -> 1.56.3
Gcsfuse v3.4.0
Introducing profile based optimizations for AI/ML workloads: We are adding flag --profile to apply best practices recommended in our performance tuning best practices for AI/ML. The supported values (as of now) are aiml-training, aiml-checkpointing and aiml-serving. Setting the profile flag simplifies performance optimization for AI/ML workloads by consolidating over 10 flags into one. Details of profiles can be found here.
Please note:
- You can set
--profileonly during mount. To update it, you need to remount. - Memory Considerations: As part of profile setting, we will set metadata cache capacity and TimeToLive (TTL) to unlimited (meaning never expire and never evict). If your VM doesn’t have enough memory, this might result in Out of Memory (OOM) errors, so available and needed memory should be considered. While these should be considered on any machine, machines with limited memory (<1TiB) are more prone to OOM errors.
- Precedence order:
- The profile-based optimization supersedes optimizations applied for high-end machine types introduced in v3.0.0.
- The profile-based optimization is superseded by user-specified value in the mount command or in configuration file, if set.
- Profile flag is not yet supported in GCSFuse CSI volumes in GKE pods.
Rapid storage
Rapid is now in Allowlist GA phase.
-
Learn more on this blog post.
-
Express Interest to participate in AGA by filling this form.
AGA Features
- Now appends to objects originally written via GCSFuse leverage Rapid real time appends support and content is visible in real time. Note that this applies only to the file handles opened with mode O_APPEND.
- Read Improvements
- Faster Random Reads (~10%)
Dependency Upgrades / CVE fixes
- Go SDK patch release upgrade 1.56.1 -> 1.56.2
- gRPC patch release upgrade 1.75.0 -> 1.75.1
Full Changelog: v3.3.0...v3.4.0