Optimize C# Code Fragment

Posted by Eric J. on Stack Overflow See other posts from Stack Overflow or by Eric J.
Published on 2011-11-12T01:39:36Z Indexed on 2011/11/12 1:51 UTC
Read the original article Hit count: 265

Filed under:
|

I'm profiling some C# code. The method below is one of the most expensive ones. For the purpose of this question, assume that micro-optimization is the right thing to do. Is there an approach to improve performance of this method?

Changing the input parameter to p to ulong[] would create a macro inefficiency.

static ulong Fetch64(byte[] p, int ofs = 0)
{
    unchecked
    {
        ulong result = p[0 + ofs] + ((ulong)p[1 + ofs] << 8) + ((ulong)p[2 + ofs] << 16) + ((ulong)p[3 + ofs] << 24)
             + ((ulong)p[4 + ofs] << 32) + ((ulong)p[5 + ofs] << 40) + ((ulong)p[6 + ofs] << 48) + ((ulong)p[7 + ofs] << 56);
        return result;
    }
}

© Stack Overflow or respective owner

Related posts about c#

Related posts about micro-optimization