-
Notifications
You must be signed in to change notification settings - Fork 184
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This commit adds an initial implementation of the ZSTD Decoder. It is capable of decoding simple ZSTD frames containing raw and rle blocks. This is a squashed commit that was created from the following changes: modules/zstd: Add buffer library modules/zstd: Add Buffer use-case example modules/zstd: Add library for parsing magic number modules/zstd: Add library for parsing frame header dependency_support/libzstd: Make zstd_errors.h public dependency_support: Add decodecorpus binary modules/zstd: Add data generator library modules/zstd: Add zstd frame header tests modules/zstd: Add common zstd definitions modules/zstd: Add raw block decoder modules/zstd: Add rle block decoder modules/zstd: Add block header parsing library modules/zstd: Add SequenceExecutorPacket to common definitions modules/zstd: Add block data muxer library modules/zstd: Add block demuxer library modules/zstd: Add block decoder module modules/zstd/common: Specify decoder output format examples/ram: Export internal RAM API to other modules modules/zstd: Add Offset type to common zstd definitions modules/zstd: Add RamPrinter Proc modules/zstd: Add SequenceExecutor Proc modules/zstd: Add repacketizer modules/zstd: Add ZSTD decoder modules/zstd: Add ZSTD Decoder documentation CI: Add custom ZSTD module workflow Co-authored-by: Maciej Dudek <[email protected]> Co-authored-by: Pawel Czarnecki <[email protected]> Co-authored-by: Robert Winkler <[email protected]> Co-authored-by: Roman Dobrodii <[email protected]> Internal-tag: [#52186] Signed-off-by: Maciej Dudek <[email protected]> Signed-off-by: Pawel Czarnecki <[email protected]> Signed-off-by: Robert Winkler <[email protected]> Signed-off-by: Roman Dobrodii <[email protected]>
- Loading branch information
1 parent
8a9c4bb
commit 5b43fbf
Showing
30 changed files
with
8,287 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
name: Modules (ZSTD) | ||
on: | ||
# Avoid triggering on pushes to /all/ open PR branches. | ||
push: | ||
branches: | ||
- main | ||
paths: | ||
- 'xls/modules/zstd/**' | ||
pull_request: | ||
branches: | ||
- main | ||
paths: | ||
- 'xls/modules/zstd/**' | ||
# This lets us trigger manually from the UI. | ||
workflow_dispatch: | ||
|
||
jobs: | ||
test: | ||
name: Test ZSTD module (opt) | ||
runs-on: | ||
labels: ubuntu-22.04-64core | ||
timeout-minutes: 600 | ||
continue-on-error: true | ||
steps: | ||
- uses: actions/checkout@v2 | ||
|
||
- name: Restore Nightly Bazel Cache | ||
uses: actions/cache/restore@v4 | ||
with: | ||
path: "~/.cache/bazel" | ||
key: bazel-cache-nightly-${{ runner.os }}-${{ github.sha }} | ||
restore-keys: bazel-cache-nightly-${{ runner.os }}- | ||
|
||
- name: Install dependencies via apt | ||
run: sudo apt-get install python3-distutils python3-dev python-is-python3 libtinfo5 build-essential liblapack-dev libblas-dev gfortran | ||
|
||
- name: Bazel Build Tools (opt) | ||
run: | | ||
bazel build -c opt --test_output=errors -- //xls/dslx:interpreter_main //xls/dslx/ir_convert:ir_converter_main //xls/tools:opt_main //xls/tools:codegen_main | ||
- name: Build ZSTD Module (opt) | ||
run: | | ||
bazel build -c opt --test_output=errors -- //xls/modules/zstd:all | ||
- name: Test ZSTD Module - DSLX Tests (opt) | ||
if: ${{ !cancelled() }} | ||
run: | | ||
bazel test -c opt --test_output=errors -- $(bazel query 'filter(".*_dslx_test", kind(rule, //xls/modules/zstd/...))') | ||
- name: Test ZSTD Module - CC Tests (opt) | ||
if: ${{ !cancelled() }} | ||
run: | | ||
bazel test -c opt --test_output=errors -- $(bazel query 'filter(".*_cc_test", kind(rule, //xls/modules/zstd/...))') | ||
- name: Build ZSTD verilog targets (opt) | ||
if: ${{ !cancelled() }} | ||
run: | | ||
bazel build -c opt -- $(bazel query 'filter(".*_verilog", kind(rule, //xls/modules/zstd/...))') | ||
- name: Build and run ZSTD IR benchmark rules (opt) | ||
if: ${{ !cancelled() }} | ||
run: | | ||
bazel run -c opt -- $(bazel query 'filter(".*_ir_benchmark", kind(rule, //xls/modules/zstd/...))') | ||
- name: Build and run synthesis benchmarks of the ZSTD module (opt) | ||
if: ${{ !cancelled() }} | ||
run: | | ||
bazel run -c opt -- $(bazel query 'filter(".*_benchmark_synth", kind(rule, //xls/modules/zstd/...))') | ||
- name: Build ZSTD place and route targets (opt) | ||
if: ${{ !cancelled() }} | ||
run: | | ||
bazel build -c opt -- $(bazel query 'filter(".*_place_and_route", kind(rule, //xls/modules/zstd/...))') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.