Contains Cling and and Jupyter Notebook with Xeus-Cling kernel.
1.5K
The container contains Cling, an interactive C++ interpreter that uses the Read-Eval-Print (REPL) concept. With Jupyter Notebook it is possible to use Cling in the web browser. To connect Cling with Jupyter Notebook, so called kernels are needed. The built-in kernel of Cling and the Xeus Cling kernel from Quandstack are installed. Cling also supports Nvidia CUDA. For this, a CUDA 8 environment is installed in the container.
Sources:
Without CUDA, a normal Docker installation is sufficient. For CUDA, the Nvidia driver 375.26 or newer and the Nvidia Docker extension are required.
Cling without CUDA
docker run -it sehrig/cling cling
Cling with CUDA
docker run --gpus=all -it sehrig/cling cling -xcuda
It is also possible to add additional flags, e.g. the C++ standard: docker run --gpus=all -it sehrig/cling cling -xcuda --std=c++14
Jupyter Notebook without CUDA
docker run -it -p 8888:8888 sehrig/cling jupyter-notebook
Jupyter Notebook without CUDA
docker run -it -p 8888:8888 sehrig/cling jupyter-lab
Jupyter Notebook with CUDA
docker run -it --gpus=all -p 8888:8888 sehrig/cling jupyter-notebook
Jupyter Lab with CUDA
docker run -it --gpus=all -p 8888:8888 sehrig/cling jupyter-lab
If the browser does not open Jupyter Notebook/Lab automatically, please open the link from the terminal which contains 127.0.0.1.
There are two types of kernels, a kernel provided by Cling itself and a kernel provided by Quantstack (Xeus-Cling). Most features are similar, but there are some differences in functionality and support for helper libraries.
The kernels Cling-C++-* uses the built-in kernel of Cling.
The C++-* and Xeus-C++-*-CUDA kernels use the Quantstack kernel. The names differ because the C++-* kernels are installed by default and the Xeus-C++-*-CUDA kernel are container specific.
The Docker recipe was generated with hpccm from Nvidia. The generator scripts can be found here.
Content type
Image
Digest
Size
3 GB
Last updated
almost 6 years ago
docker pull sehrig/cling