首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >支持多核硬件的.NET框架

支持多核硬件的.NET框架
EN

Stack Overflow用户
提问于 2009-07-02 23:27:35
回答 3查看 808关注 0票数 5

我的任务是编写一个高性能、高可用性的服务,该服务将在多核盒上运行。

我需要使用任务并行库()来真正利用多核服务器吗?或者,如果我将更多的硬件(核心)抛到其中,服务会自动运行得更快吗?.NET框架在幕后为我提供了魔力吗?

作为推论,对于不使用TPL的.NET应用程序,通过使用更多内核(保持每个单独核心的规范相同)来升级服务器,会提高性能吗?

根据我的理解(仔细阅读乔·达菲的书和他的博客),你确实需要为多核进行编程。我的结论准确吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-07-02 23:34:46

这很难准确回答,因为并行处理不是一个通用的问题。您需要分析您的项目,以找到可以利用并行处理的地方。

如果您的应用程序可以很容易地分解成具体的独立任务,那么并行处理肯定会得到改进。如果它本质上主要是串行的,那么多个内核/线程根本不会有帮助。

如果您已经确定并行任务代表了流程的核心,那么并行库可以帮助您执行基本任务,并使您更容易完成任务。

票数 7
EN

Stack Overflow用户

发布于 2009-07-02 23:46:12

看看PLinq,它将在.Net 4.0中出现。它将为您提供许多并行处理能力,而不需要管理任务/加载算法。

票数 3
EN

Stack Overflow用户

发布于 2009-07-02 23:54:15

一个程序需要有多个执行路径才能利用超过一个核心/处理器的功能。通常,这是通过运行多个线程来完成的,因为大多数OS提供多个执行路径的唯一方法要么是运行多个进程(可执行文件),要么是在一个进程中运行多个线程。

有几个高级抽象内置在现代语言中,以便更容易地处理本质上是多线程的内容,但最好先学习基础知识;线程

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1077192

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档