The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
DistIL Alternatives
Similar projects and alternatives to DistIL based on common topics and language
-
NetFabric.Hyperlinq
High performance LINQ implementation with minimal heap allocations. Supports enumerables, async enumerables, arrays and Span<T>.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
mongo-csharp-analyzer
The MongoDB Analyzer is a free tool that helps you understand how your code translates into the MongoDB Query API.
-
UnityH4xx
Hacks, tricks and wizardry for Unity to enhance performance or make impossible things possible ...
DistIL reviews and mentions
-
Classes vs. Structs in .NET. How not to teach about performance
How is that relevant to the vast majority of the code targeted by LINQ?
The niche scenario you have outlined is partially covered by a recent System.Numerics.Tensors package update (even though I believe it would have been best if there was a community-maintained package with comparable quality that can be decoupled from .NET release cycle and trade-off support/compat guarantees in favour of more aggressive improvements in the future).
The goal of LINQ itself is to offer optimal codepaths when it can within the constraints of the current design (naturally, you could improve it significantly if not for backwards compatibility with the previous 15 or so years of .NET codebases). The argument that it's not good because it's not the tool to do BLAS is just nonsensical.
There is, however, an IL optimizer that can further vectorize certain common patterns and rewrite LINQ calls into open-coded loops: https://github.com/dubiousconst282/DistIL
-
DistIL: Experimental optimizer and intermediate representation for .NET IL
Repo: https://github.com/dubiousconst282/DistIL
- DistIL: An experimental optimizer and compiler IR for .NET CIL
-
What's the benefit of local functions?
The lifetime problem should not be that complicated, because the class/lambda allocation is contained entirely within the method. There's an open issue on the runtime repo about object stack allocation that would on paper alleviate some of these issues, but it's quite stagnated. In my toy optimizer, I made a buggy pattern matching transform for "concretizing" lambdas invocations using very little code, but implementing something like this in the JIT can be quite challenging, based on my limited experience.
-
A note from our sponsor - WorkOS
workos.com | 24 Apr 2024
Stats
dubiousconst282/DistIL is an open source project licensed under MIT License which is an OSI approved license.
The primary programming language of DistIL is C#.
Popular Comparisons
Sponsored