ICFP 2024
Mon 2 - Sat 7 September 2024 Milan, Italy
Fri 6 Sep 2024 09:00 - 10:00 at Meeting 3 - Session 1

Logic programming engines have historically targeted conventional hardware, often CPUs on a single thread. This is puzzling, because logic programming engines often confront enormous state spaces, and logic programming workloads often expose massive amounts of parallelism in principle. In this talk, I will discuss our work in scaling logic programming engines to multi-core servers, supercomputing clusters, and state-of-the-art GPUs. I focus on Datalog, a language increasingly used for static analysis, graph analytics, and knowledge representation. Datalog’s simple semantics enable the potential for massive parallelism without the need for communication, the bane of scalability. I will discuss the implementation of state-of-the-art Datalog engines on servers (with unified memory), GPUs (exposing massive memory bandwidth, but necessitating a SIMT approach), and supercomputing clusters (necessitating heterogenous communication). In the context of context-sensitive program analysis, I will discuss the trade-offs inherent to each of these architectures, and will discuss the challenges that lie ahead in the future of massively-parallel logic programming beyond Datalog.

Fri 6 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change