Non-blocking parallel subset construction on shared-memory multicore architectures

Hyewon Choi, Bernd Burgstaller

Research output: Chapter in Book/Report/Conference proceedingConference contribution

5 Citations (Scopus)

Abstract

We discuss ways to effectively parallelize the sub- set construction algorithm, which is used to con- vert non-deterministic finite automata (NFAs) to deterministic finite automata (DFAs). This con- version is at the heart of string pattern match- ing based on regular expressions and thus has many applications in text processing, compilers, scripting languages and web browsers, security and more recently also with DNA sequence analysis. We discuss sources of parallelism in the sequen- tial algorithm and their profitability on shared- memory multicore architectures. Our NFA and DFA data-structures are designed to improve scal- ability and keep communication and synchroniza- tion overhead to a minimum. We present three dif- ferent ways for synchronization; the performance of our non-blocking synchronization based on a compare-and-swap (CAS) primitive compares fa- vorably to a lock-based approach. We consider structural NFA properties and their relationship to scalability on highly-parallel multicore architec- tures. We demonstrate the efficiency of our paral- lel subset construction algorithm through several benchmarks run on a 4-CPU (40 cores) node of the Intel Manycore Testing Lab. Achieved speedups are up to a factor of 32x with 40 cores.

Original languageEnglish
Title of host publicationParallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013
PublisherAustralian Computer Society
Pages13-20
Number of pages8
Volume140
ISBN (Print)9781921770258
Publication statusPublished - 2013 Jan 1
Event11th Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013 - Adelaide, Australia
Duration: 2013 Jan 292013 Feb 1

Other

Other11th Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013
CountryAustralia
CityAdelaide
Period13/1/2913/2/1

Fingerprint

Finite automata
Data storage equipment
Synchronization
Scalability
Text processing
Web browsers
Pattern matching
DNA sequences
Set theory
Program processors
Data structures
Profitability
Communication
Testing

All Science Journal Classification (ASJC) codes

  • Computer Networks and Communications
  • Computer Science Applications
  • Hardware and Architecture
  • Information Systems
  • Software

Cite this

Choi, H., & Burgstaller, B. (2013). Non-blocking parallel subset construction on shared-memory multicore architectures. In Parallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013 (Vol. 140, pp. 13-20). Australian Computer Society.
Choi, Hyewon ; Burgstaller, Bernd. / Non-blocking parallel subset construction on shared-memory multicore architectures. Parallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013. Vol. 140 Australian Computer Society, 2013. pp. 13-20
@inproceedings{6eb1fd4cc0094faf9cfc3586a7d817bd,
title = "Non-blocking parallel subset construction on shared-memory multicore architectures",
abstract = "We discuss ways to effectively parallelize the sub- set construction algorithm, which is used to con- vert non-deterministic finite automata (NFAs) to deterministic finite automata (DFAs). This con- version is at the heart of string pattern match- ing based on regular expressions and thus has many applications in text processing, compilers, scripting languages and web browsers, security and more recently also with DNA sequence analysis. We discuss sources of parallelism in the sequen- tial algorithm and their profitability on shared- memory multicore architectures. Our NFA and DFA data-structures are designed to improve scal- ability and keep communication and synchroniza- tion overhead to a minimum. We present three dif- ferent ways for synchronization; the performance of our non-blocking synchronization based on a compare-and-swap (CAS) primitive compares fa- vorably to a lock-based approach. We consider structural NFA properties and their relationship to scalability on highly-parallel multicore architec- tures. We demonstrate the efficiency of our paral- lel subset construction algorithm through several benchmarks run on a 4-CPU (40 cores) node of the Intel Manycore Testing Lab. Achieved speedups are up to a factor of 32x with 40 cores.",
author = "Hyewon Choi and Bernd Burgstaller",
year = "2013",
month = "1",
day = "1",
language = "English",
isbn = "9781921770258",
volume = "140",
pages = "13--20",
booktitle = "Parallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013",
publisher = "Australian Computer Society",
address = "Australia",

}

Choi, H & Burgstaller, B 2013, Non-blocking parallel subset construction on shared-memory multicore architectures. in Parallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013. vol. 140, Australian Computer Society, pp. 13-20, 11th Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013, Adelaide, Australia, 13/1/29.

Non-blocking parallel subset construction on shared-memory multicore architectures. / Choi, Hyewon; Burgstaller, Bernd.

Parallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013. Vol. 140 Australian Computer Society, 2013. p. 13-20.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

TY - GEN

T1 - Non-blocking parallel subset construction on shared-memory multicore architectures

AU - Choi, Hyewon

AU - Burgstaller, Bernd

PY - 2013/1/1

Y1 - 2013/1/1

N2 - We discuss ways to effectively parallelize the sub- set construction algorithm, which is used to con- vert non-deterministic finite automata (NFAs) to deterministic finite automata (DFAs). This con- version is at the heart of string pattern match- ing based on regular expressions and thus has many applications in text processing, compilers, scripting languages and web browsers, security and more recently also with DNA sequence analysis. We discuss sources of parallelism in the sequen- tial algorithm and their profitability on shared- memory multicore architectures. Our NFA and DFA data-structures are designed to improve scal- ability and keep communication and synchroniza- tion overhead to a minimum. We present three dif- ferent ways for synchronization; the performance of our non-blocking synchronization based on a compare-and-swap (CAS) primitive compares fa- vorably to a lock-based approach. We consider structural NFA properties and their relationship to scalability on highly-parallel multicore architec- tures. We demonstrate the efficiency of our paral- lel subset construction algorithm through several benchmarks run on a 4-CPU (40 cores) node of the Intel Manycore Testing Lab. Achieved speedups are up to a factor of 32x with 40 cores.

AB - We discuss ways to effectively parallelize the sub- set construction algorithm, which is used to con- vert non-deterministic finite automata (NFAs) to deterministic finite automata (DFAs). This con- version is at the heart of string pattern match- ing based on regular expressions and thus has many applications in text processing, compilers, scripting languages and web browsers, security and more recently also with DNA sequence analysis. We discuss sources of parallelism in the sequen- tial algorithm and their profitability on shared- memory multicore architectures. Our NFA and DFA data-structures are designed to improve scal- ability and keep communication and synchroniza- tion overhead to a minimum. We present three dif- ferent ways for synchronization; the performance of our non-blocking synchronization based on a compare-and-swap (CAS) primitive compares fa- vorably to a lock-based approach. We consider structural NFA properties and their relationship to scalability on highly-parallel multicore architec- tures. We demonstrate the efficiency of our paral- lel subset construction algorithm through several benchmarks run on a 4-CPU (40 cores) node of the Intel Manycore Testing Lab. Achieved speedups are up to a factor of 32x with 40 cores.

UR - http://www.scopus.com/inward/record.url?scp=84906993782&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84906993782&partnerID=8YFLogxK

M3 - Conference contribution

SN - 9781921770258

VL - 140

SP - 13

EP - 20

BT - Parallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013

PB - Australian Computer Society

ER -

Choi H, Burgstaller B. Non-blocking parallel subset construction on shared-memory multicore architectures. In Parallel and Distributed Computing 2013 - Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing, AusPDC 2013. Vol. 140. Australian Computer Society. 2013. p. 13-20