You're streaming multi-gigabyte model checkpoints between S3 and GCS, using a pipe to connect two SDK read/write operations. The transfer saturates at 40MB/s when you know the network can handle 400MB/s. You check fcntl(F_GETPIPE_SZ) and see the pipe buffer is stuck at 1MB. You try to increase it with fcntl(F_SETPIPE_SZ) to 16MB and get EPERM . The container won't let you. The answer is no — a process inside a standard Docker container cannot increase pipe buffer size beyond /proc/sys/fs/pipe-max-size without the CAP_SYS_RESOURCE capability. That sysctl is namespace-isolated in modern kernels (5.1+), but even if you mount a writable /proc/sys , increasing the limit requires privileges containers don't get by default. Why pipe buffers matter for data streaming When you stream data between two network storage APIs using a pipe, the kernel buffer size directly controls throughput. If your reader pulls 4MB chunks from S3 but your pipe buffer is 1MB, the writer blocks constantly.…