Skip to content

Adding Whisper.net.Runtime.Cuda12#475

Merged
sandrohanea merged 4 commits into
mainfrom
sandroh/add-cuda12
Jan 1, 2026
Merged

Adding Whisper.net.Runtime.Cuda12#475
sandrohanea merged 4 commits into
mainfrom
sandroh/add-cuda12

Add `log-file-suffix` to CUDA build workflows for Linux and Windows

8ca7d38
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
GitHub Actions / Whisper.net Linux Test Results succeeded Dec 31, 2025 in 0s

168 passed, 0 failed and 2 skipped

Tests passed successfully

Report Passed Failed Skipped Time
tests/Whisper.net.Tests/TestResults/_runnervmh13bl_2025-12-31_16_31_37.trx 84✅ 1⚪ 983s
tests/Whisper.net.Tests/TestResults/_runnervmh13bl_2025-12-31_16_31_41.trx 84✅ 1⚪ 975s

✅ tests/Whisper.net.Tests/TestResults/_runnervmh13bl_2025-12-31_16_31_37.trx

85 tests were completed in 983s with 84 passed, 0 failed and 1 skipped.

Test suite Passed Failed Skipped Time
Whisper.net.Tests.FactoryTests 6✅ 2s
Whisper.net.Tests.ParallelTests 1✅ 202s
Whisper.net.Tests.ProcessAsyncFunctionalTests 6✅ 695s
Whisper.net.Tests.ProcessFunctionalTests 6✅ 1⚪ 780s
Whisper.net.Tests.ProcessingFailureTests 2✅ 20ms
Whisper.net.Tests.ProcessQuantizedTests 1✅ 183s
Whisper.net.Tests.SpeechToText.SpeechToTextOptionsExtensionsTests 44✅ 30ms
Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientConstructorTests 10✅ 620s
Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientTest 6✅ 763s
Whisper.net.Tests.WaveParserTests 2✅ 400ms

✅ Whisper.net.Tests.FactoryTests

✅ CreateBuilder_WithCorruptedModel_ShouldThrow
✅ CreateBuilder_WithDisposedFactory_ShouldThrow
✅ CreateBuilder_WithFileModel_ShouldReturnBuilder
✅ CreateBuilder_WithMemoryModel_ShouldReturnBuilder
✅ CreateBuilder_WithNoModel_ShouldThrow
✅ GetSupportedLanguages_ShouldReturnAll

✅ Whisper.net.Tests.ParallelTests

✅ ProcessAsync_ParallelExecution_WillCompleteEverytime

✅ Whisper.net.Tests.ProcessAsyncFunctionalTests

✅ ProcessAsync_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ ProcessAsync_Cancelled_WillCancelTheProcessing_AndDispose_WillWaitUntilFullyFinished
✅ ProcessAsync_WhenJunkChunkExists_ProcessCorrectly
✅ ProcessAsync_WhenMultichannel_ProcessCorrectly
✅ ProcessAsync_WhenUtf8Data_ProcessCorrectly
✅ TestHappyFlowAsync

✅ Whisper.net.Tests.ProcessFunctionalTests

✅ Process_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ Process_WhenMultichannel_ProcessCorrectly
✅ Test_LibraryLoadError_ShouldFallbackToCPU(invalidLibrary: "cuda")
✅ Test_LibraryLoadError_ShouldFallbackToCPU(invalidLibrary: "openvino")
✅ TestAutoDetectLanguageWithRomanian
⚪ TestCancelEncoder
✅ TestHappyFlow

✅ Whisper.net.Tests.ProcessingFailureTests

✅ Process_WhenNativeFails_ShouldThrow
✅ ProcessAsync_WhenNativeFails_ShouldThrow

✅ Whisper.net.Tests.ProcessQuantizedTests

✅ TestHappyFlowQuantized

✅ Whisper.net.Tests.SpeechToText.SpeechToTextOptionsExtensionsTests

✅ WithAudioContextSize_SetsAdditionalProperty
✅ WithBeamSearchSamplingStrategy_SetsAdditionalProperty
✅ WithDuration_SetsAdditionalProperty
✅ WithEncoderBeginHandler_SetsAdditionalProperty
✅ WithEntropyThreshold_SetsAdditionalProperty
✅ WithGreedySamplingStrategy_SetsAdditionalProperty
✅ WithLanguage_SetsLanguageProperty
✅ WithLanguageDetection_SetsAdditionalProperty
✅ WithLanguageDetection_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithLengthPenalty_SetsAdditionalProperty
✅ WithLogProbThreshold_SetsAdditionalProperty
✅ WithMaxInitialTs_SetsAdditionalProperty
✅ WithMaxLastTextTokens_SetsAdditionalProperty
✅ WithMaxSegmentLength_SetsAdditionalProperty
✅ WithMaxTokensPerSegment_SetsAdditionalProperty
✅ WithNoContext_SetsAdditionalProperty
✅ WithNoContext_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithNoSpeechThreshold_SetsAdditionalProperty
✅ WithOffset_SetsAdditionalProperty
✅ WithOpenVinoEncoder_SetsAdditionalProperties
✅ WithOpenVinoEncoder_WithNullDeviceAndCache_SetsOnlyEncoderPath
✅ WithoutStringPool_SetsAdditionalProperty
✅ WithoutSuppressBlank_SetsAdditionalProperty
✅ WithPrintProgress_SetsAdditionalProperty
✅ WithPrintProgress_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithPrintResults_SetsAdditionalProperty
✅ WithPrintResults_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithPrintSpecialTokens_SetsAdditionalProperty
✅ WithPrintSpecialTokens_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithPrintTimestamps_SetsAdditionalProperty
✅ WithPrintTimestamps_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithProbabilities_SetsAdditionalProperty
✅ WithProbabilities_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithProgressHandler_SetsAdditionalProperty
✅ WithSegmentEventHandler_SetsAdditionalProperty
✅ WithStringPool_SetsAdditionalProperty
✅ WithTemperature_SetsAdditionalProperty
✅ WithTemperatureInc_SetsAdditionalProperty
✅ WithThreads_SetsAdditionalProperty
✅ WithTokenTimestamps_SetsAdditionalProperty
✅ WithTokenTimestampsSumThreshold_SetsAdditionalProperty
✅ WithTokenTimestampsThreshold_SetsAdditionalProperty
✅ WithTranslate_SetsTextLanguageToEnglish
✅ WithWhisperLanguage_SetsAdditionalProperty

✅ Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientConstructorTests

✅ AfterDispose_GetStreamingTextAsync_ShouldThrowObjectDisposedException
✅ AfterDispose_GetTextAsync_ShouldThrowObjectDisposedException
✅ Constructor_WithFactoryBuilder_ShouldNotCreateFactoryImmediately
✅ Constructor_WithModelFileName_ShouldNotCreateFactoryImmediately
✅ Constructor_WithNullFactoryBuilder_ShouldThrowArgumentNullException
✅ Dispose_ShouldDisposeFactory
✅ FactoryBuilder_ReturningNull_ShouldThrowArgumentNullException
✅ GetStreamingTextAsync_ShouldCreateFactoryLazily
✅ GetTextAsync_ShouldCreateFactoryLazily
✅ MultipleRequests_ShouldReuseFactory

✅ Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientTest

✅ GetStreamingTextAsync_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ GetTextAsync_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ ProcessAsync_WhenJunkChunkExists_ProcessCorrectly
✅ ProcessAsync_WhenMultichannel_ProcessCorrectly
✅ TestHappyFlowAsync
✅ WithSegmentEventHandler_Cancelled_WillCancellTheProcessing_AndDispose

✅ Whisper.net.Tests.WaveParserTests

✅ Initialize_WithTruncatedStream_ShouldThrow
✅ Initialize_WithTruncatedStreamAndPermissiveFlag_ShouldNotThrow

✅ tests/Whisper.net.Tests/TestResults/_runnervmh13bl_2025-12-31_16_31_41.trx

85 tests were completed in 975s with 84 passed, 0 failed and 1 skipped.

Test suite Passed Failed Skipped Time
Whisper.net.Tests.FactoryTests 6✅ 2s
Whisper.net.Tests.ParallelTests 1✅ 207s
Whisper.net.Tests.ProcessAsyncFunctionalTests 6✅ 701s
Whisper.net.Tests.ProcessFunctionalTests 6✅ 1⚪ 764s
Whisper.net.Tests.ProcessingFailureTests 2✅ 115ms
Whisper.net.Tests.ProcessQuantizedTests 1✅ 180s
Whisper.net.Tests.SpeechToText.SpeechToTextOptionsExtensionsTests 44✅ 116ms
Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientConstructorTests 10✅ 656s
Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientTest 6✅ 760s
Whisper.net.Tests.WaveParserTests 2✅ 2s

✅ Whisper.net.Tests.FactoryTests

✅ CreateBuilder_WithCorruptedModel_ShouldThrow
✅ CreateBuilder_WithDisposedFactory_ShouldThrow
✅ CreateBuilder_WithFileModel_ShouldReturnBuilder
✅ CreateBuilder_WithMemoryModel_ShouldReturnBuilder
✅ CreateBuilder_WithNoModel_ShouldThrow
✅ GetSupportedLanguages_ShouldReturnAll

✅ Whisper.net.Tests.ParallelTests

✅ ProcessAsync_ParallelExecution_WillCompleteEverytime

✅ Whisper.net.Tests.ProcessAsyncFunctionalTests

✅ ProcessAsync_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ ProcessAsync_Cancelled_WillCancelTheProcessing_AndDispose_WillWaitUntilFullyFinished
✅ ProcessAsync_WhenJunkChunkExists_ProcessCorrectly
✅ ProcessAsync_WhenMultichannel_ProcessCorrectly
✅ ProcessAsync_WhenUtf8Data_ProcessCorrectly
✅ TestHappyFlowAsync

✅ Whisper.net.Tests.ProcessFunctionalTests

✅ Process_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ Process_WhenMultichannel_ProcessCorrectly
✅ Test_LibraryLoadError_ShouldFallbackToCPU(invalidLibrary: "cuda")
✅ Test_LibraryLoadError_ShouldFallbackToCPU(invalidLibrary: "openvino")
✅ TestAutoDetectLanguageWithRomanian
⚪ TestCancelEncoder
✅ TestHappyFlow

✅ Whisper.net.Tests.ProcessingFailureTests

✅ Process_WhenNativeFails_ShouldThrow
✅ ProcessAsync_WhenNativeFails_ShouldThrow

✅ Whisper.net.Tests.ProcessQuantizedTests

✅ TestHappyFlowQuantized

✅ Whisper.net.Tests.SpeechToText.SpeechToTextOptionsExtensionsTests

✅ WithAudioContextSize_SetsAdditionalProperty
✅ WithBeamSearchSamplingStrategy_SetsAdditionalProperty
✅ WithDuration_SetsAdditionalProperty
✅ WithEncoderBeginHandler_SetsAdditionalProperty
✅ WithEntropyThreshold_SetsAdditionalProperty
✅ WithGreedySamplingStrategy_SetsAdditionalProperty
✅ WithLanguage_SetsLanguageProperty
✅ WithLanguageDetection_SetsAdditionalProperty
✅ WithLanguageDetection_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithLengthPenalty_SetsAdditionalProperty
✅ WithLogProbThreshold_SetsAdditionalProperty
✅ WithMaxInitialTs_SetsAdditionalProperty
✅ WithMaxLastTextTokens_SetsAdditionalProperty
✅ WithMaxSegmentLength_SetsAdditionalProperty
✅ WithMaxTokensPerSegment_SetsAdditionalProperty
✅ WithNoContext_SetsAdditionalProperty
✅ WithNoContext_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithNoSpeechThreshold_SetsAdditionalProperty
✅ WithOffset_SetsAdditionalProperty
✅ WithOpenVinoEncoder_SetsAdditionalProperties
✅ WithOpenVinoEncoder_WithNullDeviceAndCache_SetsOnlyEncoderPath
✅ WithoutStringPool_SetsAdditionalProperty
✅ WithoutSuppressBlank_SetsAdditionalProperty
✅ WithPrintProgress_SetsAdditionalProperty
✅ WithPrintProgress_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithPrintResults_SetsAdditionalProperty
✅ WithPrintResults_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithPrintSpecialTokens_SetsAdditionalProperty
✅ WithPrintSpecialTokens_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithPrintTimestamps_SetsAdditionalProperty
✅ WithPrintTimestamps_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithProbabilities_SetsAdditionalProperty
✅ WithProbabilities_WithFalseParameter_SetsAdditionalPropertyToFalse
✅ WithProgressHandler_SetsAdditionalProperty
✅ WithSegmentEventHandler_SetsAdditionalProperty
✅ WithStringPool_SetsAdditionalProperty
✅ WithTemperature_SetsAdditionalProperty
✅ WithTemperatureInc_SetsAdditionalProperty
✅ WithThreads_SetsAdditionalProperty
✅ WithTokenTimestamps_SetsAdditionalProperty
✅ WithTokenTimestampsSumThreshold_SetsAdditionalProperty
✅ WithTokenTimestampsThreshold_SetsAdditionalProperty
✅ WithTranslate_SetsTextLanguageToEnglish
✅ WithWhisperLanguage_SetsAdditionalProperty

✅ Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientConstructorTests

✅ AfterDispose_GetStreamingTextAsync_ShouldThrowObjectDisposedException
✅ AfterDispose_GetTextAsync_ShouldThrowObjectDisposedException
✅ Constructor_WithFactoryBuilder_ShouldNotCreateFactoryImmediately
✅ Constructor_WithModelFileName_ShouldNotCreateFactoryImmediately
✅ Constructor_WithNullFactoryBuilder_ShouldThrowArgumentNullException
✅ Dispose_ShouldDisposeFactory
✅ FactoryBuilder_ReturningNull_ShouldThrowArgumentNullException
✅ GetStreamingTextAsync_ShouldCreateFactoryLazily
✅ GetTextAsync_ShouldCreateFactoryLazily
✅ MultipleRequests_ShouldReuseFactory

✅ Whisper.net.Tests.SpeechToText.WhisperSpeechToTextClientTest

✅ GetStreamingTextAsync_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ GetTextAsync_CalledMultipleTimes_Serially_WillCompleteEverytime
✅ ProcessAsync_WhenJunkChunkExists_ProcessCorrectly
✅ ProcessAsync_WhenMultichannel_ProcessCorrectly
✅ TestHappyFlowAsync
✅ WithSegmentEventHandler_Cancelled_WillCancellTheProcessing_AndDispose

✅ Whisper.net.Tests.WaveParserTests

✅ Initialize_WithTruncatedStream_ShouldThrow
✅ Initialize_WithTruncatedStreamAndPermissiveFlag_ShouldNotThrow