FasterWhisper.NET.Gpu 1.0.8

dotnet add package FasterWhisper.NET.Gpu --version 1.0.8
                    
NuGet\Install-Package FasterWhisper.NET.Gpu -Version 1.0.8
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FasterWhisper.NET.Gpu" Version="1.0.8" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FasterWhisper.NET.Gpu" Version="1.0.8" />
                    
Directory.Packages.props
<PackageReference Include="FasterWhisper.NET.Gpu" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FasterWhisper.NET.Gpu --version 1.0.8
                    
#r "nuget: FasterWhisper.NET.Gpu, 1.0.8"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package FasterWhisper.NET.Gpu@1.0.8
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FasterWhisper.NET.Gpu&version=1.0.8
                    
Install as a Cake Addin
#tool nuget:?package=FasterWhisper.NET.Gpu&version=1.0.8
                    
Install as a Cake Tool

FasterWhisper.NET Banner

FasterWhisper.NET.Gpu

by Qourex — GPU-Accelerated Speech Recognition for .NET

Build & Test NuGet Downloads Documentation License: MIT .NET

Documentation Portal — Guides, API references, .NET 10.0 samples, and mobile deployment walkthroughs.


FasterWhisper.NET.Gpu is the GPU-accelerated distribution of FasterWhisper.NET. It bundles pre-compiled native binaries built with NVIDIA CUDA and cuDNN enabled for CTranslate2, delivering high-throughput speech recognition on NVIDIA graphics cards.

For CPU-only environments without CUDA dependencies, use the base FasterWhisper.NET package.


Key GPU Advantages

  • CUDA and cuDNN Acceleration — Native GPU execution for all Whisper model variants.
  • Flash Attention Support — Significant throughput improvements on Ampere (RTX 30-series), Ada Lovelace (RTX 40-series), and Blackwell (RTX 50-series) architectures.
  • Mixed Precision Compute — Native support for "float16" and "int8_float16" compute precisions to reduce VRAM footprint while maximizing tensor core utilization.
  • Parallel Mel Feature Extraction — Multi-threaded DSP audio preprocessing pipeline executing on CPU threads before GPU batch scheduling.

Installation

Install the GPU-enabled package via the .NET CLI:

dotnet add package FasterWhisper.NET.Gpu

CUDA Prerequisites

To run this package with GPU acceleration (device: "cuda"), verify that the host system has compatible NVIDIA runtime libraries installed:

Windows Requirements

  1. NVIDIA CUDA Toolkit 12.x — CUDA Downloads
  2. NVIDIA cuDNN 8.9.x (Required: cudnn64_8.dll) — cuDNN 8.x Archive Downloads

    Note: cuDNN 8.9.x is strictly required. cuDNN 9 (cudnn64_9.dll) is currently not supported.

Ensure the following dynamic libraries are present in your system PATH:

  • cudart64_12.dll (or active CUDA 12 runtime)
  • cublas64_12.dll
  • cublasLt64_12.dll
  • cudnn64_8.dll (and cudnn_*.dll helper libraries)

Linux and WSL2 Requirements

  1. NVIDIA CUDA Toolkit 12.x — Linux CUDA Downloads
  2. NVIDIA cuDNN 8.9.x (libcudnn.so.8) — Linux cuDNN 8.x Downloads

Ensure the following shared libraries are accessible in LD_LIBRARY_PATH or standard library paths (/usr/local/cuda/lib64):

  • libcudart.so.12
  • libcublas.so.12
  • libcublasLt.so.12
  • libcudnn.so.8

Supported GPU Architectures

The bundled native GPU binaries are pre-compiled with native SASS code and forward-compatible PTX for all modern NVIDIA GPU generations:

Architecture Compute Capability Example GPUs
Maxwell sm_53 GTX 900M, Jetson Nano / TX1
Pascal sm_60, sm_61 GTX 1060 / 1070 / 1080 / 1080 Ti, Tesla P40 / P100
Volta sm_70 Titan V, Tesla V100
Turing sm_75 RTX 2060 / 2070 / 2080, GTX 1660, Tesla T4
Ampere sm_80, sm_86 RTX 3060 / 3070 / 3080 / 3090, A100, A10
Ada Lovelace sm_89 RTX 4060 / 4070 / 4080 / 4090, RTX 5000 Ada, L4, L40
Hopper sm_90 H100, H800
Blackwell (RTX 50-Series) sm_100, sm_120 RTX 5070 / 5080 / 5090, B100, B200
Future NVIDIA GPUs PTX (compute_90/100/120) Automatic JIT compilation by the NVIDIA driver via embedded PTX

Docker Compilation for Linux GPU Binaries

For Linux and WSL2 environments, native CUDA binaries can be compiled cleanly using an isolated Docker container without altering host build tools:

docker run --rm --gpus all -v "$(pwd)":/workspace -w /workspace nvcr.io/nvidia/cuda:12.8.0-devel-ubuntu22.04 bash -c "
  apt-get update && \
  apt-get install -y ca-certificates gpg wget && \
  wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null && \
  echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null && \
  apt-get update && \
  apt-get install -y cmake build-essential libopenblas-dev ninja-build libcudnn8-dev git && \
  ./build.sh --gpu-only
"

This compiles the native wrapper and automatically stages qourex_fasterwhisper_native.so and libctranslate2.so under src/Qourex.FasterWhisper.NET.Gpu/runtimes/linux-x64/native/.


Quick Start: GPU Transcription

using System;
using System.Threading.Tasks;
using Qourex.FasterWhisper.NET;

// 1. Download and load the model on CUDA
using var model = await WhisperModel.LoadAsync(
    modelNameOrPath: "large-v3",
    device:          "cuda",       // Target GPU
    computeType:     "float16",    // Half-precision for optimal GPU performance
    flashAttention:  true          // Flash Attention (requires compute capability >= 8.0)
);

// 2. Configure transcription parameters
var options = new WhisperOptions
{
    BeamSize       = 5,
    WordTimestamps = true
};

// 3. Execute transcription
var segments = model.Transcribe(
    mediaPath: "audio.wav",
    language:  "en",
    options:   options
);

// 4. Output results
foreach (var segment in segments)
{
    Console.WriteLine($"[{segment.Start:F2}s -> {segment.End:F2}s] {segment.Text}");
}

GPU Configuration Options

Compute Precision Types

Compute Type Description
"default" Selects float16 if supported by the GPU, with automatic fallback
"float16" Recommended. Fast FP16 execution with lowest VRAM footprint
"float32" Standard 32-bit single-precision floating point
"int8_float16" INT8 quantized compute with FP16 activation storage

Flash Attention

Enable Flash Attention for Ampere and newer architectures:

flashAttention: true

Note: Flash Attention requires an NVIDIA GPU with compute capability ≥ 8.0 (RTX 30-series, RTX 40-series, RTX 50-series, A100, H100).


License

This package is licensed under the MIT License — see the LICENSE file for details.

MIT License · Copyright (c) 2026 Qourex
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows is compatible.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows is compatible.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.8 134 8/31/2026
1.0.7 130 8/20/2026
1.0.6 170 6/30/2026
1.0.5 129 6/28/2026
1.0.4 125 6/26/2026
1.0.3 121 6/26/2026
1.0.2 158 6/25/2026
1.0.0 128 6/25/2026