我有以下两种服务器配置:
服务器1:
处理器 Intel(R) Xeon(R) CPU E5-4617 0 @ 2.90GHz, 2900 Mhz, 6 Core(s), 6 Logical Processor(s) 处理器 Intel(R) Xeon(R) CPU E5-4617 0 @ 2.90GHz , 2900 Mhz, 6 Core(s), 6 Logical Processor(s) Processor Intel(R) Xeon(R) CPU E5-4617 0 @ 2.90GHz, 2900 Mhz, 6 Core(s), 6 Logical Processor(s) 处理器Intel(R) Xeon(R) CPU E5-4617 0 @ 2.90GHz, 2900 Mhz, 6 Core(s), 6 Logical Processor(s)
操作系统名称 Microsoft Windows Server 2012 Standard
物理内存 128 GB
服务器2:
处理器 Intel(R) Xeon(R) CPU X5650 @ 2.67GHz, 2659 Mhz, 4 Core(s), 4 Logical Processor(s)
操作系统名称 Microsoft Windows Server 2008 R2 Enterprise
物理内存 24 GB
我的应用程序使用任务 API 来并行化父组件和子组件,父类任务/线程将在其中调用子类对象,子类对象再次使用任务 API 并行化模块。
最初我在 server2 上运行,并且得到了性能结果,这比在没有任务的情况下运行应用程序要好,现在我的期望是理论上当 Server1 出现时,应该有一些性能提升,因为子组件至少有 20 -30 个任务并行运行,但令我惊讶的是,它已经恶化了 3-4 倍,所以如果之前子组件的单次执行需要 2 秒,现在需要 7-8 秒,即对我们来说是一场灾难,因为子组件可能会被调用几百万次,我不确定如何解决这个问题,特别是因为 Server1 被认为是生产。任何让我开始解决问题的指示都会很棒。
如果您需要更多详细信息/说明,请告诉我。
谢谢,
米纳尔