摘要:
起因 昨天看到了一篇文章,说到并行库的效率问题,在最后lz也发现是因为CPU的超线程技术,导致实际效率不能接近算上开启超线程的核心数量,而在接近关闭超线程的核心数量。不过文中提到了一点:“不过另一个问题有也出来了,为什么我那简单的改进算法相对效率那么高。”分析 原作者在今天又发文章说是循环方式的不同导致差异,虽然没有点击中要害,不过也算是给出了个范围。 首先准备一个测试工程: class Program { private long[] data; static void Main(string[] args) { Program p = new Program(); p.Test(); } 阅读全文