Skip to content

Commit

Permalink
Squashed 'codec/' changes from 48cc941..37cba5b (Xilinx#388)
Browse files Browse the repository at this point in the history
37cba5b Clean WebpEnc
05b7e30 fixed index.html
d3e13e2 modified 2021.1 to 2021.2
5d21faf Merge pull request Xilinx#107 from yunleiz/fnext
2f4abaa [gui] add description
0183ab5 Merge pull request Xilinx#106 from yunleiz/fnext
672b1db [clean]fixed CR https://jira.xilinx.com/browse/CR-1109840
010b477 fixed CR https://jira.xilinx.com/browse/CR-1109840
a64fbce Merge pull request Xilinx#103 from yuxiangz/move
480ec86 rm L2include
8d4685b Merge pull request Xilinx#102 from siyangw/next
383fda2 fix some problem for https://jira.xilinx.com/browse/CR-1107161
de542c3 Merge pull request Xilinx#101 from yuxiangz/rmwebp
0b648f2 rm webp
5ff5869 Merge pull request Xilinx#100 from liyuanz/next
4fa8680 replace XILINX_VIVADO with XILINX_HLS
ffcb650 Merge pull request Xilinx#98 from yuxiangz/image_error
e95ae01 fixed image error
891a16e Merge pull request Xilinx#97 from yuxiangz/readme
b0c676e fixed benchmark
c04bc74 update release
1b28512 fixed kernel doc
c853e54 update benchmark wepb
573f3db revise code struct
451450e add wepb api
7d4d309 Merge pull request Xilinx#95 from yuxiangz/readme
b2e9ddd fixed error for readme
9f32eb2 Merge pull request Xilinx#94 from yuxiangz/readme
8974955 fixed error for readme
ca242c9 Merge pull request Xilinx#91 from yunleiz/fnext
53b7203 [doc] fixed pik profm in next
b53c54c [doc] fixed pik profm in net
4152274 Merge pull request Xilinx#90 from yunleiz/fnext
f4a9082 [doc] fixed readme on next
a1b4baa Merge pull request Xilinx#88 from siyangw/fix_sw_emu
4bbba7f change 2021.1_stable_latest to 2021.2_stable_latest
REVERT: 48cc941 Merge pull request Xilinx#99 from yuxiangz/cr-640
REVERT: c373206 fixed image error for master
REVERT: 4d5db06 Merge pull request Xilinx#92 from yunleiz/fmaster
REVERT: 19e4a69 [doc] fixed pik profm in master
REVERT: 74e5c6a Merge pull request Xilinx#89 from yunleiz/fmaster
REVERT: 2f9cc50 [doc] fixed readme on master
REVERT: 587473b Merge pull request Xilinx#87 from siyangw/fix_sw_emu
REVERT: 41a249c create master branch from next branch

git-subtree-dir: codec
git-subtree-split: 37cba5bec8072c63d0d75433cebe2467cd74f401

Co-authored-by: sdausr <[email protected]>
  • Loading branch information
2 people authored and GitHub Enterprise committed Sep 21, 2021
1 parent e9f0587 commit 9714857
Show file tree
Hide file tree
Showing 64 changed files with 84 additions and 7,594 deletions.
6 changes: 3 additions & 3 deletions codec/Jenkinsfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
@Library('pipeline-library')_
VitisLibPipeline (branch: 'master', libname: 'xf_codec', TARGETS: 'hls_csim:hls_csynth:hls_cosim:vitis_sw_emu:vitis_hw_emu:vitis_hw_build',
upstream_dependencies: 'xf_utils_hw,master,../utils; xf_database,master,../database; xf_fintech,master,../quantitative_finance',
email: '[email protected]', devtest: 'RunDeploy.sh', TOOLVERSION: '2021.1_released')
VitisLibPipeline (branch: 'next', libname: 'xf_codec', TARGETS: 'hls_csim:hls_csynth:hls_cosim:vitis_sw_emu:vitis_hw_emu:vitis_hw_build',
upstream_dependencies: 'xf_utils_hw,next,../utils; xf_database,next,../database; xf_fintech,next,../quantitative_finance',
email: '[email protected]', devtest: 'RunDeploy.sh', TOOLVERSION: '2021.2_stable_latest')
50 changes: 50 additions & 0 deletions codec/L2/demos/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Benchmark Test Overview

Here are benchmarks of the Vitis Codec Library using the Vitis environment and comparing with CPU. It supports software and hardware emulation as well as running hardware accelerators on the Alveo U200.

## Prerequisites

### Vitis Codec Library
- Alveo U200 installed and configured as per [Alveo U200 Data Center Accelerator Card](https://www.xilinx.com/products/boards-and-kits/alveo/u200.html#gettingStarted)
- Xilinx runtime (XRT) installed
- Xilinx Vitis 2021.2 installed and configured

## Pictures

- Format requirement: the input is commonly used pictures that are listed in table 1.

Table 1 Pictures for benchmark

| Pictures | Format | Size |
|----------------|----------|------------|
| android.jpg | 420 | 960*1280 |
| offset.jpg | 422 | 5184*3456 |
| hq.jpg | 444 | 5760*3840 |
| iphone.jpg | 420 | 3264*2448 |
| lena_c_512.png | 444 | 512*512 |
| 1920x1080.png | 444 | 1920*1080 |

## Building

Here, TriangleCount is taken as an example to indicate how to build the application and kernel with the command line Makefile flow.

- ### Download code

These codec benchmarks can be downloaded from [vitis libraries](https://github.com/Xilinx/Vitis_Libraries.git) ``master`` branch.

```
git clone https://github.com/Xilinx/Vitis_Libraries.git
cd Vitis_Libraries
git checkout master
cd codec
```

- ### Setup environment

Specifying the corresponding Vitis, XRT, and path to the platform repository by running following commands.

```
source <intstall_path>/installs/lin64/Vitis/2021.2/settings64.sh
source /opt/xilinx/xrt/setup.sh
export PLATFORM_REPO_PATHS=/opt/xilinx/platforms
```
4 changes: 2 additions & 2 deletions codec/L2/demos/jpegDec/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -98,13 +98,13 @@ CXXFLAGS += -D HW_EMU_TEST
endif

# ######################### Host compiler global settings ############################
CXXFLAGS += -I$(XILINX_XRT)/include -I$(XILINX_VIVADO)/include -std=c++11 -O3 -Wall -Wno-unknown-pragmas -Wno-unused-label
CXXFLAGS += -I$(XILINX_XRT)/include -I$(XILINX_HLS)/include -std=c++11 -O3 -Wall -Wno-unknown-pragmas -Wno-unused-label
LDFLAGS += -L$(XILINX_XRT)/lib -lOpenCL -lpthread -lrt -Wno-unused-label -Wno-narrowing -DVERBOSE
CXXFLAGS += -fmessage-length=0 -O3
CXXFLAGS += -I$(CUR_DIR)/src/

ifeq ($(HOST_ARCH), x86)
LDFLAGS += -L$(XILINX_VIVADO)/lnx64/tools/fpo_v7_0 -Wl,--as-needed -lgmp -lmpfr -lIp_floating_point_v7_0_bitacc_cmodel
LDFLAGS += -L$(XILINX_HLS)/lnx64/tools/fpo_v7_0 -Wl,--as-needed -lgmp -lmpfr -lIp_floating_point_v7_0_bitacc_cmodel
endif
ifneq (,$(shell echo $(XPLATFORM) | awk '/u50/'))
CXXFLAGS += -D USE_HBM
Expand Down
4 changes: 2 additions & 2 deletions codec/L2/demos/jpegDec/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Executable Usage

* **Work Directory(Step 1)**

The steps for library download and environment setup can be found in :ref:`l2_vitis_codec`. For getting the design,
The steps for library download and environment setup can be found in [here](https://github.com/Xilinx/Vitis_Libraries/tree/master/codec/L2/demos#building). For getting the design,

```
cd L2/demos/jpegDec
Expand Down Expand Up @@ -38,7 +38,7 @@ JPEG Decoder Input Arguments:
-JPEGFile: the path point to input *.jpg
```

Note: Default arguments are set in Makefile, you can use other :ref:`pictures` listed in the table.
Note: Default arguments are set in Makefile, you can use other [pictures](https://github.com/Xilinx/Vitis_Libraries/tree/master/codec/L2/demos#pictures) listed in the table.

* **Example output(Step 4)**

Expand Down
2 changes: 1 addition & 1 deletion codec/L2/demos/jpegDec/description.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"gui": true,
"name": "Xilinx JPEG Decoder Test",
"description": "",
"description": "This example is decoder supports the 'Sequential DCT-based mode' of ISO/IEC 10918-1 standard. It is a high-performance implementation based-on Xilinx HLS design methodolygy. It can process 1 Huffman token and create up to 8 DCT coeffiects within one cycle. It is also an easy-to-use decoder as it can direct parser the JPEG file header without help of software functions",
"flow": "vitis",
"platform_whitelist": [
"u50",
Expand Down
2 changes: 1 addition & 1 deletion codec/L2/demos/pikEnc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -254,7 +254,7 @@ VPP_FLAGS += -t $(TARGET) --platform $(XPLATFORM) --save-temps --optimize 2
VPP_FLAGS += --hls.jobs 8
VPP_LDFLAGS += --vivado.synth.jobs 8 --vivado.impl.jobs 8
ifneq (,$(shell echo $(XPLATFORM) | awk '/u200/'))
VPP_FLAGS += --config $(CUR_DIR)/conn_u200.cfg
VPP_FLAGS += --config $(CUR_DIR)/conn_u200.cfg --hls.pre_tcl $(CUR_DIR)/hls_pre.tcl
endif


Expand Down
4 changes: 2 additions & 2 deletions codec/L2/demos/pikEnc/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Executable Usage

* **Work Directory(Step 1)**

The steps for library download and environment setup can be found in :ref:`l2_vitis_codec`. For getting the design,
The steps for library download and environment setup can be found in [here](https://github.com/Xilinx/Vitis_Libraries/tree/master/codec/L2/demos#building). For getting the design,

```
cd L2/demos/pikEnc
Expand Down Expand Up @@ -40,7 +40,7 @@ PIK Encoder Input Arguments:
PIKFilePath: the path to the output *.pik
```

Note: Default arguments are set in Makefile, you can use other :ref:`pictures` listed in the table.
Note: Default arguments are set in Makefile, you can use other [pictures](https://github.com/Xilinx/Vitis_Libraries/tree/master/codec/L2/demos#pictures) listed in the table.

* **Example output(Step 4)**

Expand Down
2 changes: 1 addition & 1 deletion codec/L2/demos/pikEnc/conn_u200.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[hls]
pre_tcl=hls_pre.tcl
#pre_tcl=hls_pre.tcl

[connectivity]
# kernel 1
Expand Down
2 changes: 1 addition & 1 deletion codec/L2/demos/pikEnc/conn_u280.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[hls]
pre_tcl=hls_pre.tcl
#pre_tcl=hls_pre.tcl

[connectivity]
# kernel 1
Expand Down
6 changes: 3 additions & 3 deletions codec/L2/demos/pikEnc/description.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"gui": true,
"gui": false,
"name": "Xilinx PIK Encoder Demo",
"description": "",
"description": "This example is based on Google's PIK, which was chosen as the base framework for JPEG XL. The pikEnc is based on the 'fast mode' of PIK which can provide better encoding efficnty than most of other still image encoding methods. The pikEnc is based on Xilinx HLS design methodology and optimized for FPGA arthitecture. It can proved higher throughput and lower latency compared to software-based solutions",
"flow": "vitis",
"platform_whitelist": [
"u200"
Expand All @@ -14,7 +14,7 @@
"v++": {
"compiler": {
"cflags": [
"--config PROJECT/conn_u200.cfg"
"--config PROJECT/conn_u200.cfg --hls.pre_tcl PROJECT/hls_pre.tcl"
]
}
}
Expand Down
121 changes: 0 additions & 121 deletions codec/L2/demos/pikEnc/host/pik/ac_predictions_test.cc

This file was deleted.

Loading

0 comments on commit 9714857

Please sign in to comment.