Skip to content
Book Open access

VILIB++: High Performance C++ Library for Auto-Vectorizing Interval Arithmetic

Sep 2026 · Proceedings of the International Conference on Parallel Processing · 0 citations · 21 references

Abstract

Interval arithmetic provides guaranteed error bounds for finite-precision numerical computations, but obtaining these error bounds is much slower than the original computation. Even on highly memory bound workloads like small 1D stencils, the existing approaches fail to hide the overhead of changing from scalar to interval arithmetic. This paper presents VILIB++, a high performance interval arithmetic library designed to map efficiently onto SIMD hardware. We design a branchless rounding kernel that replaces global rounding-mode changes with a correction scheme. This design enables auto-vectorization by standard compilers without requiring manual SIMD intrinsics. Consequently, VILIB++ preserves vectorized execution when used as a drop-in replacement for vectorized scalar codes. We further introduce a benchmark suite targeting both compute and memory-bound scenarios to evaluate interval arithmetic libraries under realistic workload conditions. Experiments show that VILIB++ achieves substantially higher throughput and effectively hides the overhead of switching from scalar to interval arithmetic for different memory bound workload. This performance is obtained at the cost of moderately increased interval widths, reflecting a practical trade-off between bound tightness and parallel efficiency.

Read PDF

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.