Evaluating end-to-end optimization for data analytics applications in weld
Author(s) -
Shoumik Palkar,
James J. Thomas,
Deepak Narayanan,
Pratiksha Thaker,
Rahul Palamuttam,
Parimajan Negi,
Anil Shanbhag,
Malte Schwarzkopf,
Holger Pirk,
Saman Amarasinghe,
Samuel Madden,
Matei Zaharia
Publication year - 2018
Publication title -
proceedings of the vldb endowment
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.946
H-Index - 134
ISSN - 2150-8097
DOI - 10.14778/3213880.3213890
Subject(s) - computer science , analytics , porting , speedup , overhead (engineering) , thread (computing) , data analysis , adaptive optimization , welding , computer engineering , parallel computing , data science , data mining , operating system , software , engineering , mechanical engineering
Modern analytics applications use a diverse mix of libraries and functions. Unfortunately, there is no optimization across these libraries, resulting in performance penalties as high as an order of magnitude in many applications. To address this problem, we proposed Weld, a common runtime for existing data analytics libraries that performs key physical optimizations such as pipelining under existing, imperative library APIs. In this work, we further develop the Weld vision by designing an automatic adaptive optimizer for Weld applications, and evaluating its impact on realistic data science workloads. Our optimizer eliminates multiple forms of overhead that arise when composing imperative libraries like Pandas and NumPy, and uses lightweight measurements to make data-dependent decisions at run-time in ad-hoc workloads where no statistics are available, with sub-second overhead. We also evaluate which optimizations have the largest impact in practice and whether Weld can be integrated into libraries incrementally. Our results are promising: using our optimizer, Weld accelerates data science workloads by up to 23X on one thread and 80X on eight threads, and its adaptive optimizations provide up to a 3.75X speedup over rule-based optimization. Moreover, Weld provides benefits if even just 4--5 operators in a library are ported to use it. Our results show that common runtime designs like Weld may be a viable approach to accelerate analytics.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom