This work presents a heterogeneous communication library for clusters of processors and FPGAs. This library, Shoal, supports the Partitioned Global Address Space (PGAS) memory model for applications. PGAS is a shared memory model for clusters that creates a distinction between local and remote memory access. Through Shoal and its common application programming interface for hardware and software, applications can be more freely migrated to the optimal platform and deployed onto dynamic cluster topologies. The library is tested using a thorough suite of microbenchmarks to establish latency and throughput performance. We also show an implementation of the Jacobi iterative method that demonstrates the ease with which applications can be moved between platforms to yield faster run times. Through this work, we have demonstrated the feasibility of using a PGAS programming model for multi-node heterogeneous platforms.
翻译:这项工作为处理器和 FPGAs 群集提供了一个多样化的通信库。 这个库Shoal 支持全球共享地址空间(PGAS)用于应用的记忆模型。 PGAS 是一个群集共享的记忆模型,可以区分本地和远程的内存访问。 通过 Shoal 及其硬件和软件的通用应用程序编程界面,应用程序可以更自由地迁移到最佳平台,并安装到动态的群集表层中。该图书馆使用一套完整的微信标进行测试,以建立延缓和吞吐性能。 我们还展示了雅各比迭接方法的实施,该方法显示了在平台之间移动应用程序以产生更快运行时间的方便性。 通过这项工作,我们展示了使用 PGAS 编程模型用于多诺氏多元平台的可行性。