1,340 research outputs found
Domain Specific Memory Management for Large Scale Data Analytics
Hardware trends over the last several decades have lead to shifting priorities
with respect to performance bottlenecks in the implementations of dataflows
typically present in large-scale data analytics applications. In particular,
efficient use of main memory has emerged as a critical aspect of dataflow
implementation, due to the proliferation of multi-core architectures, as well as
the rapid development of faster-than-disk storage media. At the same time, the
wealth of static domain-specific information about applications remains an
untapped resource when it comes to optimizing the use of memory in a dataflow
application.
We propose a compilation-based approach to the synthesis of memory-efficient
dataflow implementations, using static analysis to extract and leverage
domain-specific information about the application. Our program transformations
use the combined results of type, effect, and provenance analyses to infer time-
and space- effective placement of primitive memory operations, precluding the
need for dynamic memory management and its attendant costs. The experimental
evaluation of implementations synthesized with our framework shows both the
importance of optimizing for memory performance, as well as significant benefits
of our approach, along multiple dimensions.
Finally, we also demonstrate a framework for formally verifying the soundness of
these transformations, laying the foundation for their use as a component of a
more general implementation synthesis ecosystem
Fundamental Approaches to Software Engineering
This open access book constitutes the proceedings of the 25th International Conference on Fundamental Approaches to Software Engineering, FASE 2022, which was held during April 4-5, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 17 regular papers presented in this volume were carefully reviewed and selected from 64 submissions. The proceedings also contain 3 contributions from the Test-Comp Competition. The papers deal with the foundations on which software engineering is built, including topics like software engineering as an engineering discipline, requirements engineering, software architectures, software quality, model-driven development, software processes, software evolution, AI-based software engineering, and the specification, design, and implementation of particular classes of systems, such as (self-)adaptive, collaborative, AI, embedded, distributed, mobile, pervasive, cyber-physical, or service-oriented applications
Recurrent Relational Networks
This paper is concerned with learning to solve tasks that require a chain of
interdependent steps of relational inference, like answering complex questions
about the relationships between objects, or solving puzzles where the smaller
elements of a solution mutually constrain each other. We introduce the
recurrent relational network, a general purpose module that operates on a graph
representation of objects. As a generalization of Santoro et al. [2017]'s
relational network, it can augment any neural network model with the capacity
to do many-step relational reasoning. We achieve state of the art results on
the bAbI textual question-answering dataset with the recurrent relational
network, consistently solving 20/20 tasks. As bAbI is not particularly
challenging from a relational reasoning point of view, we introduce
Pretty-CLEVR, a new diagnostic dataset for relational reasoning. In the
Pretty-CLEVR set-up, we can vary the question to control for the number of
relational reasoning steps that are required to obtain the answer. Using
Pretty-CLEVR, we probe the limitations of multi-layer perceptrons, relational
and recurrent relational networks. Finally, we show how recurrent relational
networks can learn to solve Sudoku puzzles from supervised training data, a
challenging task requiring upwards of 64 steps of relational reasoning. We
achieve state-of-the-art results amongst comparable methods by solving 96.6% of
the hardest Sudoku puzzles.Comment: Accepted at NIPS 201
Fundamental Approaches to Software Engineering
This open access book constitutes the proceedings of the 25th International Conference on Fundamental Approaches to Software Engineering, FASE 2022, which was held during April 4-5, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 17 regular papers presented in this volume were carefully reviewed and selected from 64 submissions. The proceedings also contain 3 contributions from the Test-Comp Competition. The papers deal with the foundations on which software engineering is built, including topics like software engineering as an engineering discipline, requirements engineering, software architectures, software quality, model-driven development, software processes, software evolution, AI-based software engineering, and the specification, design, and implementation of particular classes of systems, such as (self-)adaptive, collaborative, AI, embedded, distributed, mobile, pervasive, cyber-physical, or service-oriented applications
Low Complexity Regularization of Linear Inverse Problems
Inverse problems and regularization theory is a central theme in contemporary
signal processing, where the goal is to reconstruct an unknown signal from
partial indirect, and possibly noisy, measurements of it. A now standard method
for recovering the unknown signal is to solve a convex optimization problem
that enforces some prior knowledge about its structure. This has proved
efficient in many problems routinely encountered in imaging sciences,
statistics and machine learning. This chapter delivers a review of recent
advances in the field where the regularization prior promotes solutions
conforming to some notion of simplicity/low-complexity. These priors encompass
as popular examples sparsity and group sparsity (to capture the compressibility
of natural signals and images), total variation and analysis sparsity (to
promote piecewise regularity), and low-rank (as natural extension of sparsity
to matrix-valued data). Our aim is to provide a unified treatment of all these
regularizations under a single umbrella, namely the theory of partial
smoothness. This framework is very general and accommodates all low-complexity
regularizers just mentioned, as well as many others. Partial smoothness turns
out to be the canonical way to encode low-dimensional models that can be linear
spaces or more general smooth manifolds. This review is intended to serve as a
one stop shop toward the understanding of the theoretical properties of the
so-regularized solutions. It covers a large spectrum including: (i) recovery
guarantees and stability to noise, both in terms of -stability and
model (manifold) identification; (ii) sensitivity analysis to perturbations of
the parameters involved (in particular the observations), with applications to
unbiased risk estimation ; (iii) convergence properties of the forward-backward
proximal splitting scheme, that is particularly well suited to solve the
corresponding large-scale regularized optimization problem
Programmiersprachen und Rechenkonzepte
Seit 1984 veranstaltet die GI-Fachgruppe "Programmiersprachen und Rechenkonzepte", die aus den ehemaligen Fachgruppen 2.1.3 "Implementierung von Programmiersprachen" und 2.1.4 "Alternative Konzepte für Sprachen und Rechner" hervorgegangen ist, regelmäßig im Frühjahr einen Workshop im Physikzentrum Bad Honnef. Das Treffen dient in erster Linie dem gegenseitigen Kennenlernen, dem Erfahrungsaustausch, der Diskussion und der Vertiefung gegenseitiger Kontakte
- …