我看到英特尔(MIC)架构为“基于x86的GPGPU”,如果你熟悉的GPGPU的概念,你会发现你自己熟悉的英特尔MIC。
一种均匀聚类是一个系统的基础设施与多个执行单元(即CPU)的所有具有相同的功能。例如,具有四个Intel Xeon处理器的多核系统是同质的。
异构集群是具有多个具有不同特征(即CPU和GPU)的执行单元的系统基础结构。例如,我的带有英特尔i7 Haswell(4个CPU),Nvidia GT740M(GPU)和Intel HD Graphics 4600(GPU)的Levono z510是一个异构系统。
异构代码的一个例子可能是一个视频游戏。
视频游戏有一个控制代码,由一个CPU的一个代码执行,用于控制其他代理执行的操作,其在GPU上执行的发送着色器,要在其他内核或GPU上执行的物理计算等。
在这个例子中,您需要编写运行在CPU上的代码(因此它是“CPU意识”)和运行在GPU上的代码(因此它是“GPU意识”)。这实际上是通过使用不同的工具,不同的编程语言和不同的编程模型!
均匀码是代码,不需要知道ň不同的编程模型,每一个不同类型的代理。它只是相同的编程模型,语言和工具。
看看这个非常简单的sample code为MPI库。
代码全部写入C,它是相同的程序,只是采取不同的流程。
关于应用程序,那真是一个广泛的问题......
正如上面说我看到的英特尔MIC基于x86的ISA(至少其一部分)GPGPU。
的SDK特别有用(和你链接的视频中列出)与集群系统的工作是OpenCL,它可用于快速processing of images and computer vision,基本上用于任何需要相同的算法不同运行数十亿次输入(如加密应用程序/暴力强制)。
如果您在网页中搜索,你会得到一个想法上的一些基于OpenCL的项目。
要回答你的第二个问题,最好是问自己“什么不能利用MIC架构的?”我们很快就会发现,更多的算法是从Stream Processing的概念和相关主题遥远,其中包括Kernel之一,它适用于MIC越少。
这是过于广泛,这个论坛的一个问题。 – Jeff