Sorry, you need to enable JavaScript to visit this website.

Easier Intel® QAT deployment for Media applications

BY Xintian Wu ON Jul 20, 2020

As the complexity of applications continues to grow, systems need more computational resources for workloads, including cryptography and data compression. Intel® QuickAssist Technology (QAT) provides a software-enabled foundation for data security, authentication, and compression and improves performance across applications and platforms.

Developers can accelerate compute-intensive operations with QAT as it offloads the data to hardware[CA1] [PB2]  capable of optimizing compression and cryptographic functions, reducing the demands on platform while maximizing CPU use for cloud, networking, big data, and storage applications. QAT can also help improve the security of media application by accelerating https traffic encryption.

Docker Images for Open Visual Cloud Applications

Now it is easier than ever to deploy QAT workloads with the availability of Docker images for QAT in the Open Visual Cloud software stack optimized for media creation and delivery. The Open Visual Cloud is a set of open source software stacks (with full end-to-end sample pipelines) for media, analytics, graphics and immersive media, optimized for cloud native deployment, Documents that describe the system setup to use Intel QAT within docker containers, installation, configuration, and run instructions are in the QAT GitHub page with available Docker image files. (Please note that the docker images must be built and tested on the host with QAT installed.

The QAT docker images packages QATZip, QATEngine, OpenSSL, and NGINX into a ready-to-use container, saving the developer’s time for compiling and setting up those components. The docker images include a set of deployment docker images (for different base Operating Systems) and a set of development images, as listed in the table below:

 

Image

Dockerfile

Docker Image

media-dev

centos-7.4/media/dev
centos-7.5/media/dev
centos-7.6/media/dev
ubuntu-16.04/media/dev
ubuntu-18.04/media/dev

openvisualcloud/qat-centos74-media-dev
openvisualcloud/qat-centos75-media-dev
openvisualcloud/qat-centos76-media-dev
openvisualcloud/qat-ubuntu1604-media-dev
openvisualcloud/qat-ubuntu1804-media-dev

media-nginx

centos-7.4/media/nginx
centos-7.5/media/nginx
centos-7.6/media/nginx
ubuntu-16.04/media/nginx
ubuntu-18.04/media/nginx

openvisualcloud/qat-centos74-media-nginx
openvisualcloud/qat-centos75-media-nginx
openvisualcloud/qat-centos76-media-nginx
openvisualcloud/qat-ubuntu1604-media-nginx
openvisualcloud/qat-ubuntu1804-media-nginx

 

The deployment images provide a ready-to-use NGINX web service environment where the developers can create an encrypted web server, a CDN service, or the gateway of any macro-service.

The development images can be used to compile C++ QAT-based applications utilizing the QAT cryptographic or data compression API.

Examples of using the NGINX/QAT images as easy as:

docker run -v /dev/hugepages:/dev/hugepages $(ls -1 /dev/uio* /dev/qat_* /dev/usdm_drv | sed 's/\(.*\)/--device=\1:\1/') -it openvisualcloud/qat-ubuntu1804-media-nginx

Find more details on the Open Visual Cloud Github page for additional steps to setup a QAT platform[CA3] [PB4] [PB5] .

Useful Links for Developers

 [CA1]Is QAT only available for use with certain types of Intel processors?

Mentioned in the Install Guide [PB2]

 [CA3]Are there future updates to Open Visual Cloud or QAT that we can allude to at the end here?

Will find out. Not sure [PB4]

No [PB5]