69得票6回答
自动使用多个核心的R包?

我注意到在执行需要大量计算的程序时,R只使用一个核心。我希望利用我的多核处理器来加快程序运行速度。 我还没有深入研究这个问题,但我希望从您的评论中受益,因为我对计算机科学没有很好的了解,很难获得易于理解的信息。 是否有一个包可以让R在需要时自动使用多个核心? 我猜这并不那么简单。

65得票4回答
新的C# 5.0中的'async'和'await'关键字是否使用多个核心?

在C# 5.0语言中新增了两个关键字,分别是async和await。这两个关键字协同工作,能够使得C#方法异步运行而不会阻塞调用线程。 我的问题是,这些方法是否能够充分利用多核心并行运行,或者async方法在与调用者相同的线程核心上运行?

63得票4回答
多线程和多核的区别

我有几个小问题。 首先,多线程和多核之间有区别吗?它们是完全不同的东西还是多线程需要使用多个核心? 其次,大多数核心都有两个线程,但是在分析我的应用程序时,我注意到了许多不同的线程,范围从线程128到线程3460。是什么决定了计算机具有多少个线程? 谢谢

62得票9回答
如何控制进程运行在哪个核心上?

我可以理解如何编写使用多个进程或线程的程序:fork()一个新进程并使用IPC,或创建多个线程并使用这些通信机制。 我也了解上下文切换。也就是说,只有一个CPU的情况下,操作系统为每个进程安排时间(有许多调度算法可用),从而实现同时运行多个进程。 现在我们拥有了多核处理器(或多处理器计算机...

61得票8回答
如何利用所有核心进行 nmake 编译?

我刚换了一台新的四核电脑,发现nmake只使用了一个进程。 我曾经使用过make,它有一个开关“-j4”可以启动4个进程。那么nmake的同等选项是什么? [编辑] 根据下面的信息,我已经能够在我的qmake项目文件中添加一个命令: QMAKE_CXXFLAGS += /MP 这对于...

61得票22回答
你如何利用多核技术?

作为一个来自企业网站开发领域的HPC世界中的人,我总是很好奇现实世界中的开发者如何利用并行计算。现在所有芯片都变成了多核心,这个问题变得更加重要,当一颗芯片上有数千个核心而不仅仅是几个时,这个问题将变得更加重要。 我的问题是: 这对你的软件路线图有什么影响? 我特别感兴趣的是关于多核如何...

59得票3回答
Haskell轻量级线程的开销及在多核上的使用

我一直在阅读《Real World Haskell》这本书,其中有一个关于并发和并行的章节。我的问题如下: 1. 由于Haskell线程实际上只是一个"真实"操作系统线程中的多个"虚拟"线程,这是否意味着创建大量线程(如1000个)将不会对性能产生重大影响?换句话说,我们可以说使用forkI...

56得票5回答
SMP核心、进程和线程是如何精确协同工作的?

在单核CPU上,每个进程都在操作系统中运行,CPU会在不同的进程间跳转以最大程度地利用自身。一个进程可以有多个线程,在这种情况下,当CPU运行在相应的进程上时,它会依次运行这些线程。 现在,在多核CPU上: 多个核心是否会同时运行每个进程,或者在某一特定时间点,多个核心是否可以分别在不同...

54得票7回答
线程和进程与多线程和多核/多处理器:它们是如何映射的?

我很困惑,但是下面的讨论解决了我的疑惑: 多进程,多线程,超线程,多核 但它从硬件角度回答了问题。我想知道这些硬件特性如何映射到软件上? 一个显而易见的事情是,MultiProcessor(= Mutlicpu)和MultiCore之间没有区别,除了在多核系统中,所有CPU都驻留在一个芯...

53得票7回答
C++并行化库:OpenMP与Thread Building Blocks比较

我要改装我的自定义图形引擎,以利用多核CPU。更准确地说,我正在寻找一个可以将循环并行化的库。 在我看来,OpenMP和Intel的Thread Building Blocks都非常适合这项工作。而且,这两个库都受到Visual Studio的C++编译器和大多数其他流行编译器的支持。同时,...