FlowLog is demonstrated, a Datalog compiler that turns Souffl\'e-style programs into Differential Dataflow executables for efficient and extensible static analysis and consistently outperforms state-of-the-art engines in runtime while remaining memory-efficient and scaling better.
Abstract
Datalog is widely used to build static analyzers, yet existing engines often force a tradeoff between efficiency and extensibility. In practice, static analyses are not run once and forgotten: users edit facts, tune rules, diagnose bottlenecks, and often need semantics beyond standard Datalog, leaving these tasks to ad hoc tooling or invasive engine rewrites. We demonstrate FlowLog, a Datalog compiler that turns Souffl\'e-style programs into Differential Dataflow executables for efficient and extensible static analysis. Across 24 benchmarks derived from real-world workloads, FlowLog consistently outperforms state-of-the-art engines in runtime while remaining memory-efficient and scaling better. The demonstration uses a DOOP points-to analysis. Attendees run it, switching the same program from one-shot to incremental evaluation that retracts a fact and updates results in milliseconds; tune it, inspecting per-operator costs in a browser-based profiler and repairing a bad join order; and extend it with a k-core example beyond standard Datalog.
Torchy is presented, a tracing JIT compiler for PyTorch, one of the mainstream eager-mode frameworks, that achieves similar performance as data-flow frameworks, while providing the same semantics of straight-away execution.
A line of work that treats future-proofness as an abstraction-design problem is summarized, identifying boundaries across the data processing stack where concerns must evolve independently, and design interfaces that preserve enough structure across that boundary for optimization.
Jana Giceva· Proceedings of the VLDB Endo...· 0 citations
This paper systematically evaluates the performance across three different native vectorized execution engines, including C++ based Velox and ClickHouse, and Rust based DataFusion, for the widely used big data engine Apache Spark, and proposes a cost model driven operator placement strategy that adaptively schedules op...
This paper revisits the connection between Datalog and relational databases, advocating recursive SQL as a backend for Datalog evaluation, and presents a compilation framework that translates Datalog programs, particularly those in the Linear Datalog fragment, into equivalent recursive SQL queries.
Amir Shaikhha, Anna Herlihy, Hung Q. Ngo· 0 citations
PyFlow is presented, a generic IFDS-based static-analysis framework for Python that provides a multi-stage intermediate-representation pipeline and a generic IFDS solver parameterized by abstract domains and concludes with lessons learned from building IFDS analyses for Python.
MonoIFDS is presented, a variant of the IFDS algorithm that combines IFDS-style procedure summaries with bottom-up inter-procedural propagation and uses a modified encoding of the data-flow state and propagation to improve the efficiency of handling large analysis states, and to enable optimizations, such as optimizing...
Fabian Schiebel, Eric Bodden· European Conference on Objec...· 0 citations
We use cookies to run the site and, with your consent, for analytics and to show ads.
See our Cookie Policy.