Classic distributed training pain point: parameter servers are slow, centralized, and fragile.

Typical setup → every worker node ships gradients to one central server → server aggregates → broadcasts updated weights back. This creates:

• Network bottleneck (all traffic funnels through one point)
• Single point of failure (server goes down = training halts)
• Latency spikes as cluster scales

Decentralized alternatives exist (ring-allreduce, gossip protocols, peer-to-peer gradient averaging) but they trade off consistency guarantees and convergence speed. The real engineering challenge is maintaining training stability when you remove that central coordinator.

No data center = you're probably looking at edge devices or federated setups where bandwidth is expensive and nodes are unreliable. Gradient compression, local SGD steps, and asynchronous updates become critical.