Article

Threading Fortran Applications for Parallel Performance on Multi-Core Systems

Advice and background information is given on typical issues that may arise when threading an application using the Intel Fortran Compiler and other software tools, whether using OpenMP, automatic parallelization or threaded libraries.
Authored by Martyn Corden (Intel) Last updated on 12/12/2018 - 18:00
File Wrapper

Parallel Universe Magazine - Issue 20, February 2015

Authored by admin Last updated on 12/12/2018 - 18:08
Article

Efficient Parallelization

This article is part of the Intel® Modern Code Developer Community documentation which supports developers in leveraging application performance in code through a systematic step-by-step optimization framework methodology. This article addresses: Thread level parallelization.
Authored by Ronald W Green (Blackbelt) Last updated on 09/30/2019 - 17:28
Article

Intel® Fortran Compiler for Linux* - Are the libraries thread safe?

Are the Intel Fortran run-time libraries thread safe?
Authored by admin Last updated on 07/04/2019 - 10:00
Article

Vectorization Essentials

Vectorization essentials to effectively use feature in the Intel® Xeon product family
Authored by admin Last updated on 10/02/2019 - 15:11
Article

Explicit Vector Programming in Fortran

No longer does Moore’s Law result in higher frequencies and improved scalar application performance; instead, higher transistor counts lead to increased parallelism, both through more cores and thr

Authored by Martyn Corden (Intel) Last updated on 10/03/2019 - 09:40
Article

Determining Root Cause of Segmentation Faults SIGSEGV or SIGBUS errors

SIGSEGV on Linux and SIGBUS on MacOS Root Causes
Authored by admin Last updated on 12/26/2018 - 14:09
Article

Loop Modifications to Enhance Data-Parallel Performance

When confronted with nested loops, the granularity of the computations that are assigned to threads will directly affect performance. Loop transformations such as splitting and merging nested loops can make parallelization easier and more productive.
Authored by admin Last updated on 07/05/2019 - 14:47
Article

Requirements for Vectorizable Loops

Vectorization is one of many optimizations that are enabled by default in the latest Intel compilers. In order to be vectorized, loops must obey certain conditions, listed below. Some additional ways to help the compiler to vectorize loops are described.
Authored by Martyn Corden (Intel) Last updated on 03/27/2019 - 14:36
Article

Granularity and Parallel Performance

One key to attaining good parallel performance is choosing the right granularity for the application. Granularity is the amount of real work in the parallel task. If granularity is too fine, then performance can suffer from communication overhead.
Authored by admin Last updated on 07/05/2019 - 19:52