This repo is for my Intel oneAPI experiments. Courtesy Intel, I have DevCloud account where I am running most of my experiments. The Intel DevCloud is a development sandbox to learn about DPC++ and program oneAPI cross-architecture applications.
- Intel oneAPI Base Toolkit
- Intel oneAPI HPC Toolkit
- Intel oneAPI AI Analytics Toolkit
- Intel oneAPI Rendering Toolkit
- Intel OpenCL for FPGA development
- RTL Acceleration Functional Unit
-
CPU
- Intel® Xeon® Scalable 6128 processors
- Intel® Xeon® Scalable 8256 processors
- Intel® Xeon® E-2176 P630 processors (with Intel® Graphics Technology)
-
GPU
- Intel® Xeon® E-2176 P630 processors (with Intel® Graphics Technology)
- Intel® Iris® Xe MAX
-
FPGA
- Intel® Arria® 10 FPGAs
- Intel® Stratix® 10 FPGAs
If you are running Linux operating system you can access the cluster using the native Secure Shell (SSH) client, you will need to set up SSH tunneling. The easiest method to set up SSH connection to is by downloading and running an automated installer. The installer will add SSH configuration entries to ~/.ssh/config and create a private SSH key file inside ~/.ssh. This method works best if you have only one account.
Download and save the automatic installer script customized for your account. Execute this script in a terminal (you may need to adjust the command according to your download location and the downloaded file name):
ubuntu@ubuntukhan:~/InteloneAPI$
ubuntu@ubuntukhan:~/InteloneAPI$ bash ~/Downloads/setup-devcloud-access-$$$$$.txt
The /home/ubuntu/.ssh directory for SSH client configuration already exists.
Appending SSH connection configuration to /home/ubuntu/.ssh/config
Creating the private SSH key /home/ubuntu/.ssh/devcloud-access-key-$$$$$.txt
Important: this file is your access key, keep it safe like you would a password.
Done! Now you can access Intel DevCloud by running ssh devcloud or, if you are behind a proxy, ssh devcloud.proxy
ubuntu@ubuntukhan:~/InteloneAPI$
ubuntu@ubuntukhan:~/InteloneAPI$ ssh devcloud
###############################################################################
#
# Welcome to the Intel DevCloud for oneAPI Projects!
#
# 1) See https://devcloud.intel.com/oneapi/ for instructions and rules for
# the OneAPI Instance.
#
# 2) See https://github.com/intel/FPGA-Devcloud for instructions and rules for
# the FPGA Instance.
#
# Note: Your invitation email sent to you contains the authentication URL.
#
# If you have any questions regarding the cloud usage, post them at
# https://software.intel.com/en-us/forums/intel-devcloud
#
# Intel DevCloud Team
-
Basic
-
Advance
-
Vector-Add, Matrix Multiply for Intel Advisor, Matrix Multiply for VTune Profiler, Array Transform, TBD Complex Number Multiply, Gamma Correction, Sepia Filter, oneAPI Threading Building Blocks (oneTBB) Tasks, oneTBB Flow Graph with Data Parallel C++ (DPC++), Hello decode, Hello encode, oneAPI Deep Neural Network Library (oneDNN), oneDNN Library Convolutional Neural Network (CNN) Inference (FP32), oneDNN with SYCL* Interops, oneAPI Collective Communications Library (oneCCL) Getting Started, Stable Sort By Key, Triangular Loop Optimization, Double Buffering, Local Cache, N-Way Buffering, Compile DPC on FPGA, Separating Host and Device Code Compilation, Loop Ivdep, Loop Unroll, Max Concurrency, Memory Attributes, Kernel Arguments Aliasing, FPGA Register, FPGA Pipe, FPGA Pipe Array, System-Level Profiling, Cross-language FPGA libraries in DPC++ (provided by Audrey via email), Discrete Cosine Transform
- The DPC++ FPGA Code Samples Guide helps you to navigate the samples and build your knowledge of DPC++ for FPGA.
- The oneAPI DPC++ FPGA Optimization Guide is the reference manual for targeting FPGAs through DPC++.
- The oneAPI Programming Guide is a general resource for target-independent DPC++ programming.
- oneAPI DPC++ Compiler documentation
- oneAPI Specification
- Khronos Group
- oneAPI online training
- The online companion to the book namely "Data Parallel C++ Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL" is oneAPI DPC++ language reference online
- DevCloud Commands
- Use Jupyter Notebook* to learn about how oneAPI can solve the challenges of programming in a heterogeneous world and understand the Data Parallel C++ (DPC++) language and programming model through Introduction to oneAPI and Essentials of Data Parallel C++
- Intel Technical Library Installation Guides