This project is part of the 2021 spring bachelor final project of the Bachelor of Computer Science at Utrecht University. The team that worked on the project consists of eleven students from the Bachelor of Computer Science and Bachelor of Game Technology. This project has been done for educational purposes. All code is open-source, and proper credit is given to respective parties.
Update the GPU drivers and restart the system for changes to take effect.
Optionally, use a different driver listed after running ubuntu-drivers devices
sudo apt install nvidia-driver-460
sudo reboot
Add the distribution, update the package manager, install NVIDIA for Docker, and restart Docker for changes to take effect. For more information, look at the install guide
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt update
sudo apt install -y nvidia-docker2
sudo systemctl restart docker
According to this read the GPU UUID
like GPU-a1b2c3d (just the first part) from
nvidia-smi -a
Add the GPU UUID
from the last step to the Docker engine configuration file typically at /etc/docker/daemon.json
. Create the file if it does not exist yet.
{
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
},
"default-runtime": "nvidia",
"node-generic-resources": ["gpu=GPU-a1b2c3d"]
}
We use Pylint for python code quality assurance.
Input following command terminal:
pip install pylint
To run linting on the entire repository, run the following command from the root:
pylint CameraProcessor docs Interface ProcessorOrchestrator utility VideoForwarder --rcfile=.pylintrc --reports=n
pylint <Subsystem> --rcfile=.pylintrc --reports=n
<Subsystem>
is the Python module to run.
--rcfile
is the linting specification used by Pylint.
--reports
sets whether the full report should be displayed or not.
Our recommendation would be n
since this only displays linting errors/warnings and the eventual score.
Pylint needs an __init__.py
file in the subsystem root to parse all folders to lint.
This run must be a subsystem since the root does not contain an __init__.py
file.
Some folders should be excluded from linting.
The exclusion could be for multiple reasons like,
the symlinked algorithms in the CameraProcessor folder or
the Python virtual environment folder.
Add folder name to ignore=
in .pylintrc
.