Skip to content

The implementation of perfect hashing based parallel failureless Aho-Corasick algorithm on Graphic Processing Units

Notifications You must be signed in to change notification settings

brucelinco/Perfect-hashing-based-PFAC-on-GPUs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 

Repository files navigation

Perfect hashing based PFAC on GPUs

The file structure is as following.

main.cc                          // main function
+-CreateTable/
| +-create_PFAC_table_reorder.c    // package 3 kinds of creating table method
|   +-create_table_reorder.c       // read pattern as normal text or with escape character
|   | +-ctdef.h                    // create table definitions, and fgetc_ext()
|   |
|   +-charset_table_reorder.c      // read pattern as char set representation
|     +-ctdef.h
|
+-PHF/
  +-phf.c                          // create perfect hash function

Use make to compile. The executable file is named as 'gphf'.

usage:

./gphf <pattern file name> <type> <PHF width> <input file name>

type:

  0  normal text
  1  text with escape character
  2  character set representation

Publications

  1. Cheng-Hung Lin, Jin-Cheng Li, Chen-Hsiung Liu, and Shih-Chieh Chang, "Perfect Hashing Based Parallel Algorithms for Multiple String Matching on Graphic Processing Units, " in IEEE Transactions on Parallel and Distributed Systems (TPDS), Volume: 28, No. 9, Sept. 1, pp.2639 - 2650, 2017.(SCI)
  2. Cheng-Hung Lin, Chen-Hsiung Liu, Shih-Chieh Chang, and Wing-Kai Hon, "Memory-Efficient Pattern Matching Architectures Using Perfect Hashing on Graphic Processing Units," 31st Annual IEEE International Conference on Computer Communications (INFOCOM), Orlando, Florida, USA, March 25-30, 2012.

About

The implementation of perfect hashing based parallel failureless Aho-Corasick algorithm on Graphic Processing Units

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published