6 research outputs found
Efficient Evaluation of Large Polynomials
In scientific computing, it is often required to evaluate a polynomial expression (or a matrix depending on some variables) at many points which are not known in advance or with coordinates containing “symbolic expressions”. In these circumstances, standard evaluation schemes, such as those based on Fast Fourier Transforms do not apply. Given a polynomial f expressed as the sum of its terms, we propose an algorithm which generates a representation of f optimizing the process of evaluating f at some points. In addition, this evaluation of f can be done efficiently in terms of data locality and parallelism. We have implemented our algorithm in the Cilk++ concurrency platform and our implementation achieves nearly linear speedup on 16 cores with large enough input. For some large polynomials, the generated schedule can be evaluated at least 10 times faster than the schedules produced by other available software solutions. Moreover, our code can handle much larger input polynomials
Parallel Computation of the Minimal Elements of a Poset
Computing the minimal elements of a partially ordered finite set (poset) is a fundamental problem in combinatorics with numerous applications such as polynomial expression optimization, transversal hypergraph generation and redundant component removal, to name a few. We propose a divide-and-conquer algorithm which is not only cache-oblivious but also can be parallelized free of determinacy races. We have implemented it in Cilk++ targeting multicores. For our test problems of sufficiently large input size our code demonstrates a linear speedup on 32 cores.National Science Foundation (U.S.). (Grant number CNS-0615215)National Science Foundation (U.S.). (Grant number CCF- 0621511
Reduced Order and Surrogate Models for Gravitational Waves
We present an introduction to some of the state of the art in reduced order
and surrogate modeling in gravitational wave (GW) science. Approaches that we
cover include Principal Component Analysis, Proper Orthogonal Decomposition,
the Reduced Basis approach, the Empirical Interpolation Method, Reduced Order
Quadratures, and Compressed Likelihood evaluations. We divide the review into
three parts: representation/compression of known data, predictive models, and
data analysis. The targeted audience is that one of practitioners in GW
science, a field in which building predictive models and data analysis tools
that are both accurate and fast to evaluate, especially when dealing with large
amounts of data and intensive computations, are necessary yet can be
challenging. As such, practical presentations and, sometimes, heuristic
approaches are here preferred over rigor when the latter is not available. This
review aims to be self-contained, within reasonable page limits, with little
previous knowledge (at the undergraduate level) requirements in mathematics,
scientific computing, and other disciplines. Emphasis is placed on optimality,
as well as the curse of dimensionality and approaches that might have the
promise of beating it. We also review most of the state of the art of GW
surrogates. Some numerical algorithms, conditioning details, scalability,
parallelization and other practical points are discussed. The approaches
presented are to large extent non-intrusive and data-driven and can therefore
be applicable to other disciplines. We close with open challenges in high
dimension surrogates, which are not unique to GW science.Comment: Invited article for Living Reviews in Relativity. 93 page
Efficient evaluation of large polynomials
Minimizing the evaluation cost of a polynomial expression is a fundamental problem in computer science. We propose tools that, for a polynomial P given as the sum of its terms, compute a representation that permits a more efficient evaluation. Our algorithm runs in d(nt) O(1) bit operations plus dt O(1) operations in the base field where d, n and t are the total degree, number of variables and number of terms of P. Our experimental results show that our approach can handle much larger polynomials than other available software solutions. Moreover, our computed representation reduce the evaluation cost of P substantially. Keywords: Multivariate polynomial evaluation, code optimization, Cilk++.