DevOnBike.Overfit
10.0.18
dotnet add package DevOnBike.Overfit --version 10.0.18
NuGet\Install-Package DevOnBike.Overfit -Version 10.0.18
<PackageReference Include="DevOnBike.Overfit" Version="10.0.18" />
<PackageVersion Include="DevOnBike.Overfit" Version="10.0.18" />
<PackageReference Include="DevOnBike.Overfit" />
paket add DevOnBike.Overfit --version 10.0.18
#r "nuget: DevOnBike.Overfit, 10.0.18"
#:package DevOnBike.Overfit@10.0.18
#addin nuget:?package=DevOnBike.Overfit&version=10.0.18
#tool nuget:?package=DevOnBike.Overfit&version=10.0.18
Sources/Main
Core Overfit runtime and library code.
Current runtime areas
Autograd Reverse-mode graph and training operations
DeepLearning Layers, Sequential, train/eval state, save/load
Inference Prepared zero-allocation inference facade
Ops TensorMath and graph-aware training math
Tensors Tensor storage, views and memory abstractions
Evolutionary Population-based gradient-free optimization
Onnx Focused ONNX import MVP for PyTorch-exported inference models
Inference path
The preferred production-style inference API is:
engine.Run(input, output);
The hot path should avoid:
model.Forward(...)
AutogradNode
ComputationGraph
new arrays per call
ToArray()
LINQ in runtime code
InferenceEngine.Run(...) uses caller-owned input/output buffers and prepared reusable internal buffers.
ONNX import
The ONNX importer is a focused load-time feature. It is not a full ONNX runtime.
Current MVP goal:
PyTorch-exported eval-mode ONNX CNN
-> OnnxImporter.Load(path)
-> Sequential
-> InferenceEngine.Run(...)
Supported MVP operators:
Conv
Relu
MaxPool
Reshape / Flatten
Gemm
Constraints:
FP32 only
NCHW layout
Linear topology only
Concrete shapes required
No branching / skip connections
No grouped/depthwise conv
No quantized or FP16 tensors
Example:
using DevOnBike.Overfit.Onnx;
using DevOnBike.Overfit.Inference;
var model = OnnxImporter.Load("mnist_cnn.onnx");
model.Eval();
using var engine = InferenceEngine.FromSequential(
model,
inputSize: 1 * 28 * 28,
outputSize: 10);
var input = new float[1 * 28 * 28];
var output = new float[10];
engine.Run(input, output);
Main-project coding rules
Runtime code in Sources/Main should stay conservative:
- Avoid LINQ in hot/runtime paths.
- Prefer explicit loops and spans.
- Avoid hidden allocations.
- Keep import-time allocations out of inference hot paths.
- Keep training/graph allocation policy separate from inference policy.
- Do not add dependencies unless there is a clear architectural reason.
Benchmark status
Current verified hot-path inference results include:
Linear(784,10): ~250-300 ns/op, 0 B
Linear(4096,10): ~1.08 us, 0 B
MLP 784->256->128->10: ~10-12 us, 0 B
Small CNN: ~5-6.5 us, 0 B
Imported ONNX MNIST CNN: ~7.5 us, 0 B
See Sources/Benchmark/README.md and docs/InferenceBenchmarkSummary.md for full benchmark tables.
| 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. |
-
net10.0
- System.Numerics.Tensors (>= 10.0.8)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on DevOnBike.Overfit:
| Package | Downloads |
|---|---|
|
DevOnBike.Overfit.UI
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.18 | 0 | 5/29/2026 |
| 10.0.17 | 87 | 5/25/2026 |
| 10.0.16 | 95 | 5/21/2026 |
| 10.0.15 | 91 | 5/17/2026 |
| 10.0.14 | 105 | 4/30/2026 |
| 10.0.13 | 98 | 4/28/2026 |
| 10.0.12 | 100 | 4/26/2026 |
| 10.0.10 | 98 | 4/18/2026 |
| 10.0.9 | 111 | 4/15/2026 |
| 10.0.8 | 93 | 4/15/2026 |
| 10.0.7 | 99 | 4/13/2026 |
| 10.0.6 | 105 | 4/6/2026 |
| 10.0.5 | 103 | 4/5/2026 |
| 10.0.4 | 108 | 4/4/2026 |