VectorWave
High-performance wavelet transform library for Java 25+ featuring MODWT (Maximal Overlap Discrete Wavelet Transform) as the primary transform. Offers shift-invariance, arbitrary signal length support, and comprehensive wavelet families for signal processing, scientific computing, and real-time applications.
Learn more: VectorWave product overview • Performance benchmarks
Key Features
Core Capabilities
- MODWT: Shift-invariant transform for ANY signal length
- SWT Adapter: Stationary Wavelet Transform interface with mutable coefficients
- Wavelet Families: Haar, Daubechies, Symlets, Coiflets, Biorthogonal, Financial wavelets
- CWT (Experimental): FFT-accelerated continuous transforms with complex analysis
- Financial Analysis: Specialized wavelets and configurable parameters
- Streaming: Real-time processing with arbitrary block sizes
- Zero Dependencies: Pure Java implementation
Performance (with Extensions)
- SIMD Acceleration: Platform-adaptive Vector API (x86: AVX2/AVX512, ARM: NEON)
- 2-4x speedup on MODWT transforms
- 3-5x speedup on batch processing
- Automatic fallback to optimized scalar code
- Structured Concurrency: Automatic resource management with guaranteed cleanup
- Adaptive Thresholding: Machine learning optimization of parallel execution
- FFT Optimization: Real-to-complex FFT with 2x speedup for real signals
Project Structure
VectorWave is organized as a modular Maven project:
- vectorwave-fft: Standalone FFT utilities (CoreFFT), used by core
- vectorwave-core: Core wavelet transforms, algorithms, and base functionality (Java 25)
- vectorwave-extensions: SIMD optimizations, performance enhancements, and platform-specific code (Java 25 + preview)
- vectorwave-examples: Demos and usage examples (no JMH)
- vectorwave-benchmarks: Non-modular JMH benchmarks (classpath)
Requirements
- Java 25+ for core module; Java 25 for extensions (GraalVM recommended)
- Maven 3.6+
- Core: no preview flags required
- Extensions/examples: compile/run with
--add-modules jdk.incubator.vector --enable-preview
Performance Highlights
| Operation | Signal Size | Time (Core) | Time (Extensions) | Speedup |
|---|---|---|---|---|
| MODWT Forward | 16K samples | 1.62ms | 0.47ms | 3.5x |
| MODWT Round-trip | 16K samples | 2.84ms | 0.76ms | 3.7x |
| Batch (16 signals) | 4K each | 5.73ms | 0.98ms | 5.8x |
| 5-Level Decomposition | 16K samples | 8.12ms | 2.32ms | 3.5x |
| Denoising | 16K samples | 14.26ms | 3.68ms | 3.9x |
| CWT (Parallel, Ricker) | 16K samples | 56.3ms | 5.9ms | 9.6x |
See Also
- Quick Start Guide - Get up and running in minutes
- Wavelet Selection Guide - Choose the right wavelet for your use case
- API Reference - Complete API documentation
- Performance Benchmarks - Detailed performance data
- IronWave (Rust) - Our Rust wavelet library for ultra-low-latency applications
License
VectorWave is proprietary software. Contact MorphIQ Labs for licensing information.