compilation techniques
Recently Published Documents


TOTAL DOCUMENTS

137
(FIVE YEARS 14)

H-INDEX

15
(FIVE YEARS 0)

2021 ◽  
Vol 5 (OOPSLA) ◽  
pp. 1-26
Author(s):  
Arjun Pitchanathan ◽  
Christian Ulmann ◽  
Michel Weber ◽  
Torsten Hoefler ◽  
Tobias Grosser

Presburger arithmetic provides the mathematical core for the polyhedral compilation techniques that drive analytical cache models, loop optimization for ML and HPC, formal verification, and even hardware design. Polyhedral compilation is widely regarded as being slow due to the potentially high computational cost of the underlying Presburger libraries. Researchers typically use these libraries as powerful black-box tools, but the perceived internal complexity of these libraries, caused by the use of C as the implementation language and a focus on end-user-facing documentation, holds back broader performance-optimization efforts. With FPL, we introduce a new library for Presburger arithmetic built from the ground up in modern C++. We carefully document its internal algorithmic foundations, use lightweight C++ data structures to minimize memory management costs, and deploy transprecision computing across the entire library to effectively exploit machine integers and vector instructions. On a newly-developed comprehensive benchmark suite for Presburger arithmetic, we show a 5.4x speedup in total runtime over the state-of-the-art library isl in its default configuration and 3.6x over a variant of isl optimized with element-wise transprecision computing. We expect that the availability of a well-documented and fast Presburger library will accelerate the adoption of polyhedral compilation techniques in production compilers.


2021 ◽  
Vol 5 (ICFP) ◽  
pp. 1-30
Author(s):  
Ningning Xie ◽  
Daan Leijen

This paper studies compilation techniques for algebraic effect handlers. In particular, we present a sequence of refinements of algebraic effects, going via multi-prompt delimited control, _generalized evidence passing_, yield bubbling, and finally a monadic translation into plain lambda calculus which can be compiled efficiently to many target platforms. Along the way we explore various interesting points in the design space. We provide two implementations of our techniques, one as a library in Haskell, and one as a C backend for the Koka programming language. We show that our techniques are effective, by comparing against three other best-in-class implementations of effect handlers: multi-core OCaml, the _Ev.Eff_ Haskell library, and the libhandler C library. We hope this work can serve as a basis for future designs and implementations of algebraic effects.


Electronics ◽  
2021 ◽  
Vol 10 (15) ◽  
pp. 1835
Author(s):  
Yohan Ko ◽  
Soohwan Kim ◽  
Hyunchoong Kim ◽  
Kyoungwoo Lee

Very Long Instruction Word, or VLIW, architectures have received much attention in specific-purpose applications such as scientific computation, digital signal processing, and even safety-critical systems. Several compilation techniques for VLIW architectures have been proposed in order to improve the performance, but there is a lack of research to improve reliability against soft errors. Instruction duplication techniques have been proposed by exploiting unused instruction slots (i.e., NOPs) in VLIW architectures. All the instructions cannot be replicated without additional code lines. Additional code lines are required to increase the number of duplicated instructions in VLIW architectures. Our experimental results show that 52% performance overhead as compared to unprotected source code when we duplicate all the instructions. This considerable performance overhead can be inapplicable for resource-constrained embedded systems so that we can limit the number of additional NOP instructions for selective protection. However, the previous static scheme duplicates instructions just in sequential order. In this work, we propose packing-oriented duplication to maximize the number of duplicated instructions within the same peroformance overhead bounds. Our packing-oriented approach can duplicate up to 18% more instructions within the same performance overheads compared to the previous static duplication techniques.


Author(s):  
Peter Marwedel

AbstractEmbedded systems have to be efficient (at least) with respect to the objectives considered in this book. In particular, this applies to resource-constrained mobile systems, including sensor networks embedded in the Internet of Things. In order to achieve this goal, many optimizations have been developed. Only a small subset of those can be mentioned in this book. In this chapter, we will present a selected set of such optimizations. This chapter is structured as follows: first of all, we will present some high-level optimization techniques, which could precede compilation of source code or could be integrated into it. We will then describe concurrency management for tasks. Section 7.3 comprises advanced compilation techniques. The final Sect. 7.4 introduces power and thermal management techniques.


2020 ◽  
Vol 14 (3) ◽  
pp. 445-457
Author(s):  
Jaclyn Smith ◽  
Michael Benedikt ◽  
Milos Nikolic ◽  
Amir Shaikhha

While large-scale distributed data processing platforms have become an attractive target for query processing, these systems are problematic for applications that deal with nested collections. Programmers are forced either to perform non-trivial translations of collection programs or to employ automated flattening procedures, both of which lead to performance problems. These challenges only worsen for nested collections with skewed cardinalities, where both handcrafted rewriting and automated flattening are unable to enforce load balancing across partitions. In this work, we propose a framework that translates a program manipulating nested collections into a set of semantically equivalent shredded queries that can be efficiently evaluated. The framework employs a combination of query compilation techniques, an efficient data representation for nested collections, and automated skew-handling. We provide an extensive experimental evaluation, demonstrating significant improvements provided by the framework in diverse scenarios for nested collection programs.


2020 ◽  
Vol 10 (1) ◽  
pp. 38
Author(s):  
Hai Wang ◽  
Daiming Huang

In the first half of the 19th century, the Christian churches of Britain and America successively sent missionaries to the southeast Asia. American Baptist missionaries William Dean and Josiah Goddard, who preached in Bangkok, published First Lessons in the Tiechiw Dialect 1841 and A Chinese and English Vocabulary in the Tiechiu Dialect in 1847. They started the activities of missionaries and foreigners in China to compile dictionaries of Tiechiw-Swatow dialects. After the second Opium War, missionaries went deep into the hinterland of China, and the activities of compiling dictionaries of Chinese dialects became more active. The compilation techniques such as content design, Roman pronunciation scheme and tone annotation, and Chinese-English comparison, became more perfect. From the 1870s to 1911, foreign missionaries in Tiechiw-Swatow area compiled and published nine dictionaries. The purpose of this paper is to sort out the compilation process of Tiechiw-Swatow dialect dictionaries in the late Qing dynasty and the recognition of the regularity of compilation techniques, so as to provide reference for the study of compilation techniques of Tiechiw-Swatow dialect dictionaries and the dissemination of Tiechiw-Swatow regional culture in the English world.


Sign in / Sign up

Export Citation Format

Share Document