... | @@ -38,6 +38,25 @@ input: This is just 1 abbreviated example of character stream input containing |
... | @@ -38,6 +38,25 @@ input: This is just 1 abbreviated example of character stream input containing |
|
|
|
|
|
Read about the [Parabix Character Class Compilers](CharacterClassCompiler) for more information.
|
|
Read about the [Parabix Character Class Compilers](CharacterClassCompiler) for more information.
|
|
|
|
|
|
|
|
## Programming Model: Kernels + Stream Sets = Programs
|
|
|
|
|
|
|
|
Parabix programming is based on the concepts of computational kernels operating on sets of data streams.
|
|
|
|
|
|
|
|
### Data Streams and Stream Sets
|
|
|
|
|
|
|
|
Data streams are streams of data fields all of a given bit width. If the bit width is N, the type
|
|
|
|
of the field is said to be `iN`, an integer of N bits. Bit streams are streams of type `i1`.
|
|
|
|
|
|
|
|
Stream sets are sets of data streams all of the same type and in one-to-one correspondence. An `8 x i1`
|
|
|
|
stream set is a set of eight parallel bit streams. All streams in the set are of the same length and are allocated and processed together by the underlying system.
|
|
|
|
|
|
|
|
### Kernels: Stream Processing Functions
|
|
|
|
|
|
|
|
Parabix programs are assembled as sequences of kernels operating on stream sets. Kernels are generally
|
|
|
|
just functions, taking stream sets as input and producing stream sets as output.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Build and Test
|
|
## Build and Test
|
|
|
|
|
|
The Parabix project uses the CMake build system. See the [CMake documentation at cmake.org] (https://cmake.org/documentation/) for details on CMake.
|
|
The Parabix project uses the CMake build system. See the [CMake documentation at cmake.org] (https://cmake.org/documentation/) for details on CMake.
|
... | | ... | |