Search Results for: compiler

Using the Intel C++ Compiler’s Optimization Features to Improve MySQL Performance

IT operations and maintenance developers have found that just by compiling the MySQL source code with the Intel C++ Compiler and turning on its Interprocedural Optimization feature, you can improve database performance from 5 to 35% compared with other compilers. “While there may be many factors affecting MySQL performance, such as hardware and software configuration, having a thoroughly optimized MySQL package is a good place to start.”

Intel Compilers 18.0 Tune for AVX-512 ISA Extensions

Intel Compilers 18.0 and Intel Parallel Studio XE 2018 tuning software fully support the AVX-512 instructions. By widening and deepening the vector registers, the new instructions and added enhancements let the compiler squeeze more vector parallelism out of applications than before. Applications compiled with the –xCORE-AVX512 will generate an executable that utilizes these new high-performance instructions.

Let The Compiler Do Its Thing

“In the past, developers would get best results if a loop was unrolled, that is, duplicating the body as many times as needed to that the operations could be operated on using full vectors. The number of iterations would reflect the hardware that the code was targeted towards. Since the application may have to run on different hardware in the future, results for todays generation of hardware may be compromised in the future. In fact, it is better to let modern compilers to the unrolling.”

Helping the Compiler Speed Intel Xeon Phi

The vector parallel capabilities of the Intel Xeon Phi coprocessor are similar in many ways with vectorizing code for the main CPU. The performance improvement when coding smartly and using the tools available can be tremendous. Since the Intel Xeon Phi coprocessor can show very large gains in performance due to its extra wide processing units. “Although it is time consuming to look at each and every loop in a large application, by doing so, and both telling the compiler what to do, and letting the compiler do its work, performance increases can be quite large, leading to shorter run times and/or more complete results.”

Compiler Directives for High Performance Computing

“Directives can be used as hints to the compiler to vectorize a loop. The developer would have better knowledge of any dependencies that a compiler, which must adhere to a number of rules when deciding if a loop can be vectorized. Directives force the compiler to vectorize, based on the knowledge of the developer, thus, if something does not work correctly, it is the responsibility of the developer to fix it, rather than blame the compiler.”

Job of the Week: HPC Compiler & Tools Engineer at LLNL

Lawrence Livermore National Lab is seeking an HPC Compiler & Tools Engineer in our Job of the Week. “As a member of the Development Environment Group in the Livermore Computing (LC) supercomputing center, will work as a software developer specializing in compilers and application development tools for supporting High Performance Computing (HPC). Will work with scientific computing teams, the open source software community, and HPC vendor partners on the development of enabling technologies for the state-of-the-art platforms currently in use and under procurement.”

Video: OpenMP and the Intel Compiler

In this video from the Intel HPC Developer Conference at SC15, Kent Millfield from TACC presents: OpenMP and the Intel Compiler. “The OpenMP standard has recently been extended to cover offload and SIMD. The Intel compiler has provided its own implementations of offload and SIMD for some time before the extensions to the OpenMP standard was approved, and that standard is still evolving. This talk describes what you can do with the Intel compiler that you cannot yet do in OpenMP including some where gaps are getting closed soon, and some which will remain for a while. The talk will also highlight where things are done differently between the language interfaces of the Intel compiler and the OpenMP standard. The talk is relevant both to those who seek to port existing code to the OpenMP standard, and to those who are starting afresh.”

Video: Pathscale Compilers Power ARM for HPC at SC15

In this video, Jason Souloglou and Eric Van Hensbergen from ARM describe how Pathscale EKOPath compilers are enabling a new HPC ecosystem based on low-power processors. “As an enabling technology, EKOPath gives our customers the ability to compile for native ARMv8 CPU or accelerated architectures that return the fastest time to solution.”

PGI and NNSA to Open Source Fortran Compiler

Today the NNSA and its three national labs announced they have reached an agreement with Nvidia’s PGI software to create an open-source Fortran compiler designed for integration with the widely used LLVM compiler infrastructure.

PGI Accelerator Compilers Add OpenACC Support for x86

“Our goal is to enable HPC developers to easily port applications across all major CPU and accelerator platforms with uniformly high performance using a common source code base,” said Douglas Miles, director of PGI Compilers & Tools at NVIDIA. “This capability will be particularly important in the race towards exascale computing in which there will be a variety of system architectures requiring a more flexible application programming approach.”