whatisgithub

What is persistent-rnn?

pineking/persistent-rnn — explained in plain English

Analysis updated 2026-07-18 · repo last pushed 2016-06-20

C++Audience · developerComplexity · 5/5DormantSetup · hard

In one sentence

A C++/CUDA library that makes small-batch recurrent neural network computation up to 15x faster on specific NVIDIA GPUs by caching weights in GPU registers.

Mindmap

mindmap
  root((repo))
    What it does
      Speeds up RNNs on GPUs
      Caches weights in registers
      Targets small batch sizes
    Tech stack
      C++
      CUDA
      NVIDIA GPUs
    Use cases
      Real-time inference servers
      Robotics sensor processing
      Low-latency sequence models
    Audience
      CUDA developers
      ML systems engineers
    Constraints
      Basic RNNs only
      Limited GPU models

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Speed up a real-time inference server that processes RNN requests one at a time

USE CASE 2

Run sequence models on a robotics system processing live sensor streams with low latency

USE CASE 3

Replace a standard cuDNN RNN call with this library for small-batch, latency-sensitive workloads

USE CASE 4

Benchmark GPU register-caching techniques against standard RNN libraries

What is it built with?

C++CUDAcuDNN-style API

How does it compare?

pineking/persistent-rnnachanana/mavsdkalange/llama.cpp
Stars0
LanguageC++C++C++
Last pushed2016-06-202024-05-20
MaintenanceDormantDormant
Setup difficultyhardmoderatemoderate
Complexity5/54/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Only works on specific older NVIDIA GPUs (TitanX, GTX 1080, GP100) and supports basic RNNs, not LSTMs.

Copy-paste prompts

Prompt 1
Explain how this library caches RNN weights in GPU register files instead of reloading them from memory each step.
Prompt 2
Help me integrate this library's cuDNN-style API into my existing CUDA RNN inference code.
Prompt 3
Walk me through the supported GPU models and batch-size limits before I try to use this in production.
Prompt 4
Show me why this library is much faster than standard RNN libraries specifically for small batch sizes.

Frequently asked questions

What is persistent-rnn?

A C++/CUDA library that makes small-batch recurrent neural network computation up to 15x faster on specific NVIDIA GPUs by caching weights in GPU registers.

What language is persistent-rnn written in?

Mainly C++. The stack also includes C++, CUDA, cuDNN-style API.

Is persistent-rnn actively maintained?

Dormant — no commits in 2+ years (last push 2016-06-20).

How hard is persistent-rnn to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is persistent-rnn for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.