我正在为一家小型研究机构设计一个集群。由于我们的计算需要大量内存,我正在寻找一种解决方案,允许我们的应用程序访问分布在不同节点上的整个内存。访问必须是“透明的”,因为我们不想修改我们正在使用的程序,所以排除了 RDMA 等解决方案。出于这个原因,还需要透明访问其他资源,如不同节点上的 GPGPU、存储、I/O 和 CPU。
我知道有一些硬件实现是通过 CPU 之间的 UPI 链路直接连接节点的,比如 HPE Superdome 和 Atos BullSequana。还有一些软件解决方案实现了虚拟化以实现聚合,比如 ScaleMP 和 TidalScale,它们使用普通以太网互连连接节点,并利用一些 AI 内存使用预测来提高性能。
不久前这里曾有人问过类似的问题,即。ScaleMP 的替代品?但自那时起,市场似乎已经发生了巨大变化。
我有两个问题:
- 硬件和软件解决方案之间的性能差异是什么,特别是在内存访问延迟方面?
- 目前是否有其他硬件或软件解决方案可以提供所描述的功能?