Version 18 (modified by cameron, 7 years ago) (diff)


Parabix technology is a high-performance programming framework for streaming text processing applications, leveraging both SIMD and multicore parallel processing features.

Parallel Bit Streams

The Parabix framework is based on the concept of parallel bit streams, a fundamentally new transform representation of text. Byte-oriented character stream data is first transformed into eight parallel bit streams, each bit stream comprising one bit per character code unit. Code units may be ASCII characters or UTF-8 bytes, for example, with one parallel bit stream defined for each of bit 0 through bit 7 of each code unit. Given such a representation, the 128-bit SIMD (single-instruction multiple-data) registers of the SSE (Intel architecture SIMD technology) or Altivec (Power PC architecture) may be used to process 128 code unit positions at a time.

The Pablo Language and Compilers

The PabloLanguage allows parallel bit stream programs to be conveniently written using primitives that manipulate arbitrary-length bitstreams.

IDISA Run-Time Libraries

The IDISA project defines an abstraction for portable SIMD programming featuring support for operations at all power-of-2 field widths as well as transitions between those field-widths (inductive doubling architecture).

Commercial Applications

Parabix software as provided here as open source software under Open Software License 3.0. Patents pending. Commercial licensing is available through International Characters, Inc., an SFU spin-off company based on Prof. Cameron's research. Parabix is a trademark of International Characters.