Import system images
System-level container images are used by all users. You can obtain images from Lenovo salesperson or import images into LiCO as system-level container images. This section describes how to create and import system-level container images.
Image bootstrap files
Download image_bootstrap.zip from https://hpc.lenovo.com/lico/downloads/7.1/images/image_bootstrap.zip, image_bootstrap.zip includes the following singularity bootstrap(definition) files, then we can use it to create images.
File name | Framework | CPU/GPU | Comments |
---|---|---|---|
caffe-1.0-cpu | Caffe | CPU | |
caffe-1.0-gpu-cuda102 | Caffe | CUDA 10.2 | Supports P100 and V100 Caffe does not support CUDA 9.0 officially |
NVCaffe-0.17.3-gpu-cuda102 | Caffe | CUDA 10.2 | Supports P100 and V100 |
chainer-6.7.0-gpu-cuda101 | Chainer | CUDA 10.1 | Supports P100, V100, RTX5000, RTX8000 and T4 |
cvat | Other | CPU | |
intel-caffe-1.1.6-cpu | Intel-caffe | CPU | |
intel-python-3.7 | Other | CPU | |
intel-pytorch-1.13.0-cpu | PyTorch | CPU | |
intel-tensorflow-1.15.2-cpu | TensorFlow | CPU | |
intel-tensorflow-2.10.0-cpu | TensorFlow | CPU | |
jupyter-default | Jupyter | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
jupyter-py37 | Jupyter | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
jupyter-py38 | Jupyter | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
jupyter-intel-py37 | Jupyter | CPU | |
jupyter-intel-optimized-pytorch | Jupyter | CPU | |
jupyter-intel-optimized-tensorflow | Jupyter | CPU | |
letrain-2.0.0-cuda118 | LeTrain | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
letrain-2.0.0-xpu | LeTrain | XPU | Supports Intel Data Center GPU Flex 140 and 170 |
mxnet-1.9.1-cpu | Mxnet | CPU | |
mxnet-1.9.1-gpu-cuda112 | Mxnet | CUDA 11.2 | Supports P100, V100, RTX5000, RTX8000 and T4 |
neon-2.6-cpu | Neon | CPU | |
paddle-2.4.1-cuda117 | paddlepaddle | CPU CUDA 11.7 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
pytorch-1.14.0-cuda118 | PyTorch | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
rstudio | RStudio | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
scikit-single-cpu | Scikit | CPU | |
tensorflow-1.15.5-cuda118 | TensorFlow | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
tensorflow-1.15.5-cuda118-hbase | TensorFlow | CPU CUDA 11.8 |
Supports HBase Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
tensorflow-1.15.5-cuda118-keras | TensorFlow | CPU CUDA 11.8 |
Supports Keras(2.11.0) Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
tensorflow-1.15.5-cuda118-mongodb | TensorFlow | CPU CUDA 11.8 |
Supports MongoDB Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
tensorflow-1.15.2-mkl | TensorFlow | CPU | |
tensorflow-2.10.1-cuda118 | TensorFlow | CPU CUDA 11.8 |
Supports P100, V100, RTX5000, RTX8000, T4 and A100 |
tensorrt-8.5.1-cuda118 | TensorRT | CUDA 11.8 | Supports P100, V100,T4 and A100 |
Create images
Step 1. Prepare a build node with a minimum storage of 100 GB.
Notes:
- This node should have the same OS version and singularity version with the nodes in the cluster.
- If you want to create GPU images, this node should have the same GPU and GPU driver as nodes in the cluster.
- To use images related to the MKL function, ensure that these images are created on a machine with the same CPU architecture.
Step 2. To the build node, ensure that squashfs-tools, libarchive, and make are installed.
Step 3. To the build node, upload the compressed image bootstrap file you obtained which named image_bootstrap.zip
. For example, upload the compressed package to the new directory /opt/images
. If the new directory cannot be found, create it manually. Note that both this new directory and /var/tmp
cannot be an NFS mount.
Step 4. To the build node, run the following commands to extract the compressed package.
cd /opt/images
unzip image_bootstrap.zip
Step 5. To the build node, do one of the following to create image. The created image file is in the dist folder of the current directory.
Run the following commands to create all images at once:
cd /opt/images/image_bootstrap make all
Run the following commands to create a group images at once:
cd /opt/images/image_bootstrap make caffe make cvat make intel-caffe make intel-python make tensorflow make mxnet make neon make chainer make letrain make jupyter make pytorch make rstudio make scikit make tensorrt make intel-pytorch make intel-tensorflow make paddlepaddle
Notes: Check the network when one of the following errors is displayed:
- ERROR MANIFEST_UNKNOWN: manifest unknown
- ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.
- urllib2.URLError: <urlopen error [Error 104] Connection reset by peer>
Import images into LiCO as system-level images
Step 1. Copy the created images to the management node.
For example, copy the images to directory /opt/images
. Note that both this directory and /var/tmp
cannot be an NFS mount
Step 2. Run the following commands to import images into LiCO:
cd /opt/images
lico import_image caffe-cpu caffe-1.0-cpu.image caffe
lico import_image caffe-gpu caffe-1.0-gpu-cuda102.image caffe
lico import_image NVCaffe NVCaffe-0.17.3-gpu-cuda102.image caffe
lico import_image intel-caffe intel-caffe-1.1.6-cpu.image intel-caffe
lico import_image intel-python intel-python-3.7.image other
lico import_image tensorflow tensorflow-1.15.5-cuda118.image tensorflow
lico import_image tensorflow-mkl tensorflow-1.15.2-mkl.image tensorflow
lico import_image tensorflow-hbase tensorflow-1.15.5-cuda118-hbase.image tensorflow
lico import_image tensorflow-keras tensorflow-1.15.5-cuda118-keras.image tensorflow
lico import_image tensorflow-mongodb tensorflow-1.15.5-cuda118-mongodb.image tensorflow
lico import_image tensorflow2 tensorflow-2.10.1-cuda118.image tensorflow2
lico import_image intel-tensorflow intel-tensorflow-1.15.2-cpu.image tensorflow
lico import_image intel-tensorflow2-cpu intel-tensorflow-2.10.0-cpu.image tensorflow2
lico import_image mxnet-cpu mxnet-1.9.1-cpu.image mxnet
lico import_image mxnet-gpu mxnet-1.9.1-gpu-cuda112.image mxnet
lico import_image neon neon-2.6-cpu.image neon
lico import_image chainer-gpu chainer-6.7.0-gpu-cuda101.image chainer
lico import_image letrain letrain-2.0.0-cuda118.image letrain
lico import_image letrain-xpu letrain-2.0.0-xpu.image letrain
lico import_image jupyter-default jupyter-default.image jupyter -t py38 -t cpu -t gpu
lico import_image jupyter-py37 jupyter-py37.image jupyter -t py37 -t cpu -t gpu
lico import_image jupyter-py38 jupyter-py38.image jupyter -t py38 -t cpu -t gpu
lico import_image jupyter-intel-py37 jupyter-intel-py37.image jupyter -t intel_py37 -t cpu
lico import_image pytorch pytorch-1.14.0-cuda118.image pytorch
lico import_image intel-pytorch-cpu intel-pytorch-1.13.0-cpu.image pytorch
lico import_image rstudio rstudio.image rstudio -t cpu -t gpu
lico import_image scikit scikit-single-cpu.image scikit
lico import_image tensorrt8 tensorrt-8.5.1.image tensorrt -t tensorrt
lico import_image cvat cvat-2.3.0.image other
lico import_image paddlepaddle paddle-2.4.1-cuda117.image paddlepaddle
# If you use the intel openapi module, please import the following image
lico import_image jupyter-intel-optimized-pytorch \
jupyter-intel-optimized-pytorch.image jupyter -t pytorch
lico import_image jupyter-intel-optimized-tensorflow \
jupyter-intel-optimized-tensorflow.image jupyter -t tensorflow2