Speculative out-of-order event processing with software transaction memory

  • Authors:
  • Andrey Brito;Christof Fetzer;Heiko Sturzrehm;Pascal Felber

  • Affiliations:
  • TU Dresden, Germany;TU Dresden, Germany;University of Neuchâtel, Switzerland;University of Neuchâtel, Switzerland

  • Venue:
  • Proceedings of the second international conference on Distributed event-based systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

In event stream applications, events flow through a network of components that perform various types of operations, e.g., filtering, aggregation, transformation. When the operation only depends on the input events, one can trivially parallelize its processing by replicating the associated components. This is not possible, however, with stateful components or when there exist dependencies between the events. Parallel versions of a number of simple stream mining operators have been designed, but, in general, complex and user-defined operators are limited by single thread performance. In this paper, we propose leveraging the processing capabilities of multi-core processors to improve the efficiency of stateful components using optimistic parallelization techniques (as provided by transactional memory). We show that, even though some speculative event executions might need to be disregarded, the overall throughput increases noticeably in the general case and latency can be reduced by pre-processing out-of-order events. Moreover, we show how simple conflict predictors can boost the parallelism even more and reduce the amount of resources used for a given level of parallelism.