Argonne Leadership Computing Facility
Argonne National Lab (ANL)
bgclang, a compiler toolchain based on the LLVM/Clang compiler infrastructure, but customized for the IBM Blue Gene/Q (BG/Q) supercomputer, is used by BG/Q developers worldwide. By enhancing LLVM with support for the BG/Q’s QPX vector instruction set, bgclang inherits from LLVM/Clang a high-quality auto-vectorizing optimizer, C++11 OpenMP-enabled frontend and standard library, and many other associated tools. Notably, Address Sanitizer, an instrumentation-based memory debugging tool, is available. This tutorial will cover compilation, optimization, debugging and analysis of applications on the BG/Q using bgclang.