2017-03-07 62 views
-4

我写C语言编写一个程序,需要并行运行多个任务。在做了研究之后,OpenMP API非常适合。进一步的研究表明有使用OpenMP的弊端;特别是它仅限于共享内存多处理器平台。如何确定我的操作系统是共享内存的多平台

如何能确定我的操作系统+硬件是共享内存多平台?

我认为最现代化的机器支持多处理。

+1

反向:OpenMP是您系统上的“多平台共享内存多处理”框架。 https://en.wikipedia.org/wiki/OpenMP –

+0

从程序员的角度来看,这是一个API。所以你的回答并没有告诉我有关它是否被我的硬件或操作系统支持。 – Maverick

回答

2

如何确定我的OS +硬件是否是共享内存多处理器平台?

如果不是,你可能知道,所以已经。

现代计算机(包括台式机,笔记本电脑,移动设备,并且最服务器)几乎总是共享存储器平台,并且这样可以支持OpenMP的。不属于这一类硬件是罕见的,通常分为两种情况之一:

  • 非常大的服务器,集群计算机和超级计算机。

  • 深奥和实验体系。

+0

这就是我的想法,谢谢。我认为'共享内存'不是技术性的;事实上就像我安装更多的RAM一样,操作系统自动知道如何使用它。 – Maverick

+0

“共享内存”仅仅意味着系统中的所有处理器都可以访问系统中的所有内存 - 也就是说,处理器并不都有自己的独立内存。确切地说, – duskwuff

+0

。看起来作者很罗嗦,它把我抛弃了。我很欣赏清晰度。 – Maverick

相关问题