Enabling system wide shared memory for performance improvement in PyCOMPSs applications

Cita com:
hdl:2117/343794
Document typeConference report
Defense date2020
PublisherInstitute of Electrical and Electronics Engineers (IEEE)
Rights accessOpen Access
All rights reserved. This work is protected by the corresponding intellectual and industrial
property rights. Without prejudice to any existing legal exemptions, reproduction, distribution, public
communication or transformation of this work are prohibited without permission of the copyright holder
Abstract
Python has been gaining some traction for years in the world of scientific applications. However, the high-level abstraction it provides may not allow the developer to use the machines to their peak performance. To address this, multiple strategies, sometimes complementary, have been developed to enrich the software ecosystem either by relying on additional libraries dedicated to efficient computation (e.g., NumPy) or by providing a framework to better use HPC scale infrastructures (e.g., PyCOMPSs).In this paper, we present a Python extension based on SharedArray that enables the support of system-provided shared memory and its integration into the PyCOMPSs programming model as an example of integration to a complex Python environment. We also evaluate the impact such a tool may have on performance in two types of distributed execution-flows, one for linear algebra with a blocked matrix multiplication application and the other in the context of data-clustering with a k-means application. We show that with very little modification of the original decorator (3 lines of code to be modified) of the task-based application the gain in performance can rise above 40% for tasks relying heavily on data reuse on a distributed environment, especially when loading the data is prominent in the execution time.
CitationFoyer, C. [et al.]. Enabling system wide shared memory for performance improvement in PyCOMPSs applications. A: Workshop on Python for High-Performance and Scientific Computing. "Proceedings of PYHPC 2020, 9th Workshop on Python for High-Performance and Scientific Computing: Held in conjunction with SC20,The International Conference for High Performance Computing, Networking, Storage and Analysis: Virtual Conference, November 9-19, 2020". Institute of Electrical and Electronics Engineers (IEEE), 2020, p. 22-31. ISBN 978-0-7381-1086-8. DOI 10.1109/PyHPC51966.2020.00008.
ISBN978-0-7381-1086-8
Publisher versionhttps://ieeexplore.ieee.org/document/9307935
Files | Description | Size | Format | View |
---|---|---|---|---|
Enabling_System ... _PyCOMPSs_Applications.pdf | 324,1Kb | View/Open |