更新3:根据thisannouncement,这已由EF团队在EF6alpha2中解决。更新2:我提出了解决此问题的建议。投票给它,gohere.考虑一个带有一个非常简单的表的SQL数据库。CREATETABLEMain(IdINTPRIMARYKEY)我用10,000条记录填充表。WITHNumbersAS(SELECT1ASIdUNIONALLSELECTId+1ASIdFROMNumbersWHEREId我为表构建了一个EF模型并在LINQPad中运行以下查询(我使用的是“C#语句”模式,因此LINQPad不会自动创建转储)。varrows=Main.ToArray();执行时间
更新3:根据thisannouncement,这已由EF团队在EF6alpha2中解决。更新2:我提出了解决此问题的建议。投票给它,gohere.考虑一个带有一个非常简单的表的SQL数据库。CREATETABLEMain(IdINTPRIMARYKEY)我用10,000条记录填充表。WITHNumbersAS(SELECT1ASIdUNIONALLSELECTId+1ASIdFROMNumbersWHEREId我为表构建了一个EF模型并在LINQPad中运行以下查询(我使用的是“C#语句”模式,因此LINQPad不会自动创建转储)。varrows=Main.ToArray();执行时间
我有一个OpenMP程序(数千行,无法在此处重现),其工作方式如下:它由工作线程和任务队列组成。一个任务由一个卷积组成;每次工作线程从工作队列中弹出一个任务时,它都会执行所需的卷积,并可选择将更多卷积插入队列。(没有特定的“主”线程;所有worker都是平等的。)当我在自己的机器(4-coreHTnon-NUMACorei7)上运行这个程序时,我得到的运行时间是:(#threads:runningtime)1:5374ms2:2830ms3:2147ms4:1723ms5:1379ms6:1281ms7:1217ms8:1179ms这是有道理的。但是,当我在NUMA48核AMDOpte