We introduce SpDISTAL, a compiler for sparse tensor algebra that targets distributed systems. SpDISTAL combines separate descriptions of tensor algebra expressions, sparse data structures, data distribution, and computation distribution. Thus, it enables distributed execution of sparse tensor algebra expressions with a wide variety of sparse data structures and data distributions. SpDISTAL is implemented as a C++ library that targets a distributed task-based runtime system and can generate code for nodes with both multi-core CPUs and multiple GPUs. SpDISTAL generates distributed code that achieves performance competitive with hand-written distributed functions for specific sparse tensor algebra expressions and that outperforms general interpretation-based systems by one to two orders of magnitude.
翻译:我们引入了SpDISTAL, 这是一种针对分布式系统的分散式高温代数的编译器。 SpDISTAL 组合了对高温代数表达式、稀疏的数据结构、数据分布和计算分布的分别描述。 因此, 它能够以多种分散式数据结构和数据分布方式对稀疏的高温代数表达式进行分布式执行。 SpDISTAL 是一个 C++ 图书馆, 以分布式任务运行时间系统为目标, 可以生成多核心CPU 和多个 GPU 的节点代码。 SpDISTAL 生成了分布式代码, 使特定稀疏多高温代数表达式的手写分布式功能实现性能竞争力, 并且使一般判读系统比一般判读系统高出一至两级。