NEC Vector Engine Tutorial on Dec. 6

14 Nov, 2022

HECC has deployed a testbed environment comprising a NEC SX-Aurora TSUBASA system hosting two nodes of NEC Vector Engines. To support current and future users who would like to evaluate the system for their needs, all NAS users are invited to a training session hosted by NEC on Tuesday, December 6, 2022 from 9:00 a.m. to 11:30 a.m. (Pacific Time).

Please see the abstract and agenda below, and keep an eye out for an email with login details for this online meeting.

Abstract

NEC Vector Engine is a modern realization of a traditional vector architecture in its purest sense. While most modern architectures aim for high peak performance numbers through efficient cache utilization and core parallelization, the memory wall continues to persist—impacting the sustained performance of solvers with large datasets over long periods of simulation time. Vector processing targets high sustained performance by resolving the memory wall with higher memory performance through large memory bandwidths, however, it can be challenging to write good vectorized code that can leverage this memory performance.

This session has been designed to help HPC users understand the provisions and features of the NEC SDK, and how these features can be leveraged to write good vector code with basic knowledge of Fortran, C and C++ and no need for understanding any special programming frameworks.

Agenda

Introduction to NEC Vector Engine (10 minutes)

  • Scalar and Vector Architectures
  • Vectorization
  • Programmatic Representation on Vector Architectures
  • Specs of the NEC Vector Engine
  • Structure of the SDK

Porting an Application to NEC VE-Based Systems (10 minutes)

  • How to Use the SDK
  • Compiler and its Features
  • Available Libraries
  • Performance Analysis and tools

Details of Vectorization (40 minutes)

  • Vectorization features
  • Vectorizable coding paradigms and Vectorization hindrances
  • Behavior of a vectorized program
  • Application tuning techniques
  • Notes on using Vectorization

Demonstration of Examples (15 minutes)

- Break (5 minutes) -

OpenMP and Automatic Thread Parallelization (15 minutes)

  • OpenMP parallelization and its support
  • Automatic parallelization in the NEC SDK
  • Tuning a parallelized program
  • Notes on using parallelization

MPI Parallelization (15 minutes)

  • Overview of MPI features
  • Hybrid MPI – Scalar-Vector hybrid
  • VE Offloading and CUDA support
  • Executing and Profiling an MPI application (hands-on)

Case Study (30 minutes)

  • Basic Background of the Case Study
  • Performance Breakdown

Q & A (10 minutes)

Contact Us

General User Assistance

Security

  • Report security issues 24x7x365
  • Toll-free: 1-877-NASA-SEC (1-877-627-2732)
  • E-mail: soc@nasa.gov

User Documentation

High-End Computing Capability (HECC) Portfolio Office

NASA High-End Computing Program

Tell Us About It

Our goal is furnish all the information you need to efficiently and effectively use the HECC resources needed for your NASA computational projects.

We welcome your input on features and topics that you would like to see included on this website.

Please send us email with your wish list and other feedback.