What is Single Program Multiple Data (SPMD)?

Per Wikipedia, "... a technique employed to achieve parallelism... Tasks are split up and run simultaneously on multiple processors with different input in order to obtain results faster. SPMD is the most common style of parallel programming."

While SPMD is efficient because it separates computations based upon dependencies, distributed computing using a driver/executor approach does not do this and requires additional “tiny tasks” to build shuffle files as workarounds to juggle tasks that are dependent upon other tasks. Thus, as Bodo uses the more efficient SPMD approach that does not require the overhead of tiny tasks and shuffle files, Bodo is much more efficient.