88
LiCO 5.2.1 User Guide

LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

LiCO 5.2.1 User Guide

Page 2: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Second Edition (January 2019)

© Copyright Lenovo 2018, 2019.

LIMITED AND RESTRICTED RIGHTS NOTICE: If data or software is delivered pursuant to a General Services Administration (GSA) contract, use, reproduction, or disclosure is subject to restrictions set forth in Contract No. GS-35F- 05925.

Page 3: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Contents

Chapter 1. Overview. . . . . . . . . . . 1Introduction to LiCO . . . . . . . . . . . . . . 1Features of LiCO . . . . . . . . . . . . . . . 1Terminology . . . . . . . . . . . . . . . . . 1Prerequisite . . . . . . . . . . . . . . . . . 2Operating environment . . . . . . . . . . . . . 2

Chapter 2. Basic operations. . . . . . . 3Log in. . . . . . . . . . . . . . . . . . . . 3Log out . . . . . . . . . . . . . . . . . . . 3Change the password . . . . . . . . . . . . . 4View cluster resources and job status . . . . . . . 4Elements on the cluster overview page. . . . . . . 4Create a folder . . . . . . . . . . . . . . . . 5Rename a folder . . . . . . . . . . . . . . . 5Preview an image . . . . . . . . . . . . . . . 6Archive files . . . . . . . . . . . . . . . . . 7Extract an archived file . . . . . . . . . . . . . 8Upload files . . . . . . . . . . . . . . . . . 8Upload a container image . . . . . . . . . . . . 9

Chapter 3. Lenovo-accelerated AI . . 13Job submission – Train . . . . . . . . . . . . 13

Submit an Image Classification – Train job . . 13Submit an Object Detection – Train job . . . . 14Submit an instance segmentation – train job . . . . . . . . . . . . . . . . . . 16Submit a Medical Image Segmentation – Train job . . . . . . . . . . . . . . . . . . 17Submit a Seq2Seq – Train job . . . . . . . 18Submit a Memory Network – Train job . . . . 19Submit an image GAN – Train job . . . . . . 21

Job submission – Predict . . . . . . . . . . . 22Submit an Image Classification – Predict job . . . . . . . . . . . . . . . . . . 22Submit an Object Detection – Predict job . . . 24Submit an Instance Segmentation – Predict job . . . . . . . . . . . . . . . . . . 25Submit a Medical Image Segmentation – Predict job . . . . . . . . . . . . . . . 26Submit a Seq2Seq – Predict job . . . . . . 27Submit a Memory Network – Predict job . . . 28Submit an Image GAN – Predict job . . . . . 28

Deployment . . . . . . . . . . . . . . . . 30Install LeTrain . . . . . . . . . . . . . . 30Export the trained model . . . . . . . . . 30Run the inference toolkit code . . . . . . . 31

Chapter 4. Job submission . . . . . . 35Submit an industry standard AI job . . . . . . . 35

Submit a TensorFlow Single Node job . . . . 35Submit a TensorFlow Multinode job . . . . . 36Submit a Caffe job . . . . . . . . . . . . 39Submit an Intel Caffe job . . . . . . . . . 40Submit a MXNet Single Node job . . . . . . 42Submit a MXNet MultiNode job . . . . . . . 43Submit a Neon job . . . . . . . . . . . . 45

Submit an HPC job . . . . . . . . . . . . . 47Submit an MPI job . . . . . . . . . . . . 47Submit an ANSYS job . . . . . . . . . . 48Submit a COMSOL job . . . . . . . . . . 50

Submit a general job . . . . . . . . . . . . . 52Submit a common job . . . . . . . . . . . . 53

Chapter 5. Manage the job lifecycle . . . . . . . . . . . . . . . . 57Cancel a job . . . . . . . . . . . . . . . . 57Re-run a job . . . . . . . . . . . . . . . . 57Delete a job . . . . . . . . . . . . . . . . 58GPU job monitoring . . . . . . . . . . . . . 59VNC management . . . . . . . . . . . . . . 60

Chapter 6. Train an AI image classification model . . . . . . . . . . 63Import an image dataset . . . . . . . . . . . 63Create a private network topology . . . . . . . 65Train a model. . . . . . . . . . . . . . . . 65Adjust parameters during training . . . . . . . . 67Test a model . . . . . . . . . . . . . . . . 68Export a model . . . . . . . . . . . . . . . 68Import a pre-trained model . . . . . . . . . . 69

Chapter 7. Custom templates . . . . . 71Create a custom template . . . . . . . . . . . 71Edit a custom template . . . . . . . . . . . . 72Copy a custom template . . . . . . . . . . . 72Delete a custom template . . . . . . . . . . . 72Publish a custom template . . . . . . . . . . 72

Chapter 8. Expert mode . . . . . . . . 75Submit a job using command lines . . . . . . . 75Example of compiled job files . . . . . . . . . 75

Chapter 9. LiCO AI commands . . . . 77Introduction to LiCO AI commands . . . . . . . 77

© Copyright Lenovo 2018, 2019 i

Page 4: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Job files in YAML format . . . . . . . . . . . 78Example of a single node job file . . . . . . 78Example of a TensorFlow-multinode job file . . 78Example of a Mxnet-multinode job file . . . . 79Example of an Intel-caffe job file . . . . . . 79

Chapter 10. Additional information . . 81Absolute paths of user directories. . . . . . . . 81

Failed job submissions . . . . . . . . . . . . 81Deletion of VNC sessions . . . . . . . . . . . 81References for Slurm commands . . . . . . . . 81References for Caffe network topology definitions . . . . . . . . . . . . . . . . . 82Data sources for GPU monitoring . . . . . . . . 82Transform an NGC image . . . . . . . . . . . 82Notices and trademarks . . . . . . . . . . . 83

ii LiCO 5.2.1 User Guide

Page 5: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 1. Overview

Introduction to LiCOLenovo Intelligent Computing Orchestration (LiCO) is an infrastructure management software for high- performance computing (HPC) and artificial intelligence (AI). It provides features like cluster management and monitoring, job scheduling and management, cluster user management, account management, and file system management.

With LiCO, users can centralize resource allocation in one supercomputing cluster and carry out HPC and AI jobs simultaneously. Users can perform operations by logging in to the management system interface with a browser, or by using command lines after logging in to a cluster login node with another Linux shell.

Features of LiCO• Cluster resource monitoring: LiCO provides a dashboard to monitor the usage of cluster resources,

including CPU, memory, storage, and network.

• Job template storage: LiCO provides multiple job templates, including HPC and AI job templates, which help users submit jobs from Web pages with convenience.

• Customized templates: Users can create their own job templates to support other HPC and AI applications.

• Job management and monitoring: Users can directly view and manage the status and results of jobs. Various common schedulers and a wide range of job types are supported (including AI jobs such as TensorFlow and Caffe).

• E2E training: Users can train image classification models without coding. LiCO also provides E2E support for training, such as dataset management, topology management, and pre-trained model management.

• User management and billing: LiCO manages both local and domain users through the same interface. It supports user top-ups and chargebacks, and offers the ability to set billing groups and fees.

• Customizations: A range of customizations are available, such as enterprise job template customization, report customization, and 3D server visualization.

• Container image management: LiCO provides system container images for every supported AI framework. Users can upload private images and run AI or HPC jobs on them.

• Expert Mode: LiCO provides command line tools to submit and manage jobs. Expert users can log in to the login node via another shell and execute commands.

Terminology• Computer cluster: a general reference to a collection of server resources including management nodes,

login nodes, and computing nodes

• Job: a series of commands in sequence intended to accomplish a particular task

• Job status: the status of a job in the scheduling system, such as waiting, in queue, on hold, running, suspended, or completed

• Node status: the status of a node, such as idle, busy, or off

• Job scheduling system: the distributed program in control of receiving, distributing, executing and registering jobs, also referred to as the operation scheduler or simply scheduler

• Management node: the server in a cluster running management programs such as job scheduling, cluster management and user billing

© Copyright Lenovo 2018, 2019 1

Page 6: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

• Login node: the server in a cluster to which users can log in via Linux and conduct operations

• Computing node: the server in a cluster for executing jobs

• User group: a set of users for which the system has defined an access control policy, so that all users in the same user group have access to the same set of cluster resources

• Billing group: a group of cluster users that are to be billed under one account, also referred to as a billing account. A billing account can be made up of a single user or multiple users.

• NGC Image: NVIDIA Container Runtime for Docker, also known as nvidia-docker. It supports GPU-based applications that are portable across multiple machines. This is achieved through the use of Docker containers.

PrerequisiteLiCO currently supports Slurm as the scheduler. The commands for Slurm in this Guide are not applicable to other schedulers.

Operating environmentCluster server:

Lenovo ThinkSystem servers

Operating system

• CentOS / Red Hat Enterprise Linux (RHEL) 7.5

• SUSE Linux Enterprise server (SLES) 12 SP3

Client requirements:

• Hardware: CPU of 2.0 GHz or above, memory of 8 GB or above

• Browser: Chrome (V 62.0 or higher) or Firefox (V 56.0 or higher) recommended

• Display resolution: 1280 x 800 or above

2 LiCO 5.2.1 User Guide

Page 7: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 2. Basic operations

Note: Instructions in this chapter are primarily based on the management system interface. Command line users can refer to “Submit a job using command lines” on page 75 and “References for Slurm commands” on page 81 for further instructions.

Log inThe client must have direct access to the cluster login node.

Step 1. Open a browser.

Step 2. Type the IP address for the cluster’s login node, such as https://10.220.112.21.

Step 3. Type the username and password.

Step 4. Click Log in.

The home page of the LiCO system is displayed.

Log out

Step 1. Place your cursor over in the upper-right corner of the page. The user account information is displayed.

Step 2. Click . A dialog is displayed, asking you to confirm the logout.

Step 3. Click Confirm .

You have logged out from LiCO.

© Copyright Lenovo 2018, 2019 3

Page 8: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Change the password

Step 1. Place your cursor over in the upper-right corner. The user information is displayed.

Step 2. Click . A dialog is displayed for you to change the password.

Step 3. Type the current password, and then type the new password twice.

Step 4. Click OK.

View cluster resources and job statusSelect Home from the left navigation pane.

The cluster overview page is displayed.

Elements on the cluster overview page• CPU: Shows the CPU usage in the cluster, with the number of occupied CPU cores and the total number

of CPU cores in the cluster.

• Memory: Shows the memory usage in the cluster, with the used memory and the total memory in the cluster.

4 LiCO 5.2.1 User Guide

Page 9: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

• Shared Storage: Shows the storage usage in the cluster, with the used storage and total storage.

• Network: Shows the upload and download rates.

• Jobs: Shows the information about jobs that the current user has submitted to the Running or Waiting queue. Switch between Runningand Waiting to view the names of current jobs and their running or waiting time. Click More to go to the task details page to view more detailed information about the execution of the jobs.

• Job Status: Shows the status of all jobs submitted by the current user. Jobs can be viewed by queue or time period. When sorted by queue, the names of all queues in a cluster are listed. Time period options include Last hour, Last 1 day, Last 7 days, and Last 30 days. In the figure, the user can choose historical jobs that are running or waiting, and view the number of jobs in the running status at a specific point in time.

• Recent Job Templates: Shows the job templates that were recently used by the user and can be leveraged.

Create a folderStep 1. Select Admin ➙ Manage Files from the left navigation pane.

The Manage Files page is displayed.

Step 2. Right-click in the blank area of the Manage Files page, and select New folder from the shortcut menu.

A new folder is created, with “untitled_folder” as its default name.

Rename a folderStep 1. Select Admin ➙ Manage Files from the left navigation pane.

Chapter 2. Basic operations 5

Page 10: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

The Manage Files page is displayed.

Step 2. Right-click a folder you want to rename, and then select Rename. The name of the selected folder appears in a text box.

Step 3. Type the new folder name in the text box.

The folder is renamed.

Preview an imageStep 1. Select Admin ➙ Manage files from the left navigation pane.

The Manage Files page is displayed.

Step 2. Right-click an image, and then select Preview from the short-cut menu.

6 LiCO 5.2.1 User Guide

Page 11: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

The image is displayed in preview mode.

Archive filesStep 1. Select Admin ➙ Manage Files from the left navigation pane.

The Manage Files page is displayed.

Step 2. Right-click a file or folder, place the cursor over Create archive from the shortcut menu, and then select the compression format.

The selected file or folder is archived in your designated format.

Chapter 2. Basic operations 7

Page 12: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Extract an archived fileStep 1. Select Admin ➙ Manage files from the left navigation pane.

The Manage Files page is displayed.

Step 2. Right-click an archived file (compressed in TAR, ZIP, or GZIP format) you want to extract, and then select Extract files from archive from the shortcut menu.

Upload filesStep 1. Select Admin ➙ Manage Files from the left navigation pane.

The Manage files page is displayed.

8 LiCO 5.2.1 User Guide

Page 13: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Double-click a folder to open it.

Step 3. Right-click in the blank area, and select Upload files from the shortcut menu. The Upload files dialog is displayed.

Step 4. Select one or more local files to upload using either of the following methods:

• Drag and drop a file or files into the dotted dialog.

• Click Select files to upload at the bottom of the Upload files dialog.

Successfully uploaded files are available on the Manage Files page.

Upload a container imageLiCO runs all AI jobs within a container. The system supports the Singularity container platform, with different AI job templates running on different container platforms.

In addition to providing a certain number of basic container images, LiCO also allows uploading users to customize images. LiCO supports running jobs on NGC images from V5.2.1. You can transform an NGC image to a Singularity image referring to “Transform an NGC image” in the Appendix.

Step 1. Select Admin ➙ Container Images from the left navigation pane. The Container Images page is displayed.

Chapter 2. Basic operations 9

Page 14: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Click Create. The Create Image dialog is displayed.

Step 3. Click Browse and select an image file from the cluster file system.

Step 4. Fill in the required information.

Step 5. Click Submit.

The system closes the dialog and returns to the Container Images page, showing the image being uploaded. After the image is successfully uploaded, it is available for use.

10 LiCO 5.2.1 User Guide

Page 15: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 2. Basic operations 11

Page 16: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

12 LiCO 5.2.1 User Guide

Page 17: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 3. Lenovo-accelerated AI

Lenovo-accelerated AI is based on the LeTrain project. LeTrain is a distributed training engine based on TensorFlow and optimized by Lenovo. Its goal is to make distributed training as easy as single GPU training and achieve linear scaling performance. Many popular models have been built into LeTrain. You can use them directly without coding.

Select Submit Job from the left navigation pane, and then select the Lenovo Accelerated AI tab. The Lenovo Accelerated AI tab page is displayed. All the job submission tasks are performed on this page.

Job submission – Train

Submit an Image Classification – Train jobStep 1. In the Image Classification area, click Train.

The Image Classification – Train page is displayed.

Step 2. Fill in the required information.The parameters on this page are described as follows:

• Job Name (required): name of the job

• Workspace (required): the working directory of the job. Job output files will be saved in this directory.

• Topology (required): the model of neural network

• Dataset Directory (required): the training dataset path. The dataset example can be downloaded from the link next to this field.

© Copyright Lenovo 2018, 2019 13

Page 18: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

• Dataset Example: the link for downloading a dataset example

• Training Directory (required): directory that includes the output directory for TensorFlow, summary information, and checkpoints

Batch Size (required): size of each batch of data imported for training or validation

• Learning Rate (required): The learning rate can be changed due to different learning rate policy. The user can change the learning rate policy.

• Max Steps (required): the number of maximum training iterations. The user can change related parameters by clicking the Setting button.

• Queue (required): name of the queue on which the job will be running on. The user can only select queues for which they have access permission.

• Nodes (required): the number of nodes for training

• Exclusive (required): indicates whether the training can use all the CPU resources. The user can choose the non-exclusive mode to change the CPU cores.

• GPU Per Node (required): the GPU per node for training

• Optimizer (required): Different optimizers have different settings.

• Weight Decay (required): weight decay ratio

• PS/Worker Setting (required): the number of PS and worker tasks. The user can change the setting.

Step 3. Click Submit.

Below is an example of how to fill in the information for an image classification – train job.

Submit an Object Detection – Train job Step 1. In the Object Detection area, click Train.

14 LiCO 5.2.1 User Guide

Page 19: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

The Object Detection – Train page is displayed.

Step 2. Fill in the required information.

Pretrained Model: A pre-trained model is used to help users improve training performance.

For the description of other parameters, see “Submit an Image Classification – Train job” on page 13.

Step 3. Click Submit.

Below is an example of how to fill in the information for an object detection – train job.

Chapter 3. Lenovo-accelerated AI 15

Page 20: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit an instance segmentation – train job Step 1. In the Instance Segmentation area, click Train.

The Instance Segmentation – Train page is displayed.

Step 2. Fill in the required information.

16 LiCO 5.2.1 User Guide

Page 21: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

The training model (topology) is mask-rcnn.

For the description of other parameters, see “Submit an Image Classification – Train job” on page 13.

Step 3. Click Submit.

Below is an example of how to fill in the information for an instance segmentation – train job.

Submit a Medical Image Segmentation – Train job Step 1. In the Medical Image Segmentation area, click Train.

The Medical Image Segmentation – Train page is displayed.

Step 2. Fill in the required information.

Chapter 3. Lenovo-accelerated AI 17

Page 22: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

The training model (topology) is unet.

For the description of other parameters, see “Submit an Image Classification – Train job” on page 13.

Step 3. Click Submit.

Below is an example of how to fill in the information for a medical image segmentation – train job.

Submit a Seq2Seq – Train job Step 1. In the Seq2Seq area, click Train.

The Seq2Seq – Train page is displayed.

18 LiCO 5.2.1 User Guide

Page 23: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

• Layer Number (required): indicates how many layers you want

• Size of Each Layer (required): the size of each layer

• Vocabulary Size (required): total vocabulary size you want to translate

For the description of other parameters, see “Submit an Image Classification – Train job” on page 13.

Step 3. Click Submit.

Below is an example of how to fill in the information for a Seq2Seq – train job.

Submit a Memory Network – Train job Step 1. In the Memory Network area, click Train.

The Memory Network – Train dialog is displayed.

Chapter 3. Lenovo-accelerated AI 19

Page 24: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

• Feature Size (required): size of feature in the memory network

• Number of hops (required): number of hops in the memory network

• Embedding Size (required): size of embedding matrices

• Memory Size (required): maximum size of memory

For the description of other parameters, see “Submit an Image Classification – Train job” on page 13.

Step 3. Click Submit.

Below is an example of how to fill in the information for a memory network – train job.

20 LiCO 5.2.1 User Guide

Page 25: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit an image GAN – Train job Step 1. In the Image GAN area, click Train.

The Image GAN – Train page is displayed.

Chapter 3. Lenovo-accelerated AI 21

Page 26: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

For the parameter description, see “Submit an Image Classification – Train job” on page 13.

Step 3. Click Submit.

Below is an example of how to fill in the information for an image GAN – train job.

Job submission – Predict

Submit an Image Classification – Predict job Step 1. In the Image Classification area, click Predict.

The Image Classification – Predict page is displayed.

22 LiCO 5.2.1 User Guide

Page 27: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

• Job Name (required): name of the job

• Workspace (required): the working directory of the job. Job output files will be saved in this directory.

• Topology (required): the predict model. It should have exactly the same value as in the "train" job you submitted.

• Input Directory (required): the directory contains the images that need to be predict

• Training Directory (required): the directory contains training checkpoints

• Output Directory (required): the output directory. The predict result will be saved in this directory.

• Queue (required): the computing resource queue where jobs are running. At least one GPU and four CPU cores should be available in this queue.

Step 3. Click Submit.

Below is an example of how to fill in the information for an image classification – predict job.

Chapter 3. Lenovo-accelerated AI 23

Page 28: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit an Object Detection – Predict job Step 1. In the Object Detection area, click Predict.

The Object Detection – Predict page is displayed.

Step 2. Fill in the required information. For the parameter description, see “Submit an Image Classification – Predict job ” on page 22.

Step 3. Click Submit.

Below is an example of how to fill in the information for an object detection – predict job.

24 LiCO 5.2.1 User Guide

Page 29: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit an Instance Segmentation – Predict job Step 1. In the Instance Segmentation area, click Predict.

The Instance Segmentation – Predict page is displayed.

Step 2. Fill in the required information. For the parameter description, see “Submit an Image Classification – Predict job ” on page 22.

Step 3. Click Submit.

Below is an example of how to fill in the information for an instance segmentation – predict job..

Chapter 3. Lenovo-accelerated AI 25

Page 30: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a Medical Image Segmentation – Predict job Step 1. In the Medical Image Segmentation area, click Predict.

The Medical Image Segmentation – Predict page is displayed.

Step 2. Fill in the required information. For the parameter description, see “Submit an Image Classification – Predict job ” on page 22.

Step 3. Click Submit.

Below is an example of how to fill in the information for a medical image segmentation – predict job.

26 LiCO 5.2.1 User Guide

Page 31: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a Seq2Seq – Predict job Step 1. In the Seq2Seq area, click Predict.

The Seq2Seq – Predict page is displayed.

Step 2. Fill in the required information.

• Input File (required): the TXT file that needs to be translated. Its format must be the same as the provided TXT file in the "train" job you submitted.

• Layer Number (required): specifies how many layers you want

• Size of Each Layer (required): specifies the size of each layer

• Vocabulary Size (required): total vocabulary size you want to translate

For the description of other parameters, see “Submit an Image Classification – Predict job ” on page 22.

Note: Apart from “Input File”, the parameter values must be exactly the same as those in the “train” job.

Step 3. Click Submit.

Below is an example of how to fill in the information for a Seq2Seq - predict job.

Chapter 3. Lenovo-accelerated AI 27

Page 32: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a Memory Network – Predict job Step 1. In the Memory Network area, click Predict.

The Memory Network – Predict page is displayed.

Step 2. Fill in the required information.

Input File (required): the TXT file that needs Q&A. Its format must be the same as the provided TXT file in the "train" job you submitted. In addition, the question must end with two separate tabs.

For the description of other parameters, see “Submit an Image Classification – Predict job ” on page 22.

Step 3. Click Submit.

Below is an example of how to fill in the information for a memory network – predict job.

Submit an Image GAN – Predict jobStep 1. In the Image GAN area, click Predict.

The Image GAN – Predict page is displayed.

28 LiCO 5.2.1 User Guide

Page 33: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

• Input Image Height (required): height of each input image

• Input Image Width (required): width of each input image

• Output Image Height (required): height of each output image

• Output Image Width (required): width of each output image

• Batch Size (required): number of the final generated images. This number must have a square root.

For the description of other parameters, see “Submit an Image Classification – Predict job ” on page 22.

Note: The parameters listed above must have exactly the same values as in the “train” job you submitted.

Step 3. Click Submit.

Below is an example of how to fill in the information for an image GAN – predict job.

Chapter 3. Lenovo-accelerated AI 29

Page 34: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

DeploymentUsing a trained model in your production environment is a very customizing process. This section only provides how to do model inference outside the LiCO environment. You can modify the inference code based on this Guide and merge it into your environment.

Install LeTrain• Your deployment environment is CentOS/RHEL 7.5 or SLES 12.3.

• TensorFlow V1.9.0 has been installed.

Step 1. Obtain the LeTrain release package from /usr/local/lico/letrain/letrain-v1.2.tar.gz.

Step 2. Copy this package to /opt in your environment.

Step 3. Run the following command to install LeTrain: apt-get install -y python-setuptools libsm-dev python-tkcd /opttar -xvf letrain-v1.2.tar.gzchmod -R 777 letrain-v1.2ln -s /opt/letrain-v1.2 /opt/letrainpip install setuptools==39.1.0 --force-reinstallpip install -r /opt/letrain/requirements.txtpip install -r /opt/letrain/applications/maskrcnn/requirements.txtcd /opt/letrain/applications/frcnn/libmake

Export the trained modelThe trained model is stored in the "Train Directory" you selected for the training job.

Step 1. Select Admin ➙ Manage Files from the left navigation pane.

30 LiCO 5.2.1 User Guide

Page 35: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Find the train directory that contains the trained model, compress it, and then download it.

Step 3. Upload the compressed directory to your deployment environment, and then decompress it.

Run the inference toolkit codeAll the inference toolkit code is open-sourced. You can find the source code in /opt/letrain/inference/.

Image Classification

Code:

classification/class_inference.py

Parameters:

input_dir: the directory that stores the images to be processed

model_name: name of model, which must be the same as your selection during training

checkpoint_dir: the directory that stores the content of "Train Directory"

output_dir: the output directory

Object Detection

Code:

frcnn/frcnn_inference.py

Parameters:

input_dir: the directory that stores the images to be processed

checkpoint_dir: the directory that stores the content of the training directory

category_file: the same category file's absolute path as in the training dataset

output_dir: the output directory

Instance Segmentation

Code:

maskrcnn/maskrcnn_inference.py

Parameters:

input_dir: the directory that stores the images to be processed

checkpoint_dir: the directory that stores the content of "Train Directory"

category_file: the instance_train.json file in "Train Directory"

output_dir: the output directory

Chapter 3. Lenovo-accelerated AI 31

Page 36: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Medical Image Segmentation

Code:

unet/unet_inference.py

Parameters:

input_dir: the directory that stores the images to be processed

input_fname_pattern: the filter of image files, which can be *.jpg, *.png, *.bmp, or *.jpeg

checkpoint_dir: the directory that stores the content of "Train Directory"

output_dir: the output directory

Seq2Seq

Code:

translate/translate_inference.py

Parameters:

num_layers: number of layers, which is defined during training

size: size of each layer, which is defined during training

checkpoint_dir: the directory that stores the content of "Train Directory"

from_vocab_size: vocabulary size of the source language

to_vocab_size: vocabulary size of the target language

input_file: the file containing the sentences to be translated

output_dir: the output directory

Memory Network

Code:

kvmem/kvmem_inference.py

Parameters:

input_file: the TXT file that needs Q&A. Its format must be the same as the provided TXT file in the "train" job you submitted. In addition, the question must end with two separate tabs.

checkpoint_dir: the directory that stores the content of the training directory

output_dir: the output directory

Image GAN

Code:

dcgan/dcgan_inference.py

32 LiCO 5.2.1 User Guide

Page 37: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Parameters:

input_height: height of images set during training

input_width: width of images set during training

output_height: height of output images

output_width: width of output images

checkpoint_dir: the directory that stores the content of "Train Directory"

output_dir: the output directory

Chapter 3. Lenovo-accelerated AI 33

Page 38: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

34 LiCO 5.2.1 User Guide

Page 39: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 4. Job submission

Submit an industry standard AI jobStep 1. Select Submit Job from the left navigation pane.

The Submit Job page is displayed.

Step 2. Select the Industry Standard AI tab.

Templates for industry-standard AI jobs are displayed for your selection. All job submission tasks described in this section are performed on this tab page.

Submit a TensorFlow Single Node jobStep 1. Click Use in the TensorFlow Single Node area.

The page for TensorFlow Single Node job submission is displayed.

Step 2. Fill in the required information.Parameters on this page are described as follows:

• Job Name: name of the job

• Workspace (required): the working directory for the job

• Container image (required): the Singularity image used by the job

• TF program (.py) (required): the TensorFlow program, which will eventually run the computing task. This program must comply with the TensorFlow standard and be a .py file.

• Program args (optional): other parameters required to run the program. Additional parameters should be given in plain text, delineated by spaces.

• Queue (required): the name of the queue to which the job belongs. Users can only select queues for which they have access permission.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for a TensorFlow Single Node job.

© Copyright Lenovo 2018, 2019 35

Page 40: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

LiCO has built-in TensorBoard features for TensorFlow programs, helping users monitor the running process of TensorFlow programs on the graphical interface. After a job has been submitted, you can go to the job details page and select the TensorBoard tab. After clicking Browse and selecting the export directory for the TensorFlow program, you can do the following:

• Click View to launch TensorBoard.

• Click Refresh to refresh TensorBoard.

• Click New window to display a complete view, as shown below:

Submit a TensorFlow Multinode jobStep 1. Click Use in the TensorFlow area.

The page for TensorFlow Multinode job submission is displayed.

36 LiCO 5.2.1 User Guide

Page 41: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information. For the description of parameters on this page, see “Submit a TensorFlow Single Node job” on page 35.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for a TensorFlow Multinode job.

Chapter 4. Job submission 37

Page 42: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

LiCO has built-in TensorBoard features for TensorFlow programs, helping users monitor the running process of TensorFlow programs on the graphical interface. After a job has been submitted, you can go to the job details page and select the TensorBoard tab. After clicking Browse and selecting the export directory for the TensorFlow program, you can do the following:

• Click View to launch TensorBoard.

• Click Refresh to refresh TensorBoard.

• Click New window to display a complete view, as shown below:

38 LiCO 5.2.1 User Guide

Page 43: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a Caffe jobStep 1. Click Use in the Caffe area.

The page for Caffe job submission is displayed.

Step 2. Fill in the required information.

Caffe program (required): select a Caffe program file to run

Chapter 4. Job submission 39

Page 44: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

For the description of other parameters, see “Submit a TensorFlow Single Node job” on page 35.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for a Caffe job.

Submit an Intel Caffe jobStep 1. Click Use in the Intel Caffe area.

The page for Intel Caffe job submission is displayed.

40 LiCO 5.2.1 User Guide

Page 45: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

Intel Caffe program (required): select an Intel Caffe program file to run

For the description of other parameters, see “Submit a TensorFlow Multinode job” on page 36.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for an Intel Caffe job.

Chapter 4. Job submission 41

Page 46: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a MXNet Single Node jobStep 1. Click Use in the MXNet Single Node area.

The page for submitting a MXNet Single Node job is displayed.

Step 2. Fill in the required information.

MXNet program (.py) (required): select a MAXNet program file to run

For the description of other parameters, see “Submit a TensorFlow Single Node job” on page 35.

42 LiCO 5.2.1 User Guide

Page 47: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for a MXNet Single Node job.

Submit a MXNet MultiNode jobStep 1. Click Use in the MXNet Multinode area.

The page for submitting a MXNet Multinode job is displayed.

Chapter 4. Job submission 43

Page 48: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

MXNet program (.py) (required): select a MAXNet program file to run

For the description of other parameters, see “Submit a TensorFlow Single Node job” on page 35.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for a MXNet Multinode job.

44 LiCO 5.2.1 User Guide

Page 49: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a Neon jobStep 1. Click Use in the Neon area.

The page for submitting a Neon job is displayed.

Chapter 4. Job submission 45

Page 50: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for a Neon job.

46 LiCO 5.2.1 User Guide

Page 51: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit an HPC jobStep 1. Select Submit Job from the left navigation pane.

The Submit Job page is displayed.

Step 2. Select the HPC tab.

Templates for HPC jobs are displayed for your selection. All job submission tasks described in this section are performed on this tab page.

Submit an MPI jobAn MPI job is a distributed computing job using the MPI standard.

Step 1. Click Use in the MPI area. The MPI page is displayed.

Step 2. Fill in the required information. Parameters on this page are described as follows:

• Job directory (required): the directory for the job

• MPI program (required): the MPI program, that is, program that will eventually run the computing task. For the program to carry out parallel computing on multiple servers, it must comply with the MPI standard.

• MPI environment file (optional): MPI environment variables

Chapter 4. Job submission 47

Page 52: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

• MPI parameters (optional): parameters for running mpirun. Additional parameters should be given in plain text, delineated by spaces.

• Queue (required): the name of the queue to which the job belongs. Users can only select queues for which they have access permission.

• Nodes (optional): number of computing nodes required to run the program

• CPU cores per node (optional): the number of CPU cores required by each computing node to run the program.

• Memory (optional): the memory required to run the program

• Estimated run time (optional): the time required to run the program

• Trigger (optional): the point at which the notification is sent. It is either at the execution or the finish time.

• Email: the e-mail to which the notification will be sent.

Step 3. Click Submit.

The figure below shows an example of how to fill out MPI job information.

Submit an ANSYS jobAn ANSYS job is a job using the ANSYS software, where users can run engineering simulations.

Step 1. Click Use in the ANSYS area. The page for ANSYS job submission is displayed.

48 LiCO 5.2.1 User Guide

Page 53: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information. Parameters on this page is described as follows:

• Run mode: Check GUI to run the ANSYS job in GUI mode. Once the job is submitted, a VNC session will be launched and the ANSYS graphical interface will begin to run in the VNC session. It can also be accessed via the VNC management.

• Working directory (required): the job directory for the program

• ANSYS binary (required): the location of the ANSYS software

• ANSYS environment (optional): the environment variables required when running ANSYS

• ANSYS run arguments (optional): parameters for running ANSYS. Additional parameters should be given in plain text, delineated by spaces.

• ANSYS Input (required): the file imported when running the program

• ANSYS Output (required): the file exported when running the program

Note: For the description of other parameters, see “Submit an MPI job” on page 47.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for an ANSYS job.

Chapter 4. Job submission 49

Page 54: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a COMSOL jobA COMSOL job is a job using the COMSOL software, where users can model and simulate physics-based problems.

Step 1. Click Use in the COMSOL area. The page for COMSOL job submission is displayed.

50 LiCO 5.2.1 User Guide

Page 55: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Fill in the required information. Parameters on this page is described as follows:

• Run mode : Check GUI to run the COMSOL job in GUI mode. Once the job has been submitted, a VNC session will be launched and the COMSOL graphical interface will begin to run in the VNC session. It can also be accessed via the VNC management.

• Working directory (required): the job directory for the program

• COMSOL Binary (required): the location of the COMSOL software

• COMSOL environment (optional): the environment variables required when running COMSOL

• COMSOL run arguments (optional): parameters for running COMSOL. Additional parameters should be given in plain text, delineated by spaces.

• COMSOL input (required): the file imported when running the program

• COMSOL output (required): the file exported when running the program

Note: For the description of other parameters, see “Submit an MPI job” on page 47.

Step 3. Click Submit.

The figure below shows an example of how to fill in the information for a COMSOL job.

Chapter 4. Job submission 51

Page 56: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Submit a general jobA general job is a computing task where the user fully controls the running mode, resource usage, and job file.

Step 1. Select Submit Job from the left navigation pane. The Submit Job page is displayed.

Step 2. Select the General tab.

Step 3. Click Use in the General Job area. The General Job page is displayed.

52 LiCO 5.2.1 User Guide

Page 57: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 4. Fill in the job name, and click Browse to select a job file.

Step 5. Click Submit.

The job details are displayed in a dialog.

Submit a common jobA common job is a script job that the user can quickly write and run from the Web interface.

Step 1. Select Submit Job from the left navigation pane. The Submit Job page is displayed.

Step 2. Select the General tab.

Step 3. Click Use in the Common Job area. The Common Job page is displayed.

Chapter 4. Job submission 53

Page 58: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 4. Fill in the job name.

Step 5. Click Browse to select a work directory.

Step 6. Type the script to be executed in the script editor (Linux Shell commands are supported).

Step 7. Select the resources needed to run the script.

Step 8. Click Submit.

The figure below shows an example of how to fill in the information for a common job.

54 LiCO 5.2.1 User Guide

Page 59: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 4. Job submission 55

Page 60: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

56 LiCO 5.2.1 User Guide

Page 61: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 5. Manage the job lifecycle

Note: The status displayed on the page is “Completed” as long as slrum is submitted to job successfully, no matter the result of job is “Success” or “Failure”.

Cancel a jobStep 1. Select Jobs from the left navigation pane.

The Jobs page is displayed.

Step 2. Click Running on the status bar. All running jobs are displayed in a list.

Step 3. Find the job you want to cancel, and select Action ➙ Cancel . A dialog is displayed, asking you to confirm the action.

Step 4. Click Yes.

The job is canceled.

Canceled jobs are available in the Completed list.

Re-run a jobStep 1. Select Jobs from the left navigation pane.

The Jobs page is displayed.

© Copyright Lenovo 2018, 2019 57

Page 62: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Click Completed on the status bar. All completed jobs are displayed in a list.

Step 3. Find the job you want to re-run, and select Action ➙ Rerun. A dialog is displayed, asking you to confirm the action.

Step 4. Click Yes.

The job is re-executed.

Delete a jobStep 1. Select Jobs from the left navigation bar.

The Jobs page is displayed.

58 LiCO 5.2.1 User Guide

Page 63: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 2. Click Completed on the status pane. All completed jobs are displayed in a list.

Step 3. Find the job you want to delete, and select Action ➙ Delete. A dialog is displayed, asking you to confirm the action.

Step 4. Click Yes .

The job is deleted.

GPU job monitoringTo accelerate the execution of AI jobs, GPU can be used to increase speed. The system targets jobs using GPU and provides monitoring functions for GPUs on the compute nodes where the jobs are running.

After the user submits the job or uses the job management function to enter the job details page, GPU usage information and GPU monitoring tabs are displayed if this job uses GPU.

Chapter 5. Manage the job lifecycle 59

Page 64: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

GPU Use: The system lists the number of GPUs ordered by the current job. Click the number to show which compute node the job is using, and the number of GPUs used by this node (The actual number used may be smaller than the number ordered).

GPU Utilization Rate, Memory, and Temperature Monitoring: Click the GPU tab to switch to the real-time GPU monitoring interface. This interface visualizes real-time GPU data for all nodes running this job, and the user can switch to view the GPU usage rate, memory, and temperature. Every frame represents a node, with the name of the node shown in the upper-right corner of the frame. Every column represents a GPU. The blue portion of the column represents specific monitored values. If there is an orange section at the top of the column, the GPU is in use. Using the slider in the upper-right portion of the mobile interface, the user can adjust the colors of the columns to filter and highlight GPUs in the given numerical range. Check the Color Reversal box to the right of the slider to switch the colors that denote values inside and outside the stated range.

VNC managementWith the VNC management feature, user can manage the VNC sessions in a cluster. They can perform VNC management through either of the following methods:

• Select Admin ➙ VNC to open the VNC page, and click the corresponding open button for the VNC session to view a session. Provide the account number and password if the session is locked.

• Log in to a node in a cluster to manage VNC sessions.

– Type vvnnccsseerrvveerr --lliisstt to view the VNC sessions that have been created.

– Type vvnnccsseerrvveerr --kkiillll to delete the VNC sessions that have been created.

Notes:

– The result from the command-line operations above will be reflected in the VNC management page, but there will be a delay of about 30 seconds.

60 LiCO 5.2.1 User Guide

Page 65: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

– If one user has more than 20 VNC sessions on a node, creating additional sessions on this node may result in failure.

Chapter 5. Manage the job lifecycle 61

Page 66: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

62 LiCO 5.2.1 User Guide

Page 67: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 6. Train an AI image classification model

LiCO provides support for users to train an image classification model based on deep learning without writing a program. The current model training process was developed on the Intel Caffe framework. Distributed training is supported, and performance has been optimized for Intel Xeon Phi.

LiCO provides support for managing image datasets, network topologies and models. Model training processes can also be monitored in real-time, tested, and exported.

Import an image datasetAn image dataset is a set of images with classification information. It is the training material for the model.

• Image datasets must be imported before model training begins.

• Compressed image files imported into LiCO must be in ZIP or TAR format.

• Images in a compressed file must be placed in different sub-folders named after their categorizations.

• The compressed image package must have been correctly prepared and uploaded into the cluster file system.

Step 1. Select Model Library ➙ Datasets from the left navigation pane. The Datasets page is displayed.

Step 2. Click Create. The Create dataset dialog is displayed.

© Copyright Lenovo 2018, 2019 63

Page 68: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 3. Fill in the information.

• Among the Training, Validation, and Test options, at least one must be selected.

• The values of Training, Validation, and Test refer to the percentages used for each function. The total percentage value must be between 1 and 100.

• The figure below shows an example of how to fill in the dataset information.

Step 4. Click OK to import the image dataset.

64 LiCO 5.2.1 User Guide

Page 69: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Create a private network topologyStep 1. Select Model Library ➙ Topologies from the left navigation pane.

The Topologies page is displayed.

Step 2. Click Create. The Create topology dialog is displayed.

Step 3. Fill in the network topology information.

• The value of Name cannot be identical to any other existing network topology name.

• Currently only the Caffe framework is supported.

Step 4. Click OK.

The private network topology is created.

Train a modelLiCO provides support for training an AI image classification model without writing code and monitoring the training process.

Chapter 6. Train an AI image classification model 65

Page 70: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

An image dataset and a network topology must be available.

Step 1. Select Model Library ➙ Models from the left navigation pane. The Models page is displayed.

Step 2. Click Create. The Create Model dialog is displayed.

Step 3. Fill in the required information.

• The model name must be unique.

• Only Intel Caffe images are supported.

• You can choose a pre-trained model as a network typology.

Step 4. Click OK.

The system switches to the Model details page.

66 LiCO 5.2.1 User Guide

Page 71: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Adjust parameters during training

Step 1. Click on the Model details page. The Rerun model dialog is displayed for you to adjust parameters.

Step 2. Adjust the parameters as required.

Chapter 6. Train an AI image classification model 67

Page 72: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 3. Click OK.

The training is interrupted and then restarted based on the new parameters.

Test a modelStep 1. Select Model Library ➙ Models from the left navigation pane.

The Models page is displayed.

Step 2. Click the name of a desired model. The model details page is displayed.

Step 3. Click the Test tab. The page allows you to select a snapshot and the test image.

Step 4. Select a test model for the Snapshot field based on the epoch where the model was saved. The default value is Epoch#END, which indicates the name of the last saved model.

Step 5. Click Browse, and then select an image for testing.Only images that are uploaded to the cluster file system in advance are available.

Step 6. Click Test.

The system uses the final model training results to categorize the image and displays the result.

Export a modelStep 1. Select Model Library ➙ Models from the left navigation pane.

The Models page is displayed.

Step 2. Click the name of a desired model. The model details page is displayed.

Step 3. Select the Export tab. The page allows you to select a snapshot.

68 LiCO 5.2.1 User Guide

Page 73: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 4. Select a test model for the Snapshot field based on the epoch where the model was saved. The default value is Epoch#END, which indicates the name of the last saved model.

Step 5. Click Export. The Export pretrain model dialog is displayed.

Step 6. Click Browse, and then select the export path.

Step 7. Click OK.

Import a pre-trained modelStep 1. Select Model Library ➙ Pre-trained Models from the left navigation pane.

The Pretrained Models page is displayed.

Step 2. Click Create. The Create Pre-trained Model dialog is displayed.

Chapter 6. Train an AI image classification model 69

Page 74: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 3. Fill in the required parameter values.

Source file must be in ZIP or TAR format, and must contain the network typology file and the caffemodel file.

Step 4. Click OK.

The new pre-trained model is available on the Pretrained Models page. You can select Action ➙ Browse to view the pre-trained model file.

70 LiCO 5.2.1 User Guide

Page 75: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 7. Custom templates

LiCO allows users to create custom templates. After the user creates a custom template, it can be published by an administrator and then be utilized by other users.

After a template is published, it cannot be edited. In order to edit the template, an administrator needs to unpublish the custom template first.

Create a custom templateStep 1. Select Submit Job from the left navigation pane.

The Submit Job page is displayed.

Step 2. Click My Templates in the upper-right corner of the page. A page is displayed, showing the custom templates of the current user.

Step 3. Click Create. The Create Template page is displayed.

Step 4. Fill in the required information.

a. In the Template Information area, provide the basic template information.The logo image must be in JPG, PNG, JPEG, or BMP format, with a recommended size of 180*40.

b. In the Template Parameters area, click Add Parameters, and then fill in the Add Parameter dialog.

Step 5. Click Submit.

The newly created custom template is displayed if you click My Templates.

© Copyright Lenovo 2018, 2019 71

Page 76: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Edit a custom templateStep 1. Select Submit Job from the left navigation pane.

The Submit Job page is displayed.

Step 2. Click My Templates in the upper-right corner of the page.

Step 3. Find the template you want to edit, and select Action ➙ Edit. The page for editing the template information is displayed.

Step 4. Change the template information as required.

Step 5. Click Submit.

Copy a custom templateStep 1. Select Submit Job from the left navigation pane.

The Submit Job page is displayed.

Step 2. Click My Templates in the upper-right corner of the page.

Step 3. Find the template you want to copy, and select Action ➙ Copy. The page for copying the template is displayed.

Step 4. Change the template information as required.

Step 5. Click Submit.

Delete a custom templateStep 1. Select Submit Job from the left navigation pane.

The Submit Job page is displayed.

Step 2. Click My Templates in the upper-right corner of the page.

Step 3. Find the template you want to delete, and select Action ➙ Delete. The Delete Job Template dialog is displayed.

Step 4. Click OK.

Publish a custom templateAdministrator users can publish custom templates on LiCO.

Step 1. Select Submit Job from the left navigation pane. The Submit Job page is displayed.

Step 2. Click My Templates in the upper-right corner of the page.

72 LiCO 5.2.1 User Guide

Page 77: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Step 3. Find the template you want to publish, and select Action ➙ Publish. The Publish job template page is displayed.

Step 4. Fill in the category.

Step 5. Click Submit.

The selected template is published.

Chapter 7. Custom templates 73

Page 78: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

74 LiCO 5.2.1 User Guide

Page 79: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 8. Expert mode

LiCO provides an expert mode feature that integrates the Web console, file management, and job management functions. This feature allows advanced users to use command lines to submit and manage jobs and to perform operations quickly through the Web interface.

Select Expert mode from the left navigation pane to open the Expert mode page.

The Expert mode page consists of the following tabs:

• Console: This tab lists all login nodes in the current cluster. You can select a node to log in.

• File: This tab shows the file structure for the currently logged-in user and functions like file management.

• Job: This tab shows the jobs in the current cluster and functions like job management.

Submit a job using command linesStep 1. Select Expert mode from the left navigation pane.

The Export mode page is displayed.

Step 2. Do either of the following:

a. Click the File tab, and then upload a compiled job file to My folder.

b. Click the Console tab, and then compile a job using the text editor.

Step 3. Log in to a login node through the console, and enter the directory in “My folder” using the absolute path.

Step 4. Run the command ssbbaattcchh //sshhaarree//uusseerrss__rroooott//hhppccaaddmmiinn//jjoobbffiillee..sslluurrmm.

• You can run the command ssiinnffoo to view the job status. When the job status changes to C, it means the job is completed.

• You can also monitor and manage the job on the Job page.

Example of compiled job filesBelow is an example of a Slurm job file:

© Copyright Lenovo 2018, 2019 75

Page 80: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

#!/bin/bash#!/bin/bash#SBATCH --job-name test#SBATCH --partition compute#SBATCH --nodes=2#SBATCH --tasks-per-node=2#SBATCH --cpus-per-task=1cd /share/users_root/user1python /home/licoshare/lico_dl_run.py

Elements in the example are described as follows:

• #SBATCH --job-name test: the job name

• # SBATCH --partition compute: designates the queue batch for the job

• #SBATCH --nodes=2: specifies the resources required for the job as two computing nodes

• #SBATCH --cpus-per-task=1: specifies the resources required for the job as one CPU core per task

• python /home/licoshare/lico_dl_run.py: tasks to be executed

76 LiCO 5.2.1 User Guide

Page 81: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 9. LiCO AI commands

Introduction to LiCO AI commandsIn LiCO, users can use lico-ai commands to manage submitted jobs and submit AI jobs with job files in YAML format.

The table below lists the lico-ai commands. Note that parameters surrounded by square brackets are optional.

Command Parameter Comment

-h,--help Shows help messages.

-v,--version Shows the lico-ai version.

-s,--submit Yaml file path Submit a job with a job file in YAML format.

-c,--check [job_id] Shows the detailed information about job_id, if job_id is not provided, and shows brief information about latest running jobs.

-k,--kill job_id Stops the job_id job.

-r,--resource [queue] Shows maximum resource of the specified queue if queue name is not provided, and shows the maximum resource of all queues.

-e,--example framework Shows a job file example for the framework. The framework can be single, tensorflow-multinode, mxnet- multinode, or intel-caffe.

Below is an example of submitting a single-node job with a YAML file. The command shows the version information, job ID, and the generated Slurm job file path for this job.

© Copyright Lenovo 2018, 2019 77

Page 82: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Job files in YAML formatAccording the job type, AI jobs can be split into four frameworks: single, tensorflow-multinode, mxnet- multinode, and intel-caffe. This section provides examples for job files of all frameworks.

Example of a single node job fileBelow is an example of the single node job file:

framework: singlejobName: singleworkDir: /home/hpcadmin/ai_cmd/ image: /home/lico/ai/container/caffe-gpu.image programFile: /home/hpcadmin/demo/ai/caffe/cifar10_lenet_gpu.py programArgs: outputFile: /home/hpcadmin/ai_cmd/tests.out resource:

exclusive: TruecpuNum: gpuNum: 1queue: compute

Some parameters are described as follows:

• framework: declares which kind of job is submitted. The value can be single, tensorflow-multinode, mxnet-multinode, and intel-caffe.

• programFile: the program that will eventually run the computing task. This program must can be a .py or . sh file.

• programArgs: the parameters required to run the program. The parameters should be given in plain text, delineated by spaces.

• exclusive When this parameter is set to true, all CPU cores are assigned to this job.

• cpuNum: number of CPU cores assigned to the job. This parameter works when exclusive is false.

• gpuNum: number of GPUs assigned to the job. Unlike cpuNum, this parameter is not related to exclusive.

• queue: name of the queue to which the job belongs. Users can only select queues for which they have access permission.

Example of a TensorFlow-multinode job fileBelow is an example of the TensorFlow-multinode job file:

framework: tensorflow-multinodejobName: tensorflow-multinodeworkDir: /home/hpcadmin/ai_cmd/image: /home/lico/ai/container/tensorflow-1.6-gpu-cuda90.image programFile: /home/hpcadmin/demo/ai/tensorflow/cifar10_lenet_multi_machine.py programArgs: outputFile: /home/hpcadmin/ai_cmd/testt.outpsNumber: 2workerNumber: 2 resource:

exclusive: FalsenodeNum: 2cpuNumPerNode: 2 gpuNumPerNode: 1queue: compute

78 LiCO 5.2.1 User Guide

Page 83: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Some parameters are described as follows:

psNumber : ps number of this job, ps is used to sync model parameter

workerNumber : worker number of this job. Worker is used to actually perform training

nodeNum : number of computing nodes required to run the job

cpuNumPerNode : number of CPU cores assigned to the job on each node. This parameter works when exclusive is false.

gpuNumPerNode: number of GPUs assigned to the job on each node. Unlike cpuNumPerNode, this parameter is not related to exclusive .

Example of a Mxnet-multinode job fileSee “Example of a TensorFlow-multinode job file” on page 78. The job file for mxnet-multinode is similar to that for tensorflow-multinode, except that the framework is mxnet-multinode.

Example of an Intel-caffe job fileBelow is an example of the Intel-caffe job file:

framework: intel-caffejobName: intel-caffeworkDir: /home/hpcadmin/ai_cmd/image: /home/lico/ai/container/intel-caffe-1.0.4-cpu.image programFile: /home/hpcadmin/demo/ai/intelcaffe/cifar10_lenet_cpu.py programArgs: outputFile: /home/hpcadmin/ai_cmd/testi.outresource:

exclusive: TruenodeNum: 2cpuNumPerNode: queue: compute

Some parameters are described as follows:

nodeNum: number of computing nodes required to run the job

cpuNumPerNode: number of CPU cores assigned to the job in each node. This parameter works when exclusive is false.

Chapter 9. LiCO AI commands 79

Page 84: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

80 LiCO 5.2.1 User Guide

Page 85: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

Chapter 10. Additional information

Absolute paths of user directoriesIn LiCO, users have full control over the "MyFolder” directory, which can be viewed on the file management page. "MyFolder" is a mapped directory, and the real directory in the operating system is the folder with the user’s name in the user root directory corresponding to the parameter user_rootdir contained in the configuration file lico_5.x/etc/conf.yaml.

For example, if user_rootdir sets the path as /share/users_root, the absolute path for the root directory of user hpcadmin (the My folder directory) is /share/users_root/hpcadmin. This path is also the home directory for the user in the operating system. When using the web console or the login node in the login system, the directory can be accessed using this absolute path or the path for the home directory.

Failed job submissionsIn most circumstances failed job submissions in LiCO result from incorrect scheduler service configuration. You can check and resolve problems using the following methods:

• Use an SSH tool to log in to the login node in the system, and re-submit the job with command lines.

1. Go to the user directory and locate the job file.

2. Run the command ssbbaattcchh jjoobbffiillee..sslluurrmm to submit the job.

3. View the error log.

Note: The most common problem is exceeding resource limits. For example, if the system has 80 CPU cores, a job requiring 100 cores will lead to a submission failure.

• Log in to the management node, and run ssccoonnttrrooll sshhooww nnooddeess to check the status of the compute nodes and resources in a cluster. Notify an administrator in the following circumstances:

– The command returns an empty result, indicating that the node has not been added into the scheduler node.

– The command returns a result indicating that some nodes are not working.

• Log in to the management node, and run ssiinnffoo to check queue settings.

Note: You need to notify an administrator if an exception is found.

Deletion of VNC sessionsIf VNC sessions are invisible on the VNC management page, contact an administrator.

If an attempt to delete a VNC session fails, log in to the node associated with the VNC session via SSH, run vvnnccsseerrvveerr --lliisstt to check the status of the session, and then use the command vvnnccsseerrvveerr--kkiillll to delete the session.

About 30 seconds after the deletion, refresh the VNC management page.

References for Slurm commandsFor details about Slurm commands, refer to the following Web site: https://slurm.schedmd.com/ quickstart.html.

© Copyright Lenovo 2018, 2019 81

Page 86: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

References for Caffe network topology definitionsCaffe network topology definitions are in Google Protocol Buffers Text. For the definitions of each field, refer to the following Web site: http://caffe.berkeleyvision.org/tutorial/.

Data sources for GPU monitoringLiCO can only monitor GPUs produced by NVIDIA. Monitoring data (including GPU usage, memory, temperature, and usage status) is obtained through the official NVIDIA API.

To check GPU monitoring data on the node’s operating system, run the nnvviiddiiaa--ssmmii command.

Transform an NGC imageStep 1. Register an account on the NGC Web site (https://ngc.nvidia.com ).

Step 2. Generate an API KEY as the authentication key to pull the NGC image.

a. Click Get API Key on the Registry page.

b. Click Generate API Key on the displayed API Key page to get an API key.

Step 3. Transform the NGC image with Singularity V2.5.

a. Run the following command to check the Singularity version: singularity --version

Note: Ensure that the Singularity version is later than or equal to 2.5.

b. Run the following commands to transform the NGC image to an Singularity image:

# Set the Singularity environment variable

export SINGULARITY_DOCKER_USERNAME='$oauthtoken'export SINGULARITY_DOCKER_PASSWORD=<API_KEY>export SINGULARITY_PULLFOLDER=<IMAGE_FOLDER>

# Transform image

82 LiCO 5.2.1 User Guide

Page 87: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

singularity pull --name <IMAGE _FILENAME> <NVIDIA-DOCKER-URL>

Notes:

• Replace <API_KEY> with your specific API KEY.

• Replace <IMAGE_FOLDER> with a specific folder to save the Singularity image.

• Replace <IMAGE_ FILENAME> with a specific name for the Singularity image. For example: ngc-caffe.image.

• Replace <NVIDIA-DOCKER-URL> with a specific URL of the NVIDIA docker. You can get the NVIDIA docker URL from https://ngc.nvidia.com/registry (shown below). Please select the latest version of the NGC docker image.

If the commands above are executed successfully, you can see a Singularity image <IMAGE_ FILENAME> under <IMAGE_FOLDER>.

Step 4. Upload the image referring to “Upload a container image” on page 9.

Notices and trademarks

Notices

Lenovo may not offer the products, services, or features discussed in this document in all countries. Consult your local Lenovo representative for information on the products and services currently available in your area. Any reference to a Lenovo product, program, or service is not intended to state or imply that only that Lenovo product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any Lenovo intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any other product, program, or service.

Lenovo may have patents or pending patent programs covering subject matter described in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to:

Lenovo (United States), Inc. 1009 Think Place - Building OneMorrisville, NC 27560U.S.A.Attention: Lenovo Director of Licensing

Chapter 10. Additional information 83

Page 88: LiCO 5.2.1 User Guide€¦ · Contents Chapter 1. Overview . . . . . . . . . . . 1 Introduction to LiCO . . . . . . . . . . . . . . 1 Features of LiCO

LENOVO PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some jurisdictions do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.

Changes are made periodically to the information herein; these changes will be incorporated in new editions of the publication. To provide better service, Lenovo reserves the right to improve and/or modify the products and software programs described in the manuals included with your computer, and the content of the manual, at any time without additional notice.

The software interface and function and hardware configuration described in the manuals included with your computer might not match exactly the actual configuration of the computer that you purchase. For the configuration of the product, refer to the related contract (if any) or product packing list, or consult the distributor for the product sales. Lenovo may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

The products described in this document are not intended for use in implantation or other life support applications where malfunction may result in injury or death to persons. The information contained in this document does not affect or change Lenovo product specifications or warranties. Nothing in this document shall operate as an express or implied license or indemnity under the intellectual property rights of Lenovo or third parties. All information contained in this document was obtained in specific environments and is presented as an illustration. The result obtained in other operating environments may vary.

Lenovo may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

Any references in this publication to non-Lenovo Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this Lenovo product, and use of those Web sites is at your own risk.

Any performance data contained herein was determined in a controlled environment. Therefore, the result obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.

This document is copyrighted by Lenovo and is not covered by any open source license, including any Linux agreement(s) which may accompany software included with this product. Lenovo may update this document at any time without notice.

For the latest information or any questions or comments, contact or visit the Lenovo Web site:

https://support.lenovo.com

Trademarks

LENOVO, LENOVO logo, THINKPAD, THINKPAD logo, TRACKPOINT, ULTRACONNECT, and Yoga are trademarks of Lenovo. Microsoft, Windows, Direct3D, BitLocker, and Cortana are trademarks of the Microsoft group of companies. Ubuntu is a registered trademark of Canonical Ltd. The terms HDMI and HDMI High-Definition Multimedia Interface are trademarks or registered trademarks of HDMI Licensing LLC in the United States and other countries. Wi-Fi, Wi-Fi Alliance, and Miracast are registered trademarks of Wi- Fi Alliance. USB-C is a trademark of USB Implementers Forum. All other trademarks are the property of their respective owners. © 2018 Lenovo.

84 LiCO 5.2.1 User Guide