High performance content-based matching using GPUs
Alessandro Margara, Gianpaolo Cugola · 2011
Matching incoming event notifications against received sub-scriptions is a fundamental part of every publish-subscribe infrastructure. In the case of content-based systems this is a fairly complex and time consuming task, whose performance impacts that of the entire system. In the past, several algo-rithms have been proposed for efficient content-based event matching. While they differ in most aspects, they have in common the fact of being conceived to run on conventional, sequential hardware. On the other hand, modern Graphi-cal Processing Units (GPUs) offer off-the-shelf, highly par-allel hardware, at a reasonable cost. Unfortunately, GPUs introduce a totally new model of computation, which re-quires algorithms to be fully re-designed. In this paper, we describe a new content-based matching algorithm designed to run efficiently on CUDA, a widespread architecture for general purpose programming on GPUs. A detailed com-parison with SFF, the matching algorithm of Siena, known for its efficiency, demonstrates how the use of GPUs can bring impressive speedups in content-based matching. At the same time, this analysis demonstrates the peculiar as-pects of CUDA programming that mostly impact perfor-mance.