错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Autovectorization of Code for Numerical Simulation of Plasma Physics Problems

  • Igor Chernykh,
  • Igor Kulikov,
  • Vitaly Vshivkov,
  • Tatyana Liseykina

摘要

The architecture of modern server processors is very complex. They usually have many cores with two or more threads each. Each core has many vector units. Some of them work with scalar double-precision floating-point values. Some can add and multiply eight double-precision floating-point values at one CPU clock. Theoretical peak values for most processors are calculated with these instructions. If the software does not use these features, we can lose performance more than ten times in comparison with the vectorized code version. In this paper, we will show the performance comparison of our PIC code between AVX and AVX512 versions. We used a node with two Intel Xeon 8268 processors, and \(2\times 10^9\) total particle number on 48 MPI processes for our tests. We achieved a 33% performance boost for the AVX512 code version in comparison with the AVX2 code.