Package - Updates (#124)

* Package - Updates

* CMakeLists - updates

* Docker - Remove UB20.04 support

* Readme - updates

[ROCm/rocjpeg commit: 2a81cda0de]
This commit is contained in:
Kiriti Gowda
2025-03-04 11:50:45 -08:00
committed by GitHub
parent effd830a88
commit cecc3d585d
5 changed files with 35 additions and 54 deletions
+7 -2
View File
@@ -3,10 +3,15 @@
Documentation for rocJPEG is available at Documentation for rocJPEG is available at
[https://rocm.docs.amd.com/projects/rocJPEG/en/latest/](https://rocm.docs.amd.com/projects/rocJPEG/en/latest/) [https://rocm.docs.amd.com/projects/rocJPEG/en/latest/](https://rocm.docs.amd.com/projects/rocJPEG/en/latest/)
## rocJPEG 0.9.0 (Unreleased) ## (Unreleased) rocJPEG 0.9.0
## Changed
* Readme - cleanup and updates to pre-reqs
## Removed
* Dev Package - No longer installs pkg-config
### Resolved issues ### Resolved issues
* Fixed a bug that prevented copying the decoded image into the output buffer when the output buffer is larger than the input image. * Fixed a bug that prevented copying the decoded image into the output buffer when the output buffer is larger than the input image.
## rocJPEG 0.8.0 for ROCm 6.4 ## rocJPEG 0.8.0 for ROCm 6.4
+5 -6
View File
@@ -31,17 +31,16 @@ elseif(ROCM_PATH)
else() else()
set(ROCM_PATH /opt/rocm CACHE PATH "Default ROCm installation path") set(ROCM_PATH /opt/rocm CACHE PATH "Default ROCm installation path")
endif() endif()
# Set AMD Clang as default compiler # Set AMD Clang as default compiler
if (NOT DEFINED CMAKE_CXX_COMPILER) if(NOT DEFINED CMAKE_CXX_COMPILER)
set(CMAKE_C_COMPILER ${ROCM_PATH}/bin/amdclang) set(CMAKE_C_COMPILER ${ROCM_PATH}/bin/amdclang)
set(CMAKE_CXX_COMPILER ${ROCM_PATH}/bin/amdclang++) set(CMAKE_CXX_COMPILER ${ROCM_PATH}/bin/amdclang++)
endif() endif()
set(VERSION "0.8.0")
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED On) set(CMAKE_CXX_STANDARD_REQUIRED On)
# NOTE: Match version with api/rocjpeg_version.h
set(VERSION "0.9.0")
# Set Project Version and Language # Set Project Version and Language
project(rocjpeg VERSION ${VERSION} LANGUAGES CXX) project(rocjpeg VERSION ${VERSION} LANGUAGES CXX)
@@ -261,11 +260,11 @@ if(HIP_FOUND AND Libva_FOUND)
set(rocJPEG_RPM_PACKAGE_LIST "${rocJPEG_RPM_PACKAGE_LIST}, rocprofiler-register") set(rocJPEG_RPM_PACKAGE_LIST "${rocJPEG_RPM_PACKAGE_LIST}, rocprofiler-register")
endif() endif()
set(rocJPEG_DEBIAN_DEV_PACKAGE_LIST "rocm-hip-runtime-dev, libva-amdgpu-dev, pkg-config") set(rocJPEG_DEBIAN_DEV_PACKAGE_LIST "rocm-hip-runtime-dev, libva-amdgpu-dev")
if(UBUNTU_22_FOUND) if(UBUNTU_22_FOUND)
set(rocJPEG_DEBIAN_DEV_PACKAGE_LIST "${rocJPEG_DEBIAN_DEV_PACKAGE_LIST}, libstdc++-12-dev") set(rocJPEG_DEBIAN_DEV_PACKAGE_LIST "${rocJPEG_DEBIAN_DEV_PACKAGE_LIST}, libstdc++-12-dev")
endif() endif()
set(rocJPEG_RPM_DEV_PACKAGE_LIST "rocm-hip-runtime-devel, libva-amdgpu-devel, pkg-config") set(rocJPEG_RPM_DEV_PACKAGE_LIST "rocm-hip-runtime-devel, libva-amdgpu-devel")
# '%{?dist}' breaks manual builds on debian systems due to empty Provides # '%{?dist}' breaks manual builds on debian systems due to empty Provides
execute_process( execute_process(
+21 -26
View File
@@ -17,21 +17,31 @@ rocJPEG is a high performance JPEG decode SDK for AMD GPUs. Using the rocJPEG AP
## Prerequisites ## Prerequisites
* Linux distribution ### Operating Systems
* Linux
* Ubuntu - `22.04` / `24.04` * Ubuntu - `22.04` / `24.04`
* RHEL - `8` / `9` * RedHat - `8` / `9`
* SLES - `15-SP5` * SLES - `15-SP5`
* [ROCm supported hardware](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/system-requirements.html) ### Hardware
* **GPU**: [AMD Radeon™ Graphics](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/system-requirements.html) / [AMD Instinct™ Accelerators](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/system-requirements.html)
> [!IMPORTANT] > [!IMPORTANT]
> `gfx908` or higher GPU required > * `gfx908` or higher GPU required
* Install ROCm `6.3.0` or later with [amdgpu-install](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/how-to/amdgpu-install.html): Required usecase - rocm
* Install ROCm `6.3.0` or later with [amdgpu-install](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/how-to/amdgpu-install.html): **Required** usecase:`rocm`
> [!IMPORTANT] > [!IMPORTANT]
> `sudo amdgpu-install --usecase=rocm` > `sudo amdgpu-install --usecase=rocm`
### Compiler
* AMD Clang++ Version 18.0.0 or later - installed with ROCm
### Libraries
* CMake Version `3.10` or later
```shell
sudo apt install cmake
```
* Video Acceleration API - `libva-amdgpu-dev` is an AMD implementation for VA-API * Video Acceleration API - `libva-amdgpu-dev` is an AMD implementation for VA-API
```shell ```shell
sudo apt install libva-amdgpu-dev sudo apt install libva-amdgpu-dev
@@ -47,31 +57,16 @@ rocJPEG is a high performance JPEG decode SDK for AMD GPUs. Using the rocJPEG AP
> [!NOTE] > [!NOTE]
> RPM Packages for `RHEL`/`SLES` - `libva-amdgpu mesa-amdgpu-va-drivers` > RPM Packages for `RHEL`/`SLES` - `libva-amdgpu mesa-amdgpu-va-drivers`
* CMake `3.10` or later
```shell
sudo apt install cmake
```
* AMD Clang++ Version 18.0.0 or later - installed with ROCm
* pkg-config
```shell
sudo apt install pkg-config
```
> [!IMPORTANT] > [!IMPORTANT]
> > * Required compiler support
> * If using Ubuntu 22.04, you must install `libstdc++-12-dev` > * C++17
> > * Threads
> * On Ubuntu 22.04 - Additional package required: libstdc++-12-dev
> ```shell > ```shell
> sudo apt install libstdc++-12-dev > sudo apt install libstdc++-12-dev
> ``` > ```
>
>[!NOTE] >[!NOTE]
>
> * All package installs are shown with the `apt` package manager. Use the appropriate package manager for your operating system. > * All package installs are shown with the `apt` package manager. Use the appropriate package manager for your operating system.
### Prerequisites setup script for Linux ### Prerequisites setup script for Linux
@@ -1,17 +0,0 @@
FROM ubuntu:20.04
# install base dependencies
RUN apt-get update -y
#RUN apt-get dist-upgrade -y
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install gcc g++ cmake pkg-config git apt-utils sudo vainfo dialog
# install ROCm
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install initramfs-tools libnuma-dev wget keyboard-configuration && \
wget https://repo.radeon.com/amdgpu-install/6.3/ubuntu/focal/amdgpu-install_6.3.60300-1_all.deb && \
sudo apt-get install ./amdgpu-install_6.3.60100-1_all.deb && \
sudo amdgpu-install -y --usecase=rocm
WORKDIR /workspace
# install rocJPEG package
RUN DEBIAN_FRONTEND=noninteractive sudo apt install -y rocjpeg rocjpeg-dev rocjpeg-test
@@ -18,9 +18,8 @@ rocJPEG can be installed on the following Linux environments:
The following prerequisites are installed by the package installer. If you are building and installing using the source code, use the `rocJPEG-setup.py <https://github.com/ROCm/rocJPEG/blob/develop/rocJPEG-setup.py>`_ setup script available in the rocJPEG GitHub repository to install these prerequisites. The following prerequisites are installed by the package installer. If you are building and installing using the source code, use the `rocJPEG-setup.py <https://github.com/ROCm/rocJPEG/blob/develop/rocJPEG-setup.py>`_ setup script available in the rocJPEG GitHub repository to install these prerequisites.
* AMD Clang++
* CMake version 3.10 or later
* Video Acceleration API (VA-API) - libva-amdgpu-dev is an AMD implementation for VA-API * Video Acceleration API (VA-API) - libva-amdgpu-dev is an AMD implementation for VA-API
* AMD VA Drivers * AMD VA Drivers
* CMake version 3.10 or later
* AMD Clang++
* pkg-config
* libstdc++-12-dev for installations on Ubuntu 22.04 * libstdc++-12-dev for installations on Ubuntu 22.04