15 papers · ranked by Valyu relevance
Yadu Babuji, Anna Woodard, Zhuozhao Li, Daniel S. Katz + 8 more
'Ben Clifford' 'Rohan Kumar' 'Łukasz Łaciński' 'Ryan Chard' 'Justin M. Wozniak' 'Ian Foster' 'Michael Wilde' 'Kyle Chard'] High-level programming languages such as Python are increasingly used to provide intuitive interfaces to libraries written in lower-level languages and for assembling applications from various…
Henrik Bengtsson
A future is a programming construct designed for concurrent and asynchronous evaluation of code, making it particularly useful for parallel processing. The future package implements the Future API for programming with futures in R. This minimal API provides sufficient constructs for implementing parallel versions of…
Cristian Ramon-Cortes, Ramon Amela, Jorge Ejarque, Philippe Clauss + 1 more
'Rosa Badia'] Abstract—The last improvements in programming languages, programming models, and frameworks have focused on abstracting the users from many programming issues. Among others, recent programming frameworks include simpler syntax, automatic memory management and garbage collection, which simplifies code…
Krzysztof Stuglik, Piotr Listkiewicz, Mateusz Kulczyk, Marcin Pietroń
'Marcin Pietroń'] Manual translation of the algorithms from sequential version to its parallel counterpart is time consuming and can be done only with the specific knowledge of hardware accelerator architecture, parallel programming or programming environment. The automation of this process makes porting the code much…
Edward Givelberg
We define an abstract framework for object-oriented programming and show that object-oriented languages, such as C++, can be interpreted as parallel programming languages. Parallel C++ code is typically more than ten times shorter than the equivalent C++ code with MPI. The large reduction in the number of lines of code…
Nikos Vasilakis, Κωνσταντίνος Καλλάς, Konstantinos Mamouras, Achilles Benetopoulos + 1 more
'Achilles Benetopoulos' 'Lazar Cvetković'] This paper presents PaSh, a system for parallelizing POSIX shell scripts. Given a script, PaSh converts it to a dataflow graph, performs a series of semantics-preserving program transformations that expose parallelism, and then converts the dataflow graph back into a…
Luis Cabellos
—Graphics processing units (GPU) had evolved from a specialized hardware capable to render high quality graphics in games to a commodity hardware for effective processing blocks of data in a parallel schema. This evolution is particularly interesting for scientific groups, which traditionally use mainly CPU as a work…
Ioannis Paraskevakos, André Luckow, Mahzad Khoshlessan, George Chantzialexiou + 4 more
'George Chantzialexiou' 'Thomas E. Cheatham' 'Oliver Beckstein' 'Geoffrey Fox' 'Shantenu Jha'] DRAFTDifferent parallel frameworks for implementing data analysis applications have been proposed by the HPC and Big Data communities. In this paper, we investigate three task-parallel frameworks: Spark, Dask and…
Abhishek Kulkarni, Andrew Lumsdaine
We evaluate and compare four contemporary and emerging runtimes for high-performance computing (HPC) applications: Cilk, Charm++, ParalleX and AM++. We compare along three bases: programming model, execution model and the implementation on an underlying machine model. The comparison study includes a survey of each…
Patrizio Dazzi
This paper presents an approach that exploits Java annotations to provide meta information needed to automatically transform plain Java programs into parallel code that can be run on multicore workstation. Programmers just need to decorate the methods that will eventually be executed in parallel with standard Java…
Kyle Chard, Yadu Babuji, Anna Woodard, Ben Clifford + 5 more
'Mihael Hategan' 'Ian Foster' 'Mike Wilde' 'Daniel S. Katz'] Parsl is a parallel programming library for Python that aims to make it easy to specify parallelism in programs and to realize that parallelism on arbitrary parallel and distributed computing systems. Parsl relies on developers annotating Python…
Brijender Kahanwal
Nowadays, we are to find out solutions to huge computing problems very rapidly. It brings the idea of parallel computing in which several machines or processors work cooperatively for computational tasks. In the past decades, there are a lot of variations in perceiving the importance of parallelism in computing…
Patrizio Dazzi
Embarrassingly parallel problems can be split in parts that are characterized by a really low (or sometime absent) exchange of information during their computation in parallel. As a consequence they can be effectively computed in parallel exploiting commodity hardware, hence without particularly sophisticated…
Marc Bux, Ulf Leser
Over the last two decades, scientific workflow management systems (SWfMS) have emerged as a means to facilitate the design, execution, and monitoring of reusable scientific data processing pipelines. At the same time, the amounts of data generated in various areas of science outpaced enhancements in computational power…
Yasset Pérez‐Riverol, Roberto Vera Alvarez
Parallel and distributed application design is a major area of interest in the domain of high performance scientific and industrial computing. Over the years, various approaches have been proposed to aid parallel program developers to modeling their applications. In this paper it will be used some concepts from agile…