Unlike Spark MLLib where the Spark driver plays a single-node parameter server and can easily become the bottleneck, BigDL implements a distributed parameter server on top of Spark Block Manager where parameters are partitioned and the same partition on each task is updated locally before being shuffled to the task responsible for aggregating that partition (More details from the BigDL whitepaper)
Slides
Notes