Intel® AI Workshop 2021

Workshop details

The KAUST Supercomputing Core Lab and Intel are co-organizing an online event entitled: “Intel® AI Workshop”

The workshop is planned on February 11th, 2021 from10AM to 5PM and delivered online by two Intel experts. The abstract and agenda of the workshop are detailed below.

Important links

- Connect to the event

- Feedback survey (morning session)

- Feedback survey (afternoon session)

Abstract 

The use of data analytics techniques, such as Machine Learning and Deep Learning, has become the key for gaining insight into the incredible amount of data generated by scientific investigations (simulations and observations). Therefore it is crucial for the scientific community to incorporate these new tools in their workflows, in order to make full use of modern and upcoming data sets using Intel (distributed) x86 CPU architectures using optimized tools and frameworks such as Python, Tensorflow, Pytorch, Horovod and SciKitLearn on notebooks, on workstations and even on Intel x86 CPU based HPC Clusters/Data Centers.

Registration

Please fill up this form to register for this online workshop. You will receive a confirmation email with the required details to join the workshops 2 days prior the event.

We are looking forward to meeting you!

Agenda

During the morning sessions Intel will provide an overview on the hardware and software ingredients to gain the most of your AI development workflow.

We will cover the software tools, optimized frameworks and libraries for supervised and unsupervised machine learning. 
With small example codes we show first of all how to implement in particular classic machine learning algorithms using the performance optimized Intel® Distribution for Python*, and secondly we will demonstrate the performance benefit that can be obtained with minimal effort from the developer and data scientist perspective.

10:00AM: Welcome notes by organizers

  • 10:10AM : Intel’s Support for Artificial Intelligence (AI) (1h) 
    • Intel’s Hardware and Software directions for Artificial Intelligence (AI), Machine Learning (ML) and Deep Learning (DL)
    • Hardware-Accelerated Deep Learning instructions and implementations, DL Boost, VNNI instructions
    • oneAPI Tools Framework delivering Intel AI development tools
  • 11:10AM: Bio Break (5 min)
  • 11:15AM: Intel (x86) performance optimisations for Classical Machine Learning (1h 45min)
    • Intel optimized Distribution for Python
    • Python Demos with focus on Classical Machine Learning examples and algorithms
    • Data Analysis and preparation with Modin -- a new library designed to accelerate Pandas by automatically distributing the computation across all of system's available CPUs
    • Intel® Scalable Dataframe Compiler (Intel® SDC), an extension of Numba* that enables compilation of Pandas* operations automatically vectorizing and parallelizing the code by leveraging modern hardware instructions and by utilizing all available cores.
  • 1:00PM: Lunch Break

During the afternoon, Intel will continue teaching various optimization methods to improve the runtime performance of Deep Learning algorithms on Intel® architecture. 

Intel will cover how to accelerate the training phase of deep neural networks with TensorFlow, making use of the highly optimized Intel® Math Kernel Library for Deep Neural Networks (Intel® MKL-DNN). 
In the second afternoon session we also demonstrate solutions and techniques on how to leverage deep neural network training on multiple, distributed x86-based nodes on a multi-purpose HPC cluster which can be a cost-effective alternative to discrete graphic deep-learning accelerators.

  • 2:00PM: Intel Performance optimization for Deep Learning (1h 30min)In this session you will learn various optimization methods to improve the runtime performance of Deep Learning algorithms on Intel® Architecture. We cover how to accelerate the training of deep neural networks with TensorFlow, thanks to the highly optimized Intel® Math Kernel Library for Deep Neural Networks (Intel® MKL-DNN).  
    • Introduction to the Intel ® Distribution of OpenVINO for Deep Learning inferencing

    • Performance optimized Frameworks solutions from Intel-TensorFlow, Caffe, PyTorch, and others with demos
    • Performance acceleration with Intel® MKL-DNN for Deep Neural Network with demos
  • 3:30PM: Bio Break (5 min)

  • 3:35PM: Accelerated Training of Distributed solutions on HPC (Intel MPI) environments using Xeon (x86)  (1h 25min)

    • Distributed TensorFlow with Horovod and Intel MPI with demo
    • Distributed Machine Learning with Daal4py with demo

Prerequisites

Python

Organizers

Saber Feki, and Mohsin Shaikh - KAUST Supercomputing Core Lab

Edmund Preiss and Ahmad Abduljabbar, Intel

Trainers Biography

Shailen Sobhee is a software Technical Consulting Engineer in the field of Artificial Intelligence at Intel. He is the link between the core engineering team and Intel's customers. As an AI consultant, Shailen assists and trains customers on how to use machine learning and deep learning frameworks that capitalize on highly-optimized mathematical libraries for best performance on Intel hardware. He holds a Master's degree in Computational Science and Engineering from the Technical University of Munich.

Laurent Duhem is a software Business Manager assisting strategic customers in their use of Intel developer tools building an influence point to help drive adoption and affinity for Intel platforms with broad industry knowledge encompassing all aspects of High Performance Computing. Prior to his current role he had been a Technical Consulting Engineer and also a Software Applications Engineer. He holds a Master's degree in Computational Science and Engineering from the Technical University of Saint-Etienne.

Contact details

and please contact us at training@hpc.kaust.edu.sa if you need further information.

 

Demo material

List is a selected list of demo notebooks shown during the event sessions

Session 1: Speeding up traditional ML using daal4py, xgboost and modin

> git clone https://github.com/oneapi-src/oneAPI-samples.git

The above repository has notebooks in directory AI-and-Analytics/Getting-Started-Samples

To install the required software stack, you may do the following steps either on Shaheen/Ibex or your workstation:

  • Download and install miniconda: 

> wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86.sh

> bash Miniconda3-latest-Linux-x86.sh

  • After completing setup, install Intelpython3 as conda envrionment

> conda create -n idp intelpython3_core python=3.7

daal4py and scikit-learn will be two of many python packages which will be installed from Intel's conda channel.

> conda acativate idp

> conda install -c intel xgboost

> conda install -c conda-forge modin

> conda install -c intel jupyter

With the above, you should be able to launch the notebooks. For launching Jupyter server on compute nodes of Ibex, please see this page. Note that you will need to activate your newly created conda environment "idp" in your jobscript and launch your jupyter server from there in. Let us know if you need asistance by email ibex@hpc.kaust.edu.sa for Ibex or help@hpc.kaust.edu.sa for Shaheen.