Automatic Synthesis of Parallel and Distributed Unix Commands with KumQuat

12/31/2020
by   Nikos Vasilakis, et al.
0

We present KumQuat, a system for automatically synthesizing parallel and distributed versions of Unix shell commands. KumQuat follows a divide-and-conquer approach, decomposing commands into (i) a parallel mapper applying the original command to produce partial results, and (ii) an ordered combiner that combines the partial results into the final output. KumQuat synthesizes the combiner by applying repeated rounds of exploration; at each round, it compares the results of the synthesized program with those from the sequential program to discard invalid candidates. A series of refinements improve the performance of both the synthesis component and the resulting synthesized programs. For 98.2 either synthesizes a combiner (92.2 synthesizable (7.8 parallel version and 3.8× for the distributed version.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset