Dependencies¶
This document catalogues the tools, libraries and packages that AMD Inference Server depends on and are installed in the AMD Inference Server Docker containers. The information here is derived from the Dockerfile and source files used in AMD Inference Server. If there is a conflict, the source takes precedence.
Docker Image¶
There are two kinds of images: development and production. Dev images are larger in size and contain all the tools and dependencies to compile, lint and test the inference server. In contrast, the production image is much smaller and only includes specific files from a subset of these packages that are needed at runtime. In these two images, multiple flavors of Docker images may be created based on which optional features are enabled and how the server is compiled. In the tables below, note the following symbols to indicate where a package (or a subset of the package) or its dependencies are used:
Symbol |
Meaning |
---|---|
a |
Used by all images |
d |
Used by dev images only |
0 |
Used always (subject to compilation options) |
1 |
Used if Vitis AI is added |
2 |
Used if TF+ZenDNN is added |
3 |
Used if PT+ZenDNN is added |
Base Image¶
The base image for both dev and production images is Ubuntu 18.04 and it includes a number of packages by default.
Ubuntu Bionic Repositories¶
The following packages (and any dependencies) are installed from Ubuntu’s repositories using Ubuntu’s package manager apt
.
Name |
Version |
License |
Usage |
---|---|---|---|
1:2.8-1ubuntu1 |
GPL-2+ |
Scripts used to auto-complete bash commandsd 0 |
|
1:10.0.0-4ubuntu1~18.04.2 |
Apache 2.0 with LLVM exceptions + others |
Executable used to apply formattingd 0 |
|
1:10.0.0-4ubuntu1~18.04.2 |
Apache 2.0 with LLVM exceptions + others |
Executable used for lintingd 0 |
|
7.58.0-2ubuntu3.14 |
Curl |
Executable used for transferring dataa 0 |
|
1.8.13-10 |
GPL-2 with Qt exception + others |
Executable used for building documentationd 0 |
|
4:7.4.0-1ubuntu2.3 |
GPL-2 + others |
Executable used for compiling source coded 0 |
|
8.1-0ubuntu3 |
LGPL-2.1+ + others |
Executable used for debuggingd 0 |
|
1:2.17.1-1ubuntu0.8 |
GPL-2 + others |
Executable used for source controld 0 |
|
2.40.1-2 |
EPL-1.0 + others |
Executable used to draw graphs in documentationd 0 |
|
1.65.1+dfsg-0ubuntu5 |
Boost |
Used to build AKS kernelsa 1 |
|
1.65.1+dfsg-0ubuntu5 |
Boost |
Dynamically linked by AKSa 1 |
|
1.65.1+dfsg-0ubuntu5 |
Boost |
Dynamically linked by AKSa 1 |
|
1.65.1+dfsg-0ubuntu5 |
Boost |
Dynamically linked by AKSa 1 |
|
1.65.1+dfsg-0ubuntu5 |
Boost |
Dynamically linked by AKSa 1 |
|
1.0.3-1ubuntu1.3 |
MIT |
Dynamically linked by Drogona 0 |
|
1.14.0-1ubuntu0.1 |
MIT + others |
Dynamically linked by Drogona 0 |
|
0.3.5-1 |
BSD-3 |
Dynamically linked by VARTa 1 |
|
0.12.1-1.3ubuntu0.3 |
MIT |
Dynamically linked by rt-enginea 1 |
|
1.7.4-3 |
MIT + others |
Dynamically linked by proteus-server and Drogona 0 |
|
1.1.1-1ubuntu2.1~18.04.13 |
Dual OpenSSL/SSLeay |
Dynamically linked by Drogona 0 |
|
2.27-3ubuntu1.2 |
GPL-2 + others |
Executable used to set localea 0 |
|
4.1-9.1ubuntu1 |
GPL-3+ |
Executable used to build executablesd 0 |
|
1.60+git20161116.90da8a0-1ubuntu1 |
GPL-2+ |
Executable used to query used portsa 1 |
|
1:7.6p1-4ubuntu0.5 |
OpenSSH + others |
Executable used for remote connectionsd 0 |
|
0.29.1-0ubuntu2 |
GPL-2+ |
Executable used for configuring unilogd 0 |
|
3.6.5-3 |
PSF License |
Executable used for scripting and testing proteus-serverd 0 |
|
3.6.7-1~18.04 |
PSF License |
Used to build Python bindingsd 0 |
|
1.8.21p2-3ubuntu1.4 |
ISC license + others |
Executable used to grant elevated permissions to the usera 0 |
|
1.4-3build1 |
Freely distributable |
Executable used to convert absolute symlinks to relative onesd 0 |
|
2021a-0ubuntu0.18.04 |
Public Domain |
Used for setting the timezonea 0 |
|
2.31.1-0.4ubuntu3.7 |
GPL-2+ + others |
Dynamically linked by Drogona 0 |
|
1:3.13.0-2ubuntu2 |
GPL-2+ + others |
Executable used for for debuggingd 0 |
|
2:8.0.1453-1ubuntu1.4 |
Vim + others |
Executable used for text editing in terminald 0 |
|
1.19.4-1ubuntu2.2 |
GPL-3 with OpenSSL exception |
Executable used to retrieve files from the internetd 0 |
|
1:1.2.11.dfsg-0ubuntu2 |
Zlib |
Dynamically linked by proteus-servera 0 |
Ubuntu PPAs¶
The following packages (and any dependencies) are installed from a Personal Package Archive (PPA) using Ubuntu’s package manager apt
.
Name |
Version |
License |
Usage |
---|---|---|---|
9.4.0-1ubuntu1~18.04 |
GPL-3 + others |
Executable used for compiling source coded 0 |
|
9.4.0-1ubuntu1~18.04 |
GPL-3 + others |
Executable used for compiling source coded 0 |
PyPI¶
The following packages (and any dependencies) are installed from the Python Package Index (PyPI) using pip
.
Name |
Version |
License |
Usage |
---|---|---|---|
latest |
MIT |
Formatting Python filesd 0 |
|
latest |
BSD-3 |
Connect Doxygen to Sphinx for documentationd 0 |
|
latest |
GPL-3 |
CMake linter and formatterd 0 |
|
latest |
BSD-3 |
C++ linterd 0 |
|
latest |
MIT |
Reporting test coveraged 0 |
|
latest |
BSD-3 |
Scientific computing package for Pythond 0 |
|
latest |
MIT |
Python bindings for OpenCVd 0 |
|
latest |
MIT |
Python package installerd 0 |
|
latest |
MIT |
Pre-commit hook frameworkd 0 |
|
latest |
MIT |
Used to extract function documentation for Python bindingd 0 |
|
latest |
BSD-3 |
Used to generate type stubs for Python bindingd 0 |
|
latest |
MIT |
Python testing infrastructured 0 |
|
latest |
BSD-2 |
Plugin for Pytest to add benchmarkingd 0 |
|
latest |
MIT |
Plugin for Pytest to run C++ testsd 0 |
|
latest |
MIT |
Plugin for Pytest to run external processesd 0 |
|
latest |
Apache-2.0 |
Making REST requestsd 0 |
|
latest |
MIT |
Printing tables when benchmarkingd 0 |
|
latest |
MIT |
Manage Python packagesd 0 |
|
latest |
BSD-2 + others |
Building documentationd 0 |
|
latest |
MIT |
Sphinx plugin for documenting CLIsd 0 |
|
latest |
MIT |
Adds copy button for code blocksd 0 |
|
latest |
MIT |
Sphinx plugin for links to the project’s Github issue trackerd 0 |
|
latest |
BSD-2 |
Sphinx plugin to export documentation to Confluenced 0 |
|
latest |
MIT |
Support wheels for Python packagesd 0 |
Github¶
The following packages are installed from Github.
Name |
Version |
License |
Usage |
---|---|---|---|
3.21.1 |
BSD-3 + others |
Executable used to generate build systemsd 0 |
|
1.0.3 |
Dual BSD-2/Boost + others |
Statically linked by proteus-server for an efficient multi-producer queuea 0 |
|
2.2.1 |
MIT |
Statically linked by proteus-server for command-line argument parsinga 0 |
|
1.5.4505 |
EUPL |
Executable created by pyinstaller for starting XRMa 0 |
|
1.7.5 |
MIT |
Dynamically linked by proteus-server for an HTTP and websocket servera 0 |
|
latest |
MIT |
Dynamically linked by proteus-server for directory monitoringa 0 |
|
3.4.8 |
LGPL-2.1+ + others |
Dynamically linked by proteus-server for video processinga 0 |
|
latest |
MIT |
Executable used to publish documentation to gh-pages branchd 0 |
|
2.13.3 |
MIT + others |
Executable used to manage large files in gitd 0 |
|
1.12 |
Apache 2.0 |
Executable used to drop down to user when starting containera 0 |
|
1.11.0 |
BSD-3 |
Statically linked by proteus’s test executablesd 0 |
|
1.44 |
Apache 2.0 |
Statically linked by proteus-server for gRPC supporta 0 |
|
0.14 |
LLVM License |
Executable used to check C++ header inclusionsd 0 |
|
5.3.0 |
BSD-2 |
Dynamically linked by proteus-server for memory allocation implementationa 3 |
|
0.15 |
MIT |
Dynamically linked by Vitis librariesa 1 |
|
2.0.0.1 |
Public Domain Certification |
Statically linked by proteus-server for base64 codeca 0 |
|
1.15 |
GPL-2 |
Executable used for test coverage measurementd 0 |
|
14.16.0 |
MIT + others |
Executable used for web GUI developmentd 0 |
|
3.4.3 |
Apache 2.0 |
Dynamically linked by proteus-server for image and video processinga 0 |
|
1.1.0 |
Apache 2.0 |
Dynamically linked by proteus-servera 0 |
|
2.9.1 |
BSD-3 |
Headers used to build Python bindingsd 0 |
|
0.12.2 |
MIT |
Dynamically linked by proteus-server for metricsa 0 |
|
3.19.4 |
BSD-3 |
Dynamically linked by proteus-server and Vitis librariesa 0 |
|
1.8.2 |
MIT |
Statically linked by proteus-server for logginga 0 |
|
latest |
Apache 2.0 |
VART is dynamically linked by proteus-servera 1 |
|
4.1.0 |
modified Apache 2.0 |
Executable used for benchmarking proteus-serverd 0 |
Xilinx¶
The following packages are installed from Xilinx.
Name |
Version |
License |
Usage |
---|---|---|---|
1.3.29 |
Apache 2.0 |
Used for FPGA resource managementa 1 |
|
2.12.427 |
Apache 2.0 |
Used for communicating to the FPGAa 1 |
AMD¶
The following packages are downloaded from AMD.
Name |
Version |
License |
Usage |
---|---|---|---|
3.3 |
AMD ZenDNN EULA |
Used by TF+ZenDNN workera 2 |
|
3.3 |
AMD ZenDNN EULA |
Used by PT+ZenDNN workera 3 |
Included¶
The following files are included in the AMD Inference Server repository under the terms of their original licensing. This information is duplicated in the LICENSE.
Name |
Source |
Original File |
License |
Usage |
---|---|---|---|---|
bicycle-384566_640.jpg |
Used for testingd 0 |
|||
CodeCoverage.cmake |
BSD-3 |
CMake module for test coverage measurementd 0 |
||
ctpl.h |
Apache 2.0 |
C++ Thread pool librarya 0 |
||
dog-3619020_640.jpg |
Used for testingd 0 |
|||
nine_9273.jpg |
? |
Used for testingd 0 |
||
proteusConfig.cmake |
MIT |
CMake module for installing librariesd 0 |
||
Queue.js |
JavaScript class for a queued 0 |
|||
sport-1284275_640.jpg |
Used for testingd 0 |
Downloaded Files¶
The following files can be optionally downloaded by scripts and may be needed by examples and tests.
Name |
Source |
License |
Usage |
---|---|---|---|
Xilinx Inc. |
Apache 2.0 |
Used for testingd 0 |
|
Used for testingd 0 |
|||
Used for testingd 0 |
|||
Xilinx Inc. |
Apache 2.0 |
Used for testingd 3 |
|
Xilinx Inc. |
Apache 2.0 |
Used for testingd 0 |
|
Xilinx Inc. |
Apache 2.0 |
Used for testingd 2 |
|
Xilinx Inc. |
Apache 2.0 |
Used for testingd 0 |
|
Xilinx Inc. |
Apache 2.0 |
Used for testingd 0 |
|
Xilinx Inc. |
Apache 2.0 |
Used for testingd 0 |