3,112 Hits in 4.6 sec

Automated generation of High-Performance Computational Fluid Dynamics Codes

Sandra Macià, Pedro J. Martínez-Ferrer, Eduard Ayguade, Vicenç Beltran
2022 Journal of Computational Science  
This paper presents the automated process of generating, from abstract mathematical specifications of Computational Fluid Dynamics (CFD) problems, optimised parallel codes that perform and scale as manually  ...  Domain-Specific Languages (DSLs) improve programmers productivity by decoupling problem descriptions from algorithmic implementations.  ...  This work is also supported by the Ministry of Economy of Spain through Severo Ochoa Center of Excellence Program (SEV-2015-0493).  ... 
doi:10.1016/j.jocs.2022.101664 fatcat:7z54kpriyzfdfjlzuam55ayfmm

Automatic Parallelization: Executing Sequential Programs on a Task-Based Parallel Runtime

Alcides Fonseca, Bruno Cabral, João Rafael, Ivo Correia
2016 International journal of parallel programming  
Automatically parallelizing sequential code, to promote an efficient use of the available parallelism, has been a research goal for some time now.  ...  This work focuses on the Java language, but the techniques are general enough to be applied to other programming languages.  ...  Acknowledgements This work would not have been possible without the contributions to the AEminium language and runtime from Sven Stork, Paulo Marques and Jonathan Aldrich.  ... 
doi:10.1007/s10766-016-0426-5 fatcat:7ynudrck2bfczjmy3cynkvzlvu

Compiling and Optimizing Java 8 Programs for GPU Execution

Kazuaki Ishizaki, Akihiro Hayashi, Gita Koblents, Vivek Sarkar
2015 2015 International Conference on Parallel Architecture and Compilation (PACT)  
Our approach translates lambda expressions with parallel streams APIs in Java 8 into GPU code and automatically generates runtime calls that handle the low-level operations mentioned above.  ...  This paper presents a just-in-time (JIT) compiler that can generate and optimize GPU code from a pure Java program written using lambda expressions with the new parallel streams APIs in Java 8.  ...  We thank Marcel Mitran for his encouragement and support in pursuing the parallel streams API and lambda approach, and thank Jimmy Kwa for his extensive contribution to the implementation.  ... 
doi:10.1109/pact.2015.46 dblp:conf/IEEEpact/IshizakiHKS15 fatcat:c6bwzxy7vbbg5mbo6ohajgmepa

Generating an efficient compiler for a data parallel language from a denotational specification [chapter]

Johan Ringström, Peter Fritzson, Mikael Pettersson
1994 Lecture Notes in Computer Science  
This paper reports experience from building a prototype compiler for a small Algollike parallel language using a version of the DML system called DML-P, which has been extended to support data-parallel  ...  Extensive benchmarks of a DML-P generated compiler are presented.  ...  We want to describe a computer language including the operational behaviour of parallel programs while avoiding unnecessary detail, but we also want to be able to automatically generate a compiler for  ... 
doi:10.1007/3-540-57877-3_17 fatcat:6gd7pgkt5jgu5nd7de6uy5zetu

Object-oriented concurrent reflective languages can be implemented efficiently

Hidehiko Masuhara, Satoshi Matsuoka, Takuo Watanabe, Akinori Yonezawa
1992 conference proceedings on Object-oriented programming systems, languages, and applications - OOPSLA '92  
The schemes include: efficient lazy creation of metaobjects/meta-groups, partial compilation of scripts (methods), dynamic progression, self-reification, and light-weight objects, all appropriately integrated  ...  We present efficient implementation schemes for object-oriented concurrent reflective languages using our language ABCL/R2 as an example.  ...  Acknowledgements We would like to thank the members of IBM Tokyo Research Laboratory (TRL) for providing us a parallel version of Common Lisp (TOP-l  ... 
doi:10.1145/141936.141948 dblp:conf/oopsla/MasuharaMWY92 fatcat:fcipfmr2fjelhldj7fxwptavti

Distributed execution of functional programs using serial combinators

Paul Hudak, Benjamin Goldberg
1985 IEEE transactions on computers  
A general strategy for automatically decomposing and dynamically distributing a functional program is discussed, suitable for parallel execution on multiprocessor architectures with no shared memory.  ...  One of the more troublesome issues in such a system is choosing the right granularity for the parallel tasks.  ...  ACKNOWLEDGMENT The authors gratefully acknowledge the support of the Bur roughs Austin Research Center (in particular C. Pixley and L.  ... 
doi:10.1109/tc.1985.6312191 fatcat:nrphqk5o2fesrhfivb7qfrtzgq

LIFT: A functional data-parallel IR for high-performance GPU code generation

Michel Steuwer, Toomas Remmelg, Christophe Dubach
2017 2017 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)  
Fixed strategies are used to optimize and map parallelism exploiting properties of a particular GPU generation leading to performance portability issues.  ...  However, compiling high-level programs into efficient lowlevel parallel code is challenging.  ...  Figure 6 . 6 Simplification process of automatically generated array indices.  ... 
doi:10.1109/cgo.2017.7863730 fatcat:hzy2zqwhvndznb6424rji53y2m

Automatic autoprojection of higher order recursive equations [chapter]

Anders Bondorf
1990 Lecture Notes in Computer Science  
Specializing the partial evaluator with static input being (the text of) the partial evaluator itself even yields a compiler generator (antomatic compiler generator generation!).  ...  One important application of autoprojection is semantics directed compiler generation: given a denc~ tational, interpretive specification of a programming language, it is possible automatically to generate  ...  Acknowledgements This work has been carried out within the Similix project, a joint work of Olivier Danvy and the author. I am most grateful to Olivier for his many comments and proposals.  ... 
doi:10.1007/3-540-52592-0_56 fatcat:xpawd7jw4jfshgcncmom3eao5m

HiFrames: High Performance Data Frames in a Scripting Language [article]

Ehsan Totoni, Wajih Ul Hassan, Todd A. Anderson, Tatiana Shpeisman
2017 arXiv   pre-print
HiFrames then automatically parallelizes and compiles relational operations along with other array computations in end-to-end data analytics programs, and generates efficient MPI/C++ code.  ...  Data frames in scripting languages are essential abstractions for processing structured data.  ...  HiFrames provides a set of scripting language extensions for structured data processing and a corresponding framework that can automatically parallelize and compile data analytics programs for distributed  ... 
arXiv:1704.02341v1 fatcat:so22chmjfncs5dtg3mgisiahwy

Abstract machines for programming language implementation

Stephan Diehl, Pieter Hartel, Peter Sestoft
2000 Future generations computer systems  
Abstract machines provide an intermediate language stage for compilation. They bridge the gap between the high level of a programming language and the low level of a real machine.  ...  The instructions of an abstract machine are tailored to the particular operations required to implement operations of a specific source language or class of source languages.  ...  evaluation) of the pure lambda calculus [39] .  ... 
doi:10.1016/s0167-739x(99)00088-6 fatcat:qx6mlakihzecvlaiorgzuwdzxi


Alexander Collins, Dominik Grewe, Vinod Grover, Sean Lee, Adriana Susnea
2014 Proceedings of ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming - ARRAY'14  
This makes them uniquely suited for generation of efficient target code for parallel systems, such as multiple Central Processing Units (CPUs) or highly data-parallel Graphics Processing Units (GPUs).  ...  It generates code for a variety of target platforms that achieve performance comparable to competing languages and tools, including hand-optimized code.  ...  To avoid these problems, the NOVA compiler can automatically flatten the vectors [15] .  ... 
doi:10.1145/2627373.2627375 dblp:conf/pldi/CollinsGGLS14 fatcat:iqj5o4nemfgiriadrp7fw3jliq

Design, analysis and Reasoning about Tools: Abstracts from the Second Workshop (Aalborg, 1992, 20-21 August)

Flemming Nielson
1992 DAIMI Report Series  
This report contains a brief overview of DART as well as abstracts of the 20 talks given at the workshop and a status report of DART as of summer 1992.  ...  The primary aim of the workshop was to increase the awareness of DART participants for each other's work, and to stimulate cooperation between the various groups.  ...  Partial Evaluation. A method for automatic program generation with applications to, among others, compiling and compiler generation from a formal definition of a programming language.  ... 
doi:10.7146/dpb.v21i417.6730 fatcat:pwvpx7dapfffhpzvtcy7nkl7sq

Clad — Automatic Differentiation Using Clang and LLVM

V Vassilev, M Vassilev, A Penev, L Moneta, V Ilieva
2015 Journal of Physics, Conference Series  
We will demonstrate a simple proof-of-concept prototype, called Clad, which is able to generate n-th order derivatives of C++ functions and other language constructs.  ...  Automatic differentiation (AD) avoids well-known limitations in round-offs and speed, which symbolic and numerical differentiation suffer from, by transforming the source code of functions.  ...  Acknowledgments The work was partially facilitated by Google Summer of Code Program 2013 and 2014, through CERN-SFT mentoring organization.  ... 
doi:10.1088/1742-6596/608/1/012055 fatcat:buqzbmhbnbg7nh3ihz7cvuclaq

4.-8. März 2019

Maximilian Schüle, Frédéric Simonis, Thomas Heyenbrock, Alfons Kemper, Stephan Günnemann, Thomas Neumann
2019 Datenbanksysteme für Business, Technologie und Web  
We argue that database systems when extended to enable automatic differentiation, gradient descent, and tensor algebra are capable of solving machine learning tasks more efficiently by eliminating the  ...  of data.  ...  Related Work This section describes current state-of-the-art machine learning tools, which will provide a baseline in the later evaluation, as well as similar automatic differentiation and parallel gradient  ... 
doi:10.18420/btw2019-16 dblp:conf/btw/SchuleSHKG019 fatcat:w6c3u335znctpdhgsiunenxkre

Using Hindley-Milner type inference to optimise list representation

Cordelia V. Hall
1994 Proceedings of the 1994 ACM conference on LISP and functional programming - LFP '94  
The generality and simplicity of their structure makes them expensive.  ...  Hindley-Milner type inference and partial evaluation are all that is needed to optimise this structure, yielding considerable improvements in space and time consumption for some interesting programs.  ...  Acknowledgements John Launchbury contributed much to the presentation of the basic ideas, and made other useful comments, as did the conference referees. Dennis Howe, John T.  ... 
doi:10.1145/182409.156781 dblp:conf/lfp/Hall94 fatcat:c5q5kym5gjevbdmzidkqchvncu
« Previous Showing results 1 — 15 out of 3,112 results