Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory System

Processing-in-Memory (PIM) is an emerging computing paradigm exploiting a cutting-edge memory device (PIM device) that integrates hundreds to thousands of processing units with the memory modules. A data-intensive application running in a host system can offload a portion of its tasks to the process...

Full description

Saved in:
Bibliographic Details
Main Authors: Jeonghyeon Joo, Hyojune Kim, Hyuck Han, Eul Gyu Im, Sooyong Kang
Format: Article
Language:English
Published: IEEE 2025-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/10851277/
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1832576773916721152
author Jeonghyeon Joo
Hyojune Kim
Hyuck Han
Eul Gyu Im
Sooyong Kang
author_facet Jeonghyeon Joo
Hyojune Kim
Hyuck Han
Eul Gyu Im
Sooyong Kang
author_sort Jeonghyeon Joo
collection DOAJ
description Processing-in-Memory (PIM) is an emerging computing paradigm exploiting a cutting-edge memory device (PIM device) that integrates hundreds to thousands of processing units with the memory modules. A data-intensive application running in a host system can offload a portion of its tasks to the processing units in the PIM device, not only to exploit their processing capabilities but also to mitigate the contention in host memory accesses. However, such task offloading has the intrinsic overhead of transferring data between host memory and PIM device, which frequently hinders obtaining performance gain by exploiting the device. In this paper, we present a framework for a PIM-enabled regular expression matching that offloads the pattern-matching (scanning) engine to the PIM device, taking care to minimize the overhead. We implement an application based on the framework that runs on an off-the-shelf PIM system that has recently emerged into the market, and investigate the feasibility of Processing-in-Memory by comparing its performance with its PIM-oblivious implementation. Experimental results on a real system show that our application reduces the overall execution time by up to 96% compared with the multithreaded PIM-oblivious application when the input data size is 1 GB.
format Article
id doaj-art-99d82bd21caf48c8b4d192ed80d055f3
institution Kabale University
issn 2169-3536
language English
publishDate 2025-01-01
publisher IEEE
record_format Article
series IEEE Access
spelling doaj-art-99d82bd21caf48c8b4d192ed80d055f32025-01-31T00:01:56ZengIEEEIEEE Access2169-35362025-01-0113189371895110.1109/ACCESS.2025.353294410851277Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory SystemJeonghyeon Joo0Hyojune Kim1https://orcid.org/0009-0004-1785-0826Hyuck Han2https://orcid.org/0000-0003-0936-9181Eul Gyu Im3https://orcid.org/0000-0002-4130-513XSooyong Kang4https://orcid.org/0000-0002-5332-7846Department of Computer Science, Hanyang University, Seoul, South KoreaDepartment of Computer Science, Hanyang University, Seoul, South KoreaDepartment of Computer Science, Dongduk Women’s University, Seoul, South KoreaDepartment of Computer Science, Hanyang University, Seoul, South KoreaDepartment of Computer Science, Hanyang University, Seoul, South KoreaProcessing-in-Memory (PIM) is an emerging computing paradigm exploiting a cutting-edge memory device (PIM device) that integrates hundreds to thousands of processing units with the memory modules. A data-intensive application running in a host system can offload a portion of its tasks to the processing units in the PIM device, not only to exploit their processing capabilities but also to mitigate the contention in host memory accesses. However, such task offloading has the intrinsic overhead of transferring data between host memory and PIM device, which frequently hinders obtaining performance gain by exploiting the device. In this paper, we present a framework for a PIM-enabled regular expression matching that offloads the pattern-matching (scanning) engine to the PIM device, taking care to minimize the overhead. We implement an application based on the framework that runs on an off-the-shelf PIM system that has recently emerged into the market, and investigate the feasibility of Processing-in-Memory by comparing its performance with its PIM-oblivious implementation. Experimental results on a real system show that our application reduces the overall execution time by up to 96% compared with the multithreaded PIM-oblivious application when the input data size is 1 GB.https://ieeexplore.ieee.org/document/10851277/Processing-in-memoryin-memory processingregular expression matching
spellingShingle Jeonghyeon Joo
Hyojune Kim
Hyuck Han
Eul Gyu Im
Sooyong Kang
Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory System
IEEE Access
Processing-in-memory
in-memory processing
regular expression matching
title Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory System
title_full Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory System
title_fullStr Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory System
title_full_unstemmed Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory System
title_short Highly Parallel Regular Expression Matching Using a Real Processing-in-Memory System
title_sort highly parallel regular expression matching using a real processing in memory system
topic Processing-in-memory
in-memory processing
regular expression matching
url https://ieeexplore.ieee.org/document/10851277/
work_keys_str_mv AT jeonghyeonjoo highlyparallelregularexpressionmatchingusingarealprocessinginmemorysystem
AT hyojunekim highlyparallelregularexpressionmatchingusingarealprocessinginmemorysystem
AT hyuckhan highlyparallelregularexpressionmatchingusingarealprocessinginmemorysystem
AT eulgyuim highlyparallelregularexpressionmatchingusingarealprocessinginmemorysystem
AT sooyongkang highlyparallelregularexpressionmatchingusingarealprocessinginmemorysystem