Thread cooperation in multicore architectures for frequency counting over multiple data streams

Sudipto Das, Shyam Antony, Divyakant Agrawal, Amr El Abbadi

Research output: Chapter in Book/Report/Conference proceedingChapter

41 Citations (Scopus)

Abstract

Many real-world data stream analysis applications such as network monitoring, click stream analysis, and others require combining multiple streams of data arriving from multiple sources. This is referred to as multi-stream analysis. To deal with high stream arrival rates, it is desirable that such systems be capable of supporting very high processing throughput. The advent of multicore processors and powerful servers driven by these processors calls for efficient parallel designs that can effectively utilize the parallelism of the multicores, since performance improvement is possible only through effective parallelism. In this paper, we address the problem of parallelizing multi-stream analysis in the context of multicore processors. Specifically, we concentrate on parallelizing frequent elements, top-k, and frequency counting over multiple streams. We discuss the challenges in designing an efficient parallel system for multi-stream processing. Our evaluation and analysis reveals that traditional "contention" based locking results in excessive overhead and wait, which in turn leads to severe performance degradation in modern multicore architectures. Based on our analysis, we propose a "cooperation" based locking paradigm for efficient parallelization of frequency counting. The proposed "cooperation" based paradigm removes waits associated with synchronization, and allows replacing locks by much cheaper atomic synchronization primitives. Our implementation of the proposed paradigm to parallelize a well known frequency counting algorithm shows the benefits of the proposed "cooperation" based locking paradigm when compared to the traditional "contention" based locking paradigm. In our experiments, the proposed "cooperation" based design outperforms the traditional "contention" based design by a factor of 2 - 5.5X for synthetic zipfian data sets.

Original languageEnglish
Title of host publicationProceedings of the VLDB Endowment
Pages217-228
Number of pages12
Volume2
Edition1
Publication statusPublished - 2009
Externally publishedYes

    Fingerprint

ASJC Scopus subject areas

  • Computer Science (miscellaneous)
  • Computer Science(all)

Cite this

Das, S., Antony, S., Agrawal, D., & El Abbadi, A. (2009). Thread cooperation in multicore architectures for frequency counting over multiple data streams. In Proceedings of the VLDB Endowment (1 ed., Vol. 2, pp. 217-228)