Systems FOR Automated Parallelization (SAPFOR) combines various approaches to automation of parallel programming. On the one hand, SAPFOR implements static and dynamic analysis techniques and an automatic parallelizing compiler which relies on them. On the other hand, in order to increase performance of a generated parallel program, it is often necessary to carry out preliminary transformations of the original sequential program. Moreover, specifications of additional properties, which cannot be determined by analysis tools, are required in many cases. For this purpose, SAPFOR implements source-to-source transformations which can be performed automatically at the request of the user. Graphic user interface is used to maintain the parallelization process. It allows the user to investigate the decisions which the system makes, as well as to set additional properties of the original program. This paper presents an approach, which is implemented in SAPFOR, to automate parallelization of C programs for the compute systems with shared memory. We also highlight opportunities of the graphic user interface and consider application of DVMH directive based programming model to automate the mapping of programs to accelerators. This paper compares performance of the automatic parallelization of some programs from NAS Parallel Benchmarks 3.3.1 with manual parallelization based on OpenCL.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.