pith. sign in

arxiv: 1907.03329 · v1 · pith:XW5EA5JWnew · submitted 2019-07-07 · 💻 cs.LG · stat.ML

Fast ES-RNN: A GPU Implementation of the ES-RNN Algorithm

Pith reviewed 2026-05-25 01:18 UTC · model grok-4.3

classification 💻 cs.LG stat.ML
keywords time series forecastingES-RNNGPU accelerationM4 competitionhybrid modelsvectorizationspeedup
0
0 comments X

The pith

Vectorizing and porting ES-RNN to GPU yields up to 322 times faster training while producing results comparable to the original CPU version.

A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.

The paper addresses the slow training of ES-RNN, a hybrid of classical state-space models and recurrent networks that improved accuracy by 9.4 percent in the M4 competition. The original code fits separate parameters for each time series on a CPU, limiting scale. The authors rewrite the algorithm to vectorize operations and execute them in parallel on a GPU. This change produces speedups that reach 322 times at certain batch sizes. Accuracy stays close to the reported original results, making the model usable on larger collections of series.

Core claim

By vectorizing the original implementation and porting the algorithm to a GPU, we achieve up to 322x training speedup depending on batch size with similar results as those reported in the original submission.

What carries the argument

The vectorized GPU port of the per-series ES-RNN model, which replaces sequential CPU loops with parallel tensor operations across multiple time series.

If this is right

  • Larger collections of time series become trainable in reasonable wall-clock time.
  • The model can be applied to problems where the original CPU version was previously too slow.
  • Batch-size choices now directly control the achievable speedup factor.
  • The public GPU code allows others to reproduce the reported speedups without reimplementing the vectorization.

Where Pith is reading between the lines

These are editorial extensions of the paper, not claims the author makes directly.

  • Similar vectorization steps could accelerate other forecasting hybrids that maintain separate parameters per series.
  • The approach opens the door to online or streaming forecasting setups that retrain frequently on fresh data.
  • Further gains might appear from combining the GPU kernel with multi-GPU distribution for very large datasets.

Load-bearing premise

The rewritten GPU code produces results that are mathematically equivalent to the original per-series CPU implementation for every batch size and data regime.

What would settle it

Run the original CPU code and the new GPU code on the exact same input sequences and compare the final parameter values and loss trajectories for any divergence beyond ordinary floating-point rounding.

read the original abstract

Due to their prevalence, time series forecasting is crucial in multiple domains. We seek to make state-of-the-art forecasting fast, accessible, and generalizable. ES-RNN is a hybrid between classical state space forecasting models and modern RNNs that achieved a 9.4% sMAPE improvement in the M4 competition. Crucially, ES-RNN implementation requires per-time series parameters. By vectorizing the original implementation and porting the algorithm to a GPU, we achieve up to 322x training speedup depending on batch size with similar results as those reported in the original submission. Our code can be found at: https://github.com/damitkwr/ESRNN-GPU

Editorial analysis

A structured set of objections, weighed in public.

Desk editor's note, referee report, simulated authors' rebuttal, and a circularity audit. Tearing a paper down is the easy half of reading it; the pith above is the substance, this is the friction.

Referee Report

1 major / 1 minor

Summary. The paper presents a vectorized GPU implementation of the ES-RNN hybrid time-series model (exponential smoothing combined with RNNs). It claims that porting the per-series parameter model to GPU yields up to 322x training speedup (batch-size dependent) while producing results similar to the original M4-winning ES-RNN submission, and releases the code at https://github.com/damitkwr/ESRNN-GPU.

Significance. If numerical equivalence to the original CPU implementation holds, the work substantially improves the practicality of a top-performing hybrid forecaster for large-scale applications by reducing wall-clock training time. Public code release supports reproducibility.

major comments (1)
  1. [Abstract] Abstract: the central claim of 'similar results as those reported in the original submission' is unsupported by any quantitative evidence (side-by-side sMAPE, parameter values, or forecast comparisons) across batch sizes. This is load-bearing because GPU parallel reductions and vectorized summation can alter floating-point ordering relative to the original per-series CPU loops.
minor comments (1)
  1. [Abstract] Abstract: the phrase 'depending on batch size' is stated without reference to a table or figure that reports the measured speedups for each batch size.

Simulated Author's Rebuttal

1 responses · 0 unresolved

We thank the referee for highlighting the need for explicit quantitative support for the similarity claim. We agree this is important given potential floating-point ordering differences in GPU reductions and will strengthen the manuscript accordingly.

read point-by-point responses
  1. Referee: [Abstract] Abstract: the central claim of 'similar results as those reported in the original submission' is unsupported by any quantitative evidence (side-by-side sMAPE, parameter values, or forecast comparisons) across batch sizes. This is load-bearing because GPU parallel reductions and vectorized summation can alter floating-point ordering relative to the original per-series CPU loops.

    Authors: We accept the point. The current abstract states the similarity claim without supporting numbers. In the revised manuscript we will (1) add a compact table (or inline values) reporting sMAPE on the M4 dataset for the original CPU implementation versus our GPU version at the batch sizes used for the 322× speedup measurements, and (2) note the maximum absolute deviation observed in per-series parameters and final forecasts. Our existing experiments already show sMAPE differences below 0.1 percentage points; we will make these numbers explicit so readers can judge numerical equivalence directly. We will also add a short paragraph discussing the floating-point summation order and confirming that the observed deviations do not affect the ranking or practical utility of the forecasts. revision: yes

Circularity Check

0 steps flagged

No circularity: empirical implementation report with no derivations or fitted predictions

full rationale

The manuscript is an engineering paper describing vectorization and GPU porting of the existing ES-RNN algorithm. Its claims consist of measured wall-clock speedups (up to 322x) and empirical observation of 'similar results' on accuracy metrics. No mathematical derivations, first-principles predictions, parameter fitting, or uniqueness theorems are presented that could reduce to the inputs by construction. The cited 9.4% sMAPE improvement is attributed to the original ES-RNN work (different authors), and no self-citation load-bearing steps appear. The central results are directly falsifiable performance measurements rather than tautological re-statements of fitted quantities or ansatzes.

Axiom & Free-Parameter Ledger

0 free parameters · 1 axioms · 0 invented entities

The paper rests on the assumption that the original ES-RNN algorithm is correctly implemented in the new vectorized form and that GPU parallelization does not alter numerical outcomes in ways that affect accuracy.

axioms (1)
  • domain assumption The original ES-RNN per-series parameter updates can be safely batched and executed in parallel without changing the learned parameters or forecasts.
    Invoked when claiming 'similar results' after vectorization.

pith-pipeline@v0.9.0 · 5644 in / 1087 out tokens · 18424 ms · 2026-05-25T01:18:21.676187+00:00 · methodology

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.