We introduce Seriema, a middleware that integrates RDMA-based remote invocation, asynchronous data transfer, NUMA-aware automatic management of registered memory, and message aggregation in idiomatic C++1x. Seriema supports the notion that remote invocation and asynchronous data transfer are complementary services that, when tightly-integrated, allow distributed data structures, overlay networks, and Cloud & datacenter service applications to be expressed effectively and naturally, resembling sequential code. In order to evaluate the usability of Seriema, we implement a Monte-Carlo Tree Search (MCTS) application framework, which runs distributed simulations given only a sequential problem specification. Micro-benchmarks show that Seriema provides remote invocations with low overhead, and that our MCTS application framework scales well up to the number of non-hyperthreaded CPU cores while simulating plays of the board game Hex.
翻译:我们引入了Seriema,这是一个集成基于RDMA的远程应用、无同步数据传输、NUMA觉察到的登记记忆自动管理和信息集成于单调C++1x的中间软件。Seriema支持以下概念,即远程引用和无同步数据传输是辅助服务,当紧密整合时,允许分布式数据结构、重叠网络和云和数据中心服务应用程序有效和自然地表达,并类似相继代码。为了评估Seriema的可用性,我们实施了蒙特卡洛树搜索(MCTS)应用框架,该应用框架运行分布式模拟,仅按连续的问题规格进行。微小信标示Seriema提供低高端远程操作,我们的 MCTS应用框架在模拟游戏 Hex 玩游戏的同时,将非节读的CPU核心数量提高到一定的尺度。