Digests » 153


Maximizing Throughput - The Overhead of 1 Million Tasks

You can use millions of tasks, provided throughput is modest (a few thousand operations per second), at the cost of a modest amount of memory and negligible CPU overhead. Avoid using tasks in extreme throughput scenarios (millions of operations per second), the CPU overhead is huge.

Contributing to .NET for Dummies

Over the past few months in the little spare time that I have, I've managed to submit a handful of pull requests to various .NET-related repositories (e.g. coreclr, corefx, docs, etc.) and incredibly, they were accepted.

De-virtualization in CoreCLR: Part I

I mentioned that we are doing some work to enable de-virtualization of our code, as well as getting ready for CoreCLR changes that will get the JIT to do more de-virtualization.

Preventing performance problems with Entity Framework and Unit of Work

If you’re a seasoned .NET developer familiar with Entity Framework, then you may already know that EF provides an abstraction over the database, effectively giving us a repository and unit of work.

Making string validation faster by not using a regular expression. A story.

A while back, we were performance profiling an application and noticed a big performance bottleneck while mapping objects using AutoMapper. Mapping is of course somewhat expensive, but the numbers we were seeing were way higher than expected: mapping was ridiculously slow!