22
33[ ![ License] ( https://img.shields.io/badge/License-Apache_2.0-yellogreen.svg )] ( https://opensource.org/licenses/Apache-2.0 )
44
5- ![ Version] ( https://img.shields.io/badge/Version-v0.2.0 --alpha-blue )
5+ ![ Version] ( https://img.shields.io/badge/Version-v0.2.1 --alpha-blue )
66
77![ Platform] ( https://img.shields.io/badge/Platform-linux--64_%7C_win--64_wsl2-gray )
88
1313
1414CV-CUDA is an open-source project that enables building efficient cloud-scale
1515Artificial Intelligence (AI) imaging and computer vision (CV) applications. It
16- uses GPU acceleration to help developers build highly efficient pre- and post-
17- processing pipelines. CV-CUDA originated as a collaborative effort between
18- [ NVIDIA] [ NVIDIA Develop ] and [ ByteDance] [ ByteDance ] .
16+ uses graphics processing unit ( GPU) acceleration to help developers build highly
17+ efficient pre- and post- processing pipelines. CV-CUDA originated as a
18+ collaborative effort between [ NVIDIA] [ NVIDIA Develop ] and [ ByteDance] [ ByteDance ] .
1919
2020Refer to our [ Developer Guide] ( DEVELOPER_GUIDE.md ) for more information on the
21- operators avaliable as of release v0.2.0 -alpha.
21+ operators available as of release v0.2.1 -alpha.
2222
2323## Getting Started
2424
@@ -29,7 +29,10 @@ To get a local copy up and running follow these steps.
2929- Linux distro:
3030 - Ubuntu x86_64 >= 18.04
3131 - WSL2 with Ubuntu >= 20.04 (tested with 20.04)
32- - CUDA Driver >= 11.7 (Not tested on 12.0)
32+ - NVIDIA driver
33+ - Linux: Driver version 520.56.06 or higher
34+ - CUDA Toolkit
35+ - Version 11.7 or above. (12.0 is not yet tested.)
3336- GCC >= 11.0
3437- Python >= 3.7
3538- cmake >= 3.22
@@ -41,88 +44,140 @@ packages. Choose the installation method that meets your environment needs.
4144
4245#### Tar File Installation
4346
44- ```
45- tar -xvf nvcv-lib-0.2.0-cuda11-x86_64-linux.tar.xz
47+ ``` shell
48+ tar -xvf nvcv-lib-0.2.1-cuda11-x86_64-linux.tar.xz
49+ tar -xvf nvcv-dev-0.2.1-cuda11-x86_64-linux.tar.xz
4650```
4751
4852#### DEB File Installation
4953
50- ```
51- sudo dpkg -i nvcv-lib-0.2.0 -cuda11-x86_64-linux.deb
54+ ``` shell
55+ sudo apt-get install -y ./ nvcv-lib-0.2.1-cuda11-x86_64-linux.deb ./nvcv-dev-0.2.1 -cuda11-x86_64-linux.deb
5256```
5357
5458#### Python WHL File Installation
5559
56- ```
57- pip install nvcv_python-0.2.0 -cp38-cp38-linux_x86_64.whl
60+ ``` shell
61+ pip install nvcv_python-0.2.1 -cp38-cp38-linux_x86_64.whl
5862```
5963
6064### Build from Source
6165
62- Follow these instruction to successfully build CV-CUDA from source:
66+ Follow these instruction to build CV-CUDA from source:
67+
68+ 1 . Set up your local CV-CUDA repository
69+
70+ 1 . Install prerequisites needed to setup up the repository.
71+
72+ On Ubuntu 22.04, install the following packages:
73+ - git-lfs: to retrieve binary files from remote repository
74+
75+ ``` shell
76+ sudo apt-get install -y git git-lfs
77+ ```
78+
79+ 2. After cloning the repository (assuming it was cloned in ` ~/cvcuda` ),
80+ it needs to be properly configured by running the ` init_repo.sh` script only once.
81+
82+ ` ` ` shell
83+ cd ~ /cvcuda
84+ ./init_repo.sh
85+ ` ` `
6386
64871. Build CV-CUDA
6588
66- ```
67- cd ~/cvcuda
68- ci/build.sh
69- ```
89+ 1. Install the dependencies required for building CV-CUDA
7090
71- This will compile a x86 release build of CV-CUDA inside ` build-rel ` directory.
72- The library is in build-rel/lib, docs in build-rel/docs and executables
73- (tests, etc...) in build-rel/bin.
91+ On Ubuntu 22.04, install the following packages:
92+ - g++-11: compiler to be used
93+ - cmake, ninja-build (optional): manage build rules
94+ - python3-dev: for python bindings
95+ - libssl-dev: needed by the testsuite (MD5 hashing utilities)
7496
75- The script accepts some parameters to control the creation of the build tree:
97+ ` ` ` shell
98+ sudo apt-get install -y g++-11 cmake ninja-build python3-dev libssl-dev
99+ ` ` `
76100
77- ```
78- ci/build.sh [release|debug] [output build tree path]
79- ```
101+ For CUDA Toolkit, any version of the 11.x series should work.
102+ CV-CUDA was tested with 11.7, thus it should be preferred.
103+
104+ ` ` ` shell
105+ sudo apt-get install -y cuda-minimal-build-11-7
106+ ` ` `
107+
108+ 2. Build the project
109+
110+ ` ` ` shell
111+ ci/build.sh
112+ ` ` `
80113
81- By default it builds for release.
114+ This will compile a x86 release build of CV-CUDA inside ` build-rel` directory.
115+ The library is in build-rel/lib, docs in build-rel/docs and executables
116+ (tests, etc...) are in build-rel/bin.
82117
83- If output build tree path isn't specified, it'll be ` build-rel ` for release
84- builds, and build-deb for debug.
118+ The script accepts some parameters to control the creation of the build tree:
119+
120+ ` ` ` shell
121+ ci/build.sh [release| debug] [output build tree path]
122+ ` ` `
123+
124+ By default it builds for release.
125+
126+ If output build tree path isn' t specified, it' ll be ` build-rel` for release
127+ builds, and ` build-deb` for debug.
85128
861291. Build Documentation
87130
88- ```
89- ci/build_docs.sh [build folder]
90- ```
131+ 1. Install the dependencies required for building the documentation
91132
92- Example:
93- `ci/build_docs.sh build
133+ On Ubuntu 22.04, install the following packages:
134+ - doxygen: parse header files for reference documentation
135+ - python3, python3-pip: to install some python packages needed
136+ - sphinx, breathe, exhale, recommonmark, graphiviz: to render the documentation
137+ - sphinx-rtd-theme: documenation theme used
94138
95- 1 . Build Samples
139+ ` ` ` shell
140+ sudo apt-get install -y doxygen graphviz python3 python3-pip
141+ sudo python3 -m pip install sphinx==4.5.0 breathe exhale recommonmark graphviz sphinx-rtd-theme
142+ ` ` `
96143
97- ```
98- ./ci/build_samples.sh [build folder]
99- ```
144+ 2. Build the documentation
145+ ` ` ` shell
146+ ci/build_docs.sh [build folder]
147+ ` ` `
148+
149+ Example:
150+ ` ci/build_docs.sh build_docs`
100151
101- _ (For instructions on how to compile samples outside of the CV-CUDA project,
102- see the [ Samples] ( samples/README.md ) documentation)_
152+ 1. Build and run Samples
153+
154+ 1. For instructions on how to build samples from source and run them, see the [Samples](samples/README.md) documentation.
103155
1041561. Run Tests
105157
106- The tests are in ` <buildtree>/bin ` . You can run the script below to run all
107- tests at once. Here's an example when build tree is created in ` build-rel `
158+ 1. Install the dependencies required for running the tests
108159
109- ```
110- build-rel/bin/run_tests.sh
111- ```
160+ On Ubuntu 22.04, install the following packages:
161+ - python3, python3-pip: to run python bindings tests
162+ - torch: dependencies needed by python bindings tests
112163
113- 1 . Run Samples
164+ ` ` ` shell
165+ sudo apt-get install -y python3 python3-pip
166+ sudo python3 -m pip install pytest torch
167+ ` ` `
114168
115- The samples are installed in ` <buildtree>/bin ` . You can run the script below
116- to download and serialize the model and run the sample with the test data
117- provided.
169+ 2. Run the tests
118170
119- ``` shell
120- ./ci/run_samples.sh
121- ```
171+ The tests are in ` < buildtree> /bin` . You can run the script below to run all
172+ tests at once. Here' s an example when build tree is created in `build-rel`
173+
174+ ```shell
175+ build-rel/bin/run_tests.sh
176+ ```
122177
1231781. Package installers
124179
125- From a succesfully built project, installers can be generated using cpack:
180+ Installers can be generated using the following cpack command once you have successfully built the project
126181
127182 ```shell
128183 cd build-rel
@@ -134,8 +189,8 @@ Follow these instruction to successfully build CV-CUDA from source:
134189
135190 For a fine-grained choice of what installers to generate, the full syntax is:
136191
137- ```
138- cmake . -G [DEB|TXZ]
192+ ```shell
193+ cpack . -G [DEB|TXZ]
139194 ```
140195
141196 - DEB for Debian packages
@@ -145,7 +200,7 @@ Follow these instruction to successfully build CV-CUDA from source:
145200
146201CV-CUDA is an open source project. As part of the Open Source Community, we are
147202committed to the cycle of learning, improving, and updating that makes this
148- community thrive. However, as of release v0.2.0 -alpha, CV-CUDA is not yet ready
203+ community thrive. However, as of release v0.2.1 -alpha, CV-CUDA is not yet ready
149204for external contributions.
150205
151206To understand the process for contributing the CV-CUDA, see our
0 commit comments