FasterWhisper.NET.Gpu 1.0.7

There is a newer version of this package available.
See the version list below for details.
dotnet add package FasterWhisper.NET.Gpu --version 1.0.7
                    
NuGet\Install-Package FasterWhisper.NET.Gpu -Version 1.0.7
                    
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.7" />
                    
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.7" />
                    
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.7
                    
#r "nuget: FasterWhisper.NET.Gpu, 1.0.7"
                    
#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.7
                    
#: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.7
                    
Install as a Cake Addin
#tool nuget:?package=FasterWhisper.NET.Gpu&version=1.0.7
                    
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 9.x or 8.9.x — cuDNN Downloads

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_*.dll

Linux and WSL2 Requirements

  1. NVIDIA CUDA Toolkit 12.x — Linux CUDA Downloads
  2. NVIDIA cuDNN 9.x or 8.9.x — Linux cuDNN 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.*

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 138 8/31/2026
1.0.7 131 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