AnyLang.FastIPC 0.0.1

dotnet add package AnyLang.FastIPC --version 0.0.1
                    
NuGet\Install-Package AnyLang.FastIPC -Version 0.0.1
                    
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="AnyLang.FastIPC" Version="0.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AnyLang.FastIPC" Version="0.0.1" />
                    
Directory.Packages.props
<PackageReference Include="AnyLang.FastIPC" />
                    
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 AnyLang.FastIPC --version 0.0.1
                    
#r "nuget: AnyLang.FastIPC, 0.0.1"
                    
#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 AnyLang.FastIPC@0.0.1
                    
#: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=AnyLang.FastIPC&version=0.0.1
                    
Install as a Cake Addin
#tool nuget:?package=AnyLang.FastIPC&version=0.0.1
                    
Install as a Cake Tool

AnyLang.FastIPC

High-performance cross-language IPC/RPC library delivering 13M+ RPC calls/s with zero-copy shared memory architecture.

Features

  • 🚀 Extreme Performance: 13M+ RPC calls/s, 15M+ raw IPC messages/s
  • 🌐 Cross-Language: Seamless interop between C, C#, and Python
  • 🔒 Zero-Copy: Direct memory access eliminates serialization overhead
  • ⚡ Low Latency: Sub-microsecond message passing
  • 🔧 Battle-Tested: Production-grade reliability with comprehensive test suite
  • 📦 Easy Integration: Just dotnet add package AnyLang.FastIPC and go

Installation

dotnet add package AnyLang.FastIPC

Native binaries for Linux (x64) and Windows (x64) are included automatically.

Quick Start

Simple RPC Server/Client

using AnyLang.FastIPC;
using System;

// Server side
unsafe
{
    var server = RpcNative.CreateServer("my_channel");

    while (true)
    {
        // Receive request
        void* requestPtr;
        nuint requestLen;
        ulong requestId;

        int result = RpcNative.ReceiveRequest(server, &requestPtr, &requestLen, &requestId, 1000);
        if (result == 0)
        {
            // Process request and send response
            byte[] response = ProcessRequest(requestPtr, requestLen);
            fixed (byte* respPtr = response)
            {
                RpcNative.SendResponse(server, requestId, respPtr, (nuint)response.Length);
            }
        }
    }
}
// Client side
unsafe
{
    var client = RpcNative.CreateClient("my_channel");

    byte[] request = BuildRequest();
    byte[] response;

    fixed (byte* reqPtr = request)
    {
        void* respPtr;
        nuint respLen;

        int result = RpcNative.Call(client, reqPtr, (nuint)request.Length, &respPtr, &respLen, 1000);
        if (result == 0)
        {
            response = new byte[respLen];
            Marshal.Copy((IntPtr)respPtr, response, 0, (int)respLen);
        }
    }
}

Performance Benchmarks

Linux x64 (tested on WSL2, AMD Ryzen):

  • Small messages (16 bytes): 15.2M msg/s, 232 MB/s
  • Large messages (1 MB): 1,674 msg/s, 1,674 MB/s
  • RPC calls (multi-threaded): 13M+ calls/s

Windows x64: Native performance (not Wine/emulation)

Platform Support

Platform Status Native Binary
Linux x64 ✅ Fully supported libfastipc.so
Windows x64 ✅ Fully supported fastipc.dll
macOS x64 🔜 Coming soon -
macOS ARM64 🔜 Coming soon -

Architecture

Built on zero-copy shared memory with lock-free ring buffers:

  • No serialization overhead: Direct memory access
  • Lock-free design: Atomic operations for synchronization
  • Bounded latency: Predictable sub-microsecond performance
  • Heartbeat monitoring: Automatic partner liveness detection

Language Interoperability

Write your server in C, client in Python, or any combination:

# Python client calling C# server
from anylang_fastipc import RpcClient

client = RpcClient("my_channel")
response = client.call(request_bytes, timeout_ms=1000)
// C# server handling Python client
// Same RPC protocol, zero friction

Binary Distribution

This package contains compiled native binaries only. The C source code is proprietary and available under commercial license.

Documentation

  • GitHub Repository
  • API Documentation: Coming soon
  • Examples: See repository for complete examples

License

MIT License (for binary distribution)

C source code requires separate commercial license.

Support

Report issues at: https://github.com/yourorg/anylang-fastipc/issues


Built with performance in mind. Ship with confidence.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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 was computed.  net9.0 was computed.  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 was computed.  net10.0 was computed.  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. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETStandard 2.1

    • 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.

Version Downloads Last Updated
0.0.1 203 10/27/2025