simdkalman provides Kalman filters vectorized as Single Instruction, Multiple Data, enabling efficient processing of multiple independent time series simultaneously. It is designed for performance when dealing with large numbers of parallel Kalman filter estimations. The library is actively maintained and currently at version 1.0.4, with a stable release cadence focused on performance and bug fixes.
pip install simdkalmanVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to create a `KalmanFilter` instance and use it to smooth a batch of time series data. It generates synthetic 1D random walk data for multiple series, then applies a simple Kalman filter model. Crucially, input observations are reshaped to the expected `(n_series, n_timesteps, n_features)` format.
Update to simdkalman version 1.0.2 or newer to ensure correct handling of vectorized observation models. Review code that uses varying H-matrices.
Upgrade to simdkalman 1.0.4 or higher to benefit from memory usage reductions. If using older versions and encountering OOM errors, consider processing data in smaller batches if feasible.
Ensure you are leveraging the library's vectorized capabilities by passing data for multiple series. For single series or very small datasets, consider if a different library or approach might be more suitable.