Last Updated: May 20, 2026Documentation Index
Fetch the complete documentation index at: https://docs.salad.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
SaladCloud runs workloads on distributed household PCs and workstations. Network speed can vary by node location, internet service provider, local network conditions, routing path, Wi-Fi or Ethernet quality, and other activity on the same network. A node’s available bandwidth can also change while your workload is running. SaladCloud does not provide a container group setting or node filter for minimum network bandwidth. If your application requires a specific minimum download or upload speed, check that requirement from inside the container after the replica starts. If the node does not meet the requirement, the application can request reallocation through IMDS reallocation. Use this pattern only when a minimum network speed is required for your workload to function correctly. Reallocating too aggressively can reduce your own available capacity.Reallocation Tradeoffs
When you reallocate away from a node, SaladCloud temporarily excludes that node from your allocation pool for 48 hours. This prevents the same workload from immediately returning to a node it rejected. Set conservative thresholds and use a small number of attempts before requesting reallocation. If your threshold is too high, or if your test endpoint is temporarily slow, your replicas can cycle through available nodes and eventually fail to allocate until capacity changes or the 48-hour exclusions expire. Good candidates for this pattern include workloads that must stream large inputs, download models at startup, upload large outputs, or maintain a minimum transfer rate to a known endpoint. For workloads that can tolerate slower transfers, prefer retry logic, asynchronous upload/download, or multiple transfer connections instead of immediate reallocation.Example Startup Check
The following bash script measures download speed from Cloudflare’s speed test endpoint. If any attempt meets the minimum speed, the script starts your application by executing the command passed to it. If all attempts fail, it requests reallocation and exits. This is only an example. You can use other speed test tools, cloud storage CLIs, SDKs, or application-level probes. For the most useful result, test against an endpoint that reflects your real workload path, such as the object storage region or API that your application uses.Tuning the Check
Use environment variables to tune the example without rebuilding the image:MIN_MBPS: Minimum accepted download speed in Mbps. Default:10.SPEED_TEST_BYTES: Number of bytes to download per attempt. Default:25000000.SPEED_TEST_ATTEMPTS: Number of attempts before requesting reallocation. Default:5.