SimdSharp 0.0.2
dotnet add package SimdSharp --version 0.0.2
NuGet\Install-Package SimdSharp -Version 0.0.2
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="SimdSharp" Version="0.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SimdSharp" Version="0.0.2" />
<PackageReference Include="SimdSharp" />
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 SimdSharp --version 0.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: SimdSharp, 0.0.2"
#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 SimdSharp@0.0.2
#: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=SimdSharp&version=0.0.2
#tool nuget:?package=SimdSharp&version=0.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
SimdSharp
Low-level fast SIMD algorithms in C#. Cross-platform, trimmable and AOT/NativeAOT compatible.
⭐ Please star this project if you like it. ⭐
Example | Example Catalogue | Public API Reference
Example
Simd.Empty();
// Above example code is for demonstration purposes only.
// Short names and repeated constants are only for demonstration.
For more examples see Example Catalogue.
Benchmarks
Benchmarks.
Detailed Benchmarks
Comparison Benchmarks
EnumerateLinesSpanUTF16 Benchmark Results
AMD.Ryzen.9.9950X - EnumerateLinesSpanUTF16 Benchmark Results (SimdSharp 0.0.2.0, System 10.0.125.57005)
| Method | TotalLength | MaxLineLength | Mean | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| EnumerateLines_BCL | 32768 | 0 | 101,475.6 ns | 1.00 | - | NA |
| EnumerateLines_SimdSharp | 32768 | 0 | 11,660.0 ns | 0.11 | - | NA |
| EnumerateLines_BCL | 32768 | 8 | 37,298.3 ns | 1.00 | - | NA |
| EnumerateLines_SimdSharp | 32768 | 8 | 4,914.5 ns | 0.13 | - | NA |
| EnumerateLines_BCL | 32768 | 128 | 3,509.0 ns | 1.00 | - | NA |
| EnumerateLines_SimdSharp | 32768 | 128 | 777.4 ns | 0.22 | - | NA |
Example Catalogue
The following examples are available in ReadMeTest.cs.
Example - Empty
Simd.Empty();
// Above example code is for demonstration purposes only.
// Short names and repeated constants are only for demonstration.
Public API Reference
[assembly: System.CLSCompliant(false)]
[assembly: System.Reflection.AssemblyMetadata("IsAotCompatible", "True")]
[assembly: System.Reflection.AssemblyMetadata("IsTrimmable", "True")]
[assembly: System.Reflection.AssemblyMetadata("RepositoryUrl", "https://github.com/nietras/SimdSharp/")]
[assembly: System.Resources.NeutralResourcesLanguage("en")]
[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("SimdSharp.Benchmarks")]
[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("SimdSharp.ComparisonBenchmarks")]
[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("SimdSharp.Test")]
[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("SimdSharp.XyzTest")]
[assembly: System.Runtime.Versioning.TargetFramework(".NETCoreApp,Version=v10.0", FrameworkDisplayName=".NET 10.0")]
namespace SimdSharp
{
public static class Simd
{
public static SimdSharp.Simd.MaskSpanLineEnumeratorUTF16 EnumerateLines(System.ReadOnlySpan<char> span) { }
public ref struct MaskSpanLineEnumeratorUTF16 : System.Collections.Generic.IEnumerator<System.ReadOnlySpan<char>>, System.Collections.IEnumerator, System.IDisposable
{
public System.ReadOnlySpan<char> Current { get; }
public SimdSharp.Simd.MaskSpanLineEnumeratorUTF16 GetEnumerator() { }
public bool MoveNext() { }
}
}
}
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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 was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.