Skip to content

Commit

Permalink
Package - Min Setup Installation (#1195)
Browse files Browse the repository at this point in the history
* Bump gitpython from 3.1.34 to 3.1.35 in /docs/.sphinx

Bumps [gitpython](https://github.com/gitpython-developers/GitPython) from 3.1.34 to 3.1.35.
- [Release notes](https://github.com/gitpython-developers/GitPython/releases)
- [Changelog](https://github.com/gitpython-developers/GitPython/blob/main/CHANGES)
- [Commits](gitpython-developers/GitPython@3.1.34...3.1.35)

---
updated-dependencies:
- dependency-name: gitpython
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Samples - Updated (#1189)

* Set min rocm-docs-core[api_reference] to 0.24.0 in /docs/.sphinx (#1191)

* Bump rocm-docs-core[api_reference] in /docs/.sphinx

Bumps [rocm-docs-core[api_reference]](https://github.com/RadeonOpenCompute/rocm-docs-core) from 0.24.0 to 0.24.1.
- [Release notes](https://github.com/RadeonOpenCompute/rocm-docs-core/releases)
- [Changelog](https://github.com/RadeonOpenCompute/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](ROCm/rocm-docs-core@v0.24.0...v0.24.1)

---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update requirements.in

* Update requirements.txt

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sam Wu <[email protected]>

* SWDEV-415095 - Remove hard coded paths in RUNPATH (#1179)

* Bump rocm-docs-core[api_reference] in /docs/.sphinx (#1178)

Bumps [rocm-docs-core[api_reference]](https://github.com/RadeonOpenCompute/rocm-docs-core) from 0.20.0 to 0.21.0.
- [Release notes](https://github.com/RadeonOpenCompute/rocm-docs-core/releases)
- [Changelog](https://github.com/RadeonOpenCompute/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](ROCm/rocm-docs-core@v0.20.0...v0.21.0)

---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* SWDEV-415095 - Remove hard coded paths in RUNPATH

The RUNPATH of mivisionx libraries are having the hard coded path /opt/rocm-ver/lib along with $ORIGIN
Removed the hard coded path

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kiriti Gowda <[email protected]>

* CTest - NN Test reinstall OFF

* CTest - Add Test Script

* CTest - Lib Test Updates

* Lib Test - Fix

* Readme - Test Updates

* Readme - Fix Build Inst

* Readme - ROCm install updates

* Readme - Updates

* Readme - Config Updates

* inference_generator - deprecated

* Readme & Changelog - Updates

* FindTurboJPEG - Fix Locations

* Package deps - Docker

* Debian - Package

* Deb - package list

* Package List - Add parent scope

* Parent Scope

* Parent Scope

* U22 - Release docker

* U22 - Docker Release

* Depends Package

* Fix - Format

* Docker - use 5.7 for release

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sam Wu <[email protected]>
Co-authored-by: raramakr <[email protected]>
  • Loading branch information
4 people authored Oct 4, 2023
1 parent 9ed079b commit 00a19f8
Show file tree
Hide file tree
Showing 5 changed files with 99 additions and 3 deletions.
12 changes: 10 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,12 @@ endif()

# Set the dependent packages
set(MIVISIONX_PACKAGE_REQS "half, rpp, rocblas, miopen-hip, migraphx")
# MIVisionX Package Dependencies
set(MIVISIONX_DEBIAN_PACKAGE_LIST "ffmpeg, libavcodec-dev, \
libavformat-dev, libswscale-dev, libomp-dev, miopen-hip-dev, \
rocblas-dev, libboost-filesystem-dev, libopencv-dev, migraphx-dev")
set(MIVISIONX_RPM_PACKAGE_LIST "rocblas-devel, miopen-hip-devel, \
migraphx-devel")
# set dependency to ROCm if set to TRUE, default to OFF
set(ROCM_DEP_ROCMCORE OFF CACHE BOOL "Set rocm-core dependency")
if(ROCM_DEP_ROCMCORE)
Expand All @@ -222,8 +228,8 @@ if(ROCM_DEP_ROCMCORE)
set(MIVISIONX_PACKAGE_REQS "${MIVISIONX_PACKAGE_REQS}, ${_rocm_core_pkg}")
endif()

set(CPACK_DEBIAN_PACKAGE_DEPENDS "${MIVISIONX_PACKAGE_REQS}, rocblas-dev, miopen-hip-dev, migraphx-dev")
set(CPACK_RPM_PACKAGE_REQUIRES "${MIVISIONX_PACKAGE_REQS}, rocblas-devel, miopen-hip-devel, migraphx-devel")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "${MIVISIONX_PACKAGE_REQS}, ${MIVISIONX_DEBIAN_PACKAGE_LIST}")
set(CPACK_RPM_PACKAGE_REQUIRES "${MIVISIONX_PACKAGE_REQS}, ${MIVISIONX_RPM_PACKAGE_LIST}")

# '%{?dist}' breaks manual builds on debian systems due to empty Provides
execute_process(COMMAND rpm --eval %{?dist}
Expand Down Expand Up @@ -252,9 +258,11 @@ else()
endif()
if(EXISTS ${RPMBUILD_EXE})
list(APPEND CPACK_GENERATOR "RPM")
message("-- ${White}MIVisionX -- CPACK_RPM_PACKAGE_REQUIRES:${CPACK_RPM_PACKAGE_REQUIRES}${ColourReset}")
endif()
if(EXISTS ${DPKG_EXE})
list(APPEND CPACK_GENERATOR "DEB")
message("-- ${White}MIVisionX -- CPACK_DEBIAN_PACKAGE_DEPENDS:${CPACK_DEBIAN_PACKAGE_DEPENDS}${ColourReset}")
endif()
endif()

Expand Down
2 changes: 2 additions & 0 deletions amd_openvx/cmake/FindTurboJpeg.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ find_library(TurboJpeg_LIBRARIES
${TURBO_JPEG_PATH}/lib
${TURBO_JPEG_PATH}/lib64
/usr/lib
#/usr/lib/x86_64-linux-gnu - package install libturbojpeg0-dev
/opt/libjpeg-turbo/lib
)
mark_as_advanced(TurboJpeg_LIBRARIES)
Expand All @@ -62,6 +63,7 @@ find_path(TurboJpeg_LIBRARIES_DIRS
${TURBO_JPEG_PATH}/lib
${TURBO_JPEG_PATH}/lib64
/usr/lib
#/usr/lib/x86_64-linux-gnu - package install libturbojpeg0-dev
/opt/libjpeg-turbo/lib
)
mark_as_advanced(TurboJpeg_LIBRARIES_DIRS)
Expand Down
3 changes: 2 additions & 1 deletion amd_openvx_extensions/amd_migraphx/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ set(CMAKE_CXX_STANDARD 14)

list (APPEND CMAKE_PREFIX_PATH ${ROCM_PATH} ${ROCM_PATH}/hip)

# TBD: HIP required to build vx_migraphx
if(GPU_SUPPORT AND "${BACKEND}" STREQUAL "HIP")
if(NOT DEFINED HIP_PATH)
if(NOT DEFINED ENV{HIP_PATH})
Expand All @@ -37,7 +38,7 @@ if(GPU_SUPPORT AND "${BACKEND}" STREQUAL "HIP")
find_package(HIP QUIET)

list(APPEND PACKAGE_DEPENDS PACKAGE HIP)

# TBD: migraphx package required to build vx_migraphx
find_package(migraphx QUIET)

include_directories(../../amd_openvx/openvx/include
Expand Down
42 changes: 42 additions & 0 deletions docker/mivisionx-release-ubuntu20.dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
FROM ubuntu:20.04

ARG ROCM_INSTALLER_REPO=https://repo.radeon.com/amdgpu-install/5.7/ubuntu/focal/amdgpu-install_5.7.50700-1_all.deb
ARG ROCM_INSTALLER_PACKAGE=amdgpu-install_5.7.50700-1_all.deb

ENV MIVISIONX_DEPS_ROOT=/mivisionx-deps
WORKDIR $MIVISIONX_DEPS_ROOT

RUN apt-get update -y
# install mivisionx base dependencies - Level 1
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install gcc g++ cmake pkg-config git libcanberra-gtk-module
# install ROCm for mivisionx OpenCL/HIP dependency - Level 2
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install initramfs-tools libnuma-dev wget sudo keyboard-configuration && \
sudo apt-get -y clean && dpkg --add-architecture i386 && \
wget ${ROCM_INSTALLER_REPO} && \
sudo apt-get install -y ./${ROCM_INSTALLER_PACKAGE} && \
sudo apt-get update -y && \
sudo amdgpu-install -y --usecase=graphics,rocm

# install mivisionx package dependencies
# VX_NN & VX_MIGraphX
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install half miopen-hip-dev rocblas-dev migraphx migraphx-dev
# VX_MEDIA
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install ffmpeg libavcodec-dev libavformat-dev libswscale-dev
# VX_openCV
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install libopencv-dev
# RPP
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install clang libboost-filesystem-dev half rpp
# rocAL
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install liblmdb-dev rapidjson-dev libturbojpeg0-dev libprotobuf-dev
# rocAL PyBind
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install python3-dev python3-setuptools python3-pip python3-opencv pybind11-dev

ENV MIVISIONX_WORKSPACE=/workspace
WORKDIR $MIVISIONX_WORKSPACE

ENV PATH=$PATH:/opt/rocm/bin
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/rocm/lib

# Clone MIVisionX
RUN git clone https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX.git && \
mkdir build && cd build && cmake -D BACKEND=HIP -D ROCAL=OFF ../MIVisionX && make -j8 && make install
43 changes: 43 additions & 0 deletions docker/mivisionx-release-ubuntu22.dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
FROM ubuntu:22.04

ARG ROCM_INSTALLER_REPO=https://repo.radeon.com/amdgpu-install/5.7/ubuntu/jammy/amdgpu-install_5.7.50700-1_all.deb
ARG ROCM_INSTALLER_PACKAGE=amdgpu-install_5.7.50700-1_all.deb

ENV MIVISIONX_DEPS_ROOT=/mivisionx-deps
WORKDIR $MIVISIONX_DEPS_ROOT

RUN apt-get update -y
# install mivisionx base dependencies - Level 1
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install gcc g++ cmake pkg-config git libcanberra-gtk-module

# install ROCm for mivisionx OpenCL/HIP dependency - Level 2
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install initramfs-tools libnuma-dev wget sudo keyboard-configuration libstdc++-12-dev && \
sudo apt-get -y clean && dpkg --add-architecture i386 && \
wget ${ROCM_INSTALLER_REPO} && \
sudo apt-get install -y ./${ROCM_INSTALLER_PACKAGE} && \
sudo apt-get update -y && \
sudo amdgpu-install -y --usecase=graphics,rocm

# install mivisionx package dependencies
# VX_NN & VX_MIGraphX
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install half miopen-hip-dev rocblas-dev migraphx migraphx-dev
# VX_MEDIA
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install ffmpeg libavcodec-dev libavformat-dev libswscale-dev
# VX_openCV
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install libopencv-dev
# RPP
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install clang libboost-filesystem-dev half rpp
# rocAL
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install liblmdb-dev rapidjson-dev libturbojpeg0-dev libprotobuf-dev
# rocAL PyBind
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install python3-dev python3-setuptools python3-pip python3-opencv pybind11-dev

ENV MIVISIONX_WORKSPACE=/workspace
WORKDIR $MIVISIONX_WORKSPACE

ENV PATH=$PATH:/opt/rocm/bin
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/rocm/lib

# Clone MIVisionX
RUN git clone https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX.git && \
mkdir build && cd build && cmake -D BACKEND=HIP -D ROCAL=OFF ../MIVisionX && make -j8 && make install

0 comments on commit 00a19f8

Please sign in to comment.