15,323 research outputs found
AutoAccel: Automated Accelerator Generation and Optimization with Composable, Parallel and Pipeline Architecture
CPU-FPGA heterogeneous architectures are attracting ever-increasing attention
in an attempt to advance computational capabilities and energy efficiency in
today's datacenters. These architectures provide programmers with the ability
to reprogram the FPGAs for flexible acceleration of many workloads.
Nonetheless, this advantage is often overshadowed by the poor programmability
of FPGAs whose programming is conventionally a RTL design practice. Although
recent advances in high-level synthesis (HLS) significantly improve the FPGA
programmability, it still leaves programmers facing the challenge of
identifying the optimal design configuration in a tremendous design space.
This paper aims to address this challenge and pave the path from software
programs towards high-quality FPGA accelerators. Specifically, we first propose
the composable, parallel and pipeline (CPP) microarchitecture as a template of
accelerator designs. Such a well-defined template is able to support efficient
accelerator designs for a broad class of computation kernels, and more
importantly, drastically reduce the design space. Also, we introduce an
analytical model to capture the performance and resource trade-offs among
different design configurations of the CPP microarchitecture, which lays the
foundation for fast design space exploration. On top of the CPP
microarchitecture and its analytical model, we develop the AutoAccel framework
to make the entire accelerator generation automated. AutoAccel accepts a
software program as an input and performs a series of code transformations
based on the result of the analytical-model-based design space exploration to
construct the desired CPP microarchitecture. Our experiments show that the
AutoAccel-generated accelerators outperform their corresponding software
implementations by an average of 72x for a broad class of computation kernels
Relative fixed-width stopping rules for Markov chain Monte Carlo simulations
Markov chain Monte Carlo (MCMC) simulations are commonly employed for
estimating features of a target distribution, particularly for Bayesian
inference. A fundamental challenge is determining when these simulations should
stop. We consider a sequential stopping rule that terminates the simulation
when the width of a confidence interval is sufficiently small relative to the
size of the target parameter. Specifically, we propose relative magnitude and
relative standard deviation stopping rules in the context of MCMC. In each
setting, we develop sufficient conditions for asymptotic validity, that is
conditions to ensure the simulation will terminate with probability one and the
resulting confidence intervals will have the proper coverage probability. Our
results are applicable in a wide variety of MCMC estimation settings, such as
expectation, quantile, or simultaneous multivariate estimation. Finally, we
investigate the finite sample properties through a variety of examples and
provide some recommendations to practitioners.Comment: 24 page
Recommended from our members
On the use of testability measures for dependability assessment
Program “testability” is informally, the probability that a program will fail under test if it contains at least one fault. When a dependability assessment has to be derived from the observation of a series of failure free test executions (a common need for software subject to “ultra high reliability” requirements), measures of testability can-in theory-be used to draw inferences on program correctness. We rigorously investigate the concept of testability and its use in dependability assessment, criticizing, and improving on, previously published results. We give a general descriptive model of program execution and testing, on which the different measures of interest can be defined. We propose a more precise definition of program testability than that given by other authors, and discuss how to increase testing effectiveness without impairing program reliability in operation. We then study the mathematics of using testability to estimate, from test results: the probability of program correctness and the probability of failures. To derive the probability of program correctness, we use a Bayesian inference procedure and argue that this is more useful than deriving a classical “confidence level”. We also show that a high testability is not an unconditionally desirable property for a program. In particular, for programs complex enough that they are unlikely to be completely fault free, increasing testability may produce a program which will be less trustworthy, even after successful testin
Evaluating Value-at-Risk Models via Quantile Regressions
We propose an alternative backtest to evaluate the performance of Value-at-Risk (VaR) models. The presented methodology allows us to directly test the performance of many competing VaR models, as well as identify periods of an increased risk exposure based on a quantile regression model (Koenker & Xiao, 2002). Quantile regressions provide us an appropriate environment to investigate VaR models, since they can naturally be viewed as a conditional quantile function of a given return series. A Monte Carlo simulation is presented, revealing that our proposed test might exhibit more power in comparison to other backtests presented in the literature. Finally, an empirical exercise is conducted for daily S&P500 return series in order to explore the practical relevance of our methodology by evaluating five competing VaRs through four different backtests.
- …