Codee Training Series: Apr 26-27, 2022


Appentra‘s Codee Analyzer (formerly known as Parallelware Analyzer) is a programming development tool for C/C++/Fortran parallel codes on multicore CPUs and GPUs using OpenMP and OpenACC. It provides a systematic, more predictable approach that leverages parallel programming best practices, and enables the novice to write codes at the level of experts, including inserting OpenMP/OpenACC directives to offloading to accelerator devices like GPUs.

Codee scans the source code without executing it and produces a performance optimization report with human-readable actions that identify where and how to fix performance issues of the code. It supports the performance optimization roadmap, from sequential optimizations to memory optimizations to vectorization and beyond.

This training does not teach GPU programming or OpenMP/OpenACC programming models, instead, it is focused on how the Codee tool provides automated code inspection capabilities for assisting OpenMP/OpenACC programming on GPUs.

The Codee training series will start in April 2022 with a 2-day event with 4 parts, each part combining presentations, demos and hands-on sessions on Perlmutter GPUs. Part one will present Codee and its capabilities for automated code inspection for performance optimization. Parts two and three will showcase how to use Codee to address GPU programming challenges that appear frequently in real scientific and engineering applications. Finally, part four will provide room for users to bring their own codes to explore Codee tools. The list of topics is shown in the table below.

The Codee training series will continue during 2022. After this course, user appointments will be available to answer questions and help with adopting Codee in user codes. Towards the second half of the year, new courses will explore Codee’s advanced capabilities for integration with third-party developer tools, including but not limited to build systems, vectorizing compilers and CI/CD frameworks.

OLCF users are welcome to this training. NERSC training accounts will be provided if needed.

Date and Time: 12 pm – 3 pm (Eastern Daylight Time), Tue – Wed, April 26-27, 2022

The format of this event will be online only.


Part Topic and Format Date and Time
 #1 Introduction to Codee tools: Shift Left Performance

  • Introduction to Codee and the shift left approach
  • Open catalog of coding rules for performance optimization
  • Automated code inspection with Codee: Discover and Adopt
  • Quick start to Codee: Canny image processing
  • Hands-on: Optimizing PI on Perlmutter


  • Remote lectures (~30’), demos. and hands-on sessions



Tue, Apr 26
12 pm – 3 pm EDT

#2 Usage of Codee for GPU programming (1/2)

  • The GPU programming challenges
  • Memory usage, massive parallelism exploitation, and data transfers minimization
  • Codee’s support to address memory usage and massive parallelism
  • Hands-on: Optimizing MATMUL on Perlmutter


  • Remote lectures (~30’), demos, and hands-on sessions
Usage of Codee for GPU programming (2/2)

  • The GPU programming challenges
  • Codee’s support to address data transfers minimization
  • Hands-on: Optimizing MATMUL on Perlmutter

Format: sessions

  • Remote lectures (~30’), demos, and hands-on exercises




Wed, Apr 27





Wed, Apr 27
12 pm – 3 pm EDT

#4 Putting it all together

  • Hands-on: Optimizing LULESHmk on Perlmutter
  • Hands-on: Work on your own code


  • Remote demos and hands-on sessions


Please use this form to register.

Remote Connection Information


Presentation Materials






Apr 26 2022 - Apr 27 2022


12:00 pm - 3:00 pm




Suzanne Parete-Koon
QR Code

Comments are closed.