The proceedings contains 31 papers from the acmsigplan '97 conference on programminglanguagedesign and implementation. Topics discussed include: efficient treatment of language constructs;program compilation;ru...
详细信息
The proceedings contains 31 papers from the acmsigplan '97 conference on programminglanguagedesign and implementation. Topics discussed include: efficient treatment of language constructs;program compilation;runtime issues;large-scale optimizations;scheduling;partial evaluation and verification of programs;program analysis;register allocation;parallelism;and mobile computing.
This conference proceedings contains 31 papers. These papers emphasize experimental results and practical experience in the design, development, implementation and use of programminglanguages. The main subjects are e...
详细信息
This conference proceedings contains 31 papers. These papers emphasize experimental results and practical experience in the design, development, implementation and use of programminglanguages. The main subjects are evaluation of high level specifications, program analysis techniques, program dependence, data access, compilation for a parallel machine, high order attribute grammar, incremental generation of parsers, code generation language, optimizing compilers, register allocation problems, experiences creating a portable cedar, and unified management of registers and cache using liveness and cache bypass.
The proceedings contain 55 papers. The topics discussed include: commutative set: a language extension for implicit parallel programming;the Tao of parallelism in algorithms;data representation synthesis;synthesizing ...
详细信息
ISBN:
(纸本)9781450306638
The proceedings contain 55 papers. The topics discussed include: commutative set: a language extension for implicit parallel programming;the Tao of parallelism in algorithms;data representation synthesis;synthesizing geometry constructions;synthesis of loop-free programs;generalized just-in-time trace compilation using a parallel task farm in a dynamic binary translator;brainy: effective selection of data structures;an SSA-based algorithm for optimal speculative code motion under an execution profile;caisson: a hardware description language for secure information flow;steno: automatic optimization of declarative queries;languages as libraries;automatic CPU-GPU communication management and optimization;automatic compilation of MATLAB programs for synergistic execution on heterogeneous processors;partial-coherence abstractions for relaxed memory models;and probabilistic, modular and scalable inference of typestate specifications.
The proceedings contain 36 papers. The topics discussed include: optimizing memory transactions;compiler and runtime support for efficient software transactional memory;better extensibility through modular syntax;fast...
详细信息
ISBN:
(纸本)1595933743
The proceedings contain 36 papers. The topics discussed include: optimizing memory transactions;compiler and runtime support for efficient software transactional memory;better extensibility through modular syntax;fast and flexible instruction selection with on-demand tree-parsing automata;a framework for unrestricted whole-program optimization;practical dynamic software updating for C;an experimental analysis of self-adjusting computation;shared memory programming for large scale machines;optimizing data permutations for SIMD devices;auto-vectorization of interleaved data for SIMD;pruning dynamic slices with confidence;context-sensitive domain-independent algorithm composition and selection;reducing NoC energy consumption through compiler-directed channel voltage scaling;a global progressive register allocator;and automatic instruction scheduler retargeting by reverse-engineering.
Application-level energy management is an important dimension of energy optimization. In this paper, we introduce ENT, a novel programminglanguage for enabling proactive and adaptive mode-based energy management at t...
详细信息
ISBN:
(纸本)9781450349888
Application-level energy management is an important dimension of energy optimization. In this paper, we introduce ENT, a novel programminglanguage for enabling proactive and adaptive mode-based energy management at the application level. The proactive design allows programmers to apply their application knowledge to energy management, by characterizing the energy behavior of different program fragments with modes. The adaptive design allows such characterization to be delayed until run time, useful for capturing dynamic program behavior dependent on program states, configuration settings, external battery levels, or CPU temperatures. The key insight is both proactiveness and adaptiveness can be unified under a type system combined with static typing and dynamic typing. ENT has been implemented as an extension to Java, and successfully ported to three energy-conscious platforms: an Intel-based laptop, a Raspberry Pi, and an Android phone. Evaluation shows ENT improves the programmability, debuggability, and energy efficiency of battery-aware and temperature-aware programs.
Recent work on alias analysis in the presence of pointers has concentrated on context-sensitive interprocedural analyses, which treat multiple calls to a single procedure independently rather than constructing a singl...
详细信息
ISBN:
(纸本)9780897916974
Recent work on alias analysis in the presence of pointers has concentrated on context-sensitive interprocedural analyses, which treat multiple calls to a single procedure independently rather than constructing a single approximation to a procedure's effect on all of its callers. While context-sensitive modeling offers the potential for greater precision by considering only realizable call-return paths, its empirical benefits have yet to be measured. This paper compares the precision of a simple, efficient, context-insensitive points-to analysis for the C programminglanguage with that of a maximally context-sensitive version of the same analysis. We demonstrate that, for a number of pointer-intensive benchmark programs, context-insensitivity exerts little to no precision penalty. We also describe techniques for using the output of context-insensitive analysis to improve the efficiency of context-sensitive analysis without affecting precision.
Futhark is a purely functional data-parallel array language that offers a machine-neutral programming model and an optimising compiler that generates OpenCL code for GPUs. This paper presents the design and implementa...
详细信息
ISBN:
(纸本)9781450349888
Futhark is a purely functional data-parallel array language that offers a machine-neutral programming model and an optimising compiler that generates OpenCL code for GPUs. This paper presents the design and implementation of three key features of Futhark that seek a suitable middle ground with imperative approaches. First, in order to express efficient code inside the parallel constructs, we introduce a simple type system for in-place updates that ensures referential transparency and supports equational reasoning. Second, we furnish Futhark with parallel operators capable of expressing efficient strength-reduced code, along with their fusion rules. Third, we present a flattening transformation aimed at enhancing the degree of parallelism that (i) builds on loop interchange and distribution but uses higher-order reasoning rather than array-dependence analysis, and (ii) still allows further locality-of-reference optimisations. Finally, an evaluation on 16 benchmarks demonstrates the impact of the language and compiler features and shows application-level performance competitive with hand-written GPU code.
This paper presents the design and implementation of a compiler algorithm that effectively optimizes programs for energy usage using dynamic voltage scaling (DVS). The algorithm identifies program regions where the CP...
详细信息
This paper presents the design and implementation of a compiler algorithm that effectively optimizes programs for energy usage using dynamic voltage scaling (DVS). The algorithm identifies program regions where the CPU can be slowed down with negligible performance loss. It is implemented as a source-to-source level transformation using the SUIF2 compiler infrastructure. Physical measurements on a high-performance laptop show that total system (i.e., laptop) energy savings of up to 28% can be achieved with performance degradation of less than 5% for the SPECfp95 benchmarks. On average, the system energy and energy-delay product are reduced by 11% and 9%, respectively, with a performance slowdown of 2%. It was also discovered that the energy usage of the programs using our DVS algorithm is within 6% from the theoretical lower bound. To the best of our knowledge, this is one of the first work that evaluates DVS algorithms by physical measurements.
We present a new static analysis for race freedom and race detection. The analysis checks race freedom by reducing the problem to (rational) linear programming. Unlike conventional static analyses for race freedom or ...
详细信息
ISBN:
(纸本)9781595938602
We present a new static analysis for race freedom and race detection. The analysis checks race freedom by reducing the problem to (rational) linear programming. Unlike conventional static analyses for race freedom or race detection, our analysis avoids explicit computation of locksets and lock linearity/must-aliasness. Our analysis can handle a variety of synchronization idioms that more conventional approaches often have difficulties with, such as thread joining, semaphores, and signals. We achieve efficiency by utilizing modem linear programming solvers that can quickly solve large linear programming instances. This paper reports on the formal properties of the analysis and the experience with applying an implementation to real world C programs.
暂无评论