你所指的是什么 的 单系统映像(SSI) 强> 计算。该术语描述了用于高性能计算(不一定是分布式计算)的计算体系结构,其中单个操作系统正在运行,因此应用程序员将能够在该单个操作系统内运行多个线程。这对应用程序开发人员来说具有很大的优势,即可以应用并行计算范例,开发人员不必处理来自分布式计算的复杂性,即集群中多台计算机之间的进程间计算以及缺少共享内存。
集群计算在过去获得了更多的兴趣。这种趋势背后的驱动因素之一是集群可以轻松地在通用云服务之上实现,并且通常集群方法允许扩展到更大的尺寸,这通常是Web规模应用程序的要求。
但是,您特别要求SSI系统。从高性能计算领域我们知道很多这样的系统。其中一个非常受欢迎的是Altix系列 https://en.wikipedia.org/wiki/Altix 。这些是非常大规模的计算机,通常具有数千个处理器和terra-bytes的RAM并运行SSI Linux内核。从硬件的角度来看,各个处理器和内存板是互连的,并支持所谓的高速缓存一致的非均匀内存访问(cc-NUMA)。这基本上是一种机制,给操作系统一种印象,即它正在使用一个大型线性内存块,实际上内存分散在许多计算节点上。显然,这意味着存在更快的存储区域和其他更慢的存储区域。应用程序开发人员需要牢记这一点。 Altix使用专有的高带宽互连架构,允许它们非常快速地移动集群中的内存块。您可能认为这些机器非常昂贵,通常只在研究设施中使用。
有一些方法可以在货架上的商品硬件上实现类似的功能。在过去的Beowulf( https://en.wikipedia.org/wiki/Beowulf_cluster )项目非常受欢迎,并在实践中用于相当多的安装。对于这个项目,我不太确定你是否能够推出具有现代Linux内核的安装。类似的OpenSSI( https://en.wikipedia.org/wiki/OpenSSI )和OpenMosix( https://en.wikipedia.org/wiki/OpenMosix )项目似乎没有提供任何最近的版本。也许Kerrighed( http://www.kerrighed.org/wiki/index.php/Main_Page 至少值得一试,你应该能够在运行的顶级x86_64架构上安装。
你提到你想要在使用ARM处理器架构的Pi上推出类似的东西。据我所知,上述方法都没有支持ARM。然而,在集群领域中,MPI是一种被广泛使用的标准。有一些关于如何让MPI在一组Pi上运行的教程( http://thenewstack.io/installing-mpi-python-raspberry-pi-cluster-runs-docker/ 并且这些集群用于教授分布式计算。它们的性能绝不能与商业集群系统竞争。然而,该架构是相同的,因此这些装置非常好地服务于教学目的。想象一下你可以带着一个手提箱带来的集群系统!