0
        long lngSum = 0;


        Parallel.ForEach(Partitioner.Create(0L, lngMax + 1), range =>
        {
            long local = 0;
            //4cores : 9 ranges
            //64cores : 97 ranges
            for (long i = range.Item1; i <= range.Item2 - 1; i++)
            {
                if (i % 2 == 0)
                {
                    local += i;
                }
                else
                {
                    local -= i;
                }
            }
            Interlocked.Add(ref lngSum,  local);
        });

当我在 4 核机器上运行此 C# 代码时,总 CPU 使用率为 100%。

当我在 64 核机器上运行这段 C# 代码时,总 CPU 使用率不是 100%,只有 50~60%

如何使用 100% 的机器功率?

4

0 回答 0