Changes between Version 15 and Version 16 of ICgrep


Ignore:
Timestamp:
Jun 5, 2015, 10:32:57 AM (4 years ago)
Author:
cameron
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ICgrep

    v15 v16  
    1 == ICgrep:  The Modern Grep Replacement ==
     1== icGrep:  The Modern Grep Replacement ==
    22
    33Building off the Parabix transform representation of text as well as
     
    77as well as broad support for Unicode regular expressions.
    88
    9 ICgrep embodies a completely new algorithmic approach to high-performance regular expression
     9icGrep embodies a completely new algorithmic approach to high-performance regular expression
    1010matching.   In contrast to the byte-at-a-time approach of NFA, DFA, and backtracking matchers,
    1111icGrep 1.0 processes UTF-8 input streams 128 code units at a time using the SSE2 technology available on
     
    1818== Predictable, Consistent Performance ==
    1919
    20 === ICgrep 1.0 Performance ===
     20=== icGrep 1.0 Performance ===
    2121
    2222While GNU grep and other grep utilities often exhibit dramatic slowdown
     
    2727more common.   
    2828
    29 ICgrep has a significant compilation overhead that may dominate searches in
     29icGrep has a significant compilation overhead that may dominate searches in
    3030short files of less than 10MB in size.
    3131
    32 ICgrep also has the overhead of applying the Parabix transform to input text,
     32icGrep also has the overhead of applying the Parabix transform to input text,
    3333roughly about 1 CPU cycle per byte on modern processors.   However, once
    3434transformed, the bitwise data parallel methods of icGrep often allow searches
     
    4141=== Performance Roadmap ===
    4242
    43 ICgrep 1.0 is a single-threaded search tool relying on widely available SSE2 technology
     43icGrep 1.0 is a single-threaded search tool relying on widely available SSE2 technology
    4444and the LLVM 3.5 compiler infrastructure.   However, our research work has shown that
    4545we can accelerate icGrep using multithreading with pipeline parallelism, wider SIMD technologies
     
    5858=== ICgrep 1.0 ===
    5959
    60 ICgrep 1.0 accepts ASCII or UTF-8 input files and provides a full suite of
     60icGrep 1.0 accepts ASCII or UTF-8 input files and provides a full suite of
    6161Unicode processing features meeting the requirements of Unicode Level 1 support
    6262of [http://www.unicode.org/reports/tr18/ Unicode Technical Standard #18].
    6363See [wiki:IcGrepUnicodeLevel1 Unicode Level 1 Support in icGrep] for details.
    6464
    65 === ICgrep Unicode Roadmap ===
     65=== icGrep Unicode Roadmap ===
    6666
    6767We are pleased to be moving forward with implementation of Unicode Level 2 support
    6868within icGrep with the support of a [http://googleresearch.blogspot.ca/2015/02/google-faculty-research-awards-winter.html Google Faculty Research Award].
    6969
    70 == ICgrep Regular Expression Syntax ==
     70== icGrep Regular Expression Syntax ==
    7171
    72 ICgrep uses an extended regular expression syntax broadly compatible with egrep
     72icGrep uses an extended regular expression syntax broadly compatible with egrep
    7373and including both the "Perl-compatible" extensions of PCRE as well as the
    74 Unicode regular expression features of the ICU software distribution.  ICgrep
     74Unicode regular expression features of the ICU software distribution.  icGrep
    7575does not support back references.  For more details, see the [wiki:ICgrepSyntax] page.
    7676
    77 == ICgrep Features and Options ==
     77== icGrep Features and Options ==
    7878
    7979=== Standard Grep Options ===
     
    125125
    126126
    127 == ICgrep Downloads ==
     127== icGrep Downloads ==
    128128
    129129Browse the [source:tags/icgrep1.0 icgrep 1.0 source] code!
     
    145145== Parabix Technology ==
    146146
    147 ICgrep is built using Parabix technology, developed at Simon Fraser University and commercialized by
     147icGrep is built using Parabix technology, developed at Simon Fraser University and commercialized by
    148148[http://www.international-characters.com/ International Characters, Inc].   
    149149Patents on Parabix technology have been dedicated for free use in open source software, research, teaching and experimentation [http://www.international-characters.com/covenant [covenant]].