移植性¶
Python 環境¶
Python が必要な場合は、CPython のバージョン 3.6 から 3.8 がサポートされます。
CMakeは、FindPython3`モジュール(<https://cmake.org/cmake/help/v3.13/module/FindPython3.html>)を使用してPythonを検出します。以前、`PYTHON_EXECUTABLE`を使用してPythonインタプリタの場所を指示していた場合は、代わりにCMake変数`Python3_ROOT_DIR`または`CMAKE_PREFIX_PATH`を使用して、Pythonの「ルート」または「プレフィックス」パス(./bin/python3`を含むディレクトリ)を指定してください。他のインフラが進化するにつれて、`PYTHON_EXECUTABLE`が意図した効果を発揮しなくなる可能性があります。
CMake¶
CMakeの必要なバージョンを3.13に更新しました。
C++ 標準¶
GROMACS は、必要な C++ 標準準拠を C++14 から C++17 に、および 2017 年の標準ライブラリの機能が必要に変更しました。詳細は、インストールガイドを参照してください。
Cygwin¶
GROMACS は、gcc および clang コンパイラの両方を使用して、Cygwin 上でビルドできるようになりました。
Windows¶
GROMACS は、ソースまたはビルドディレクトリのパスにスペースが含まれていても、MSVC を使用して Windows 上で正しくビルドできるようになりました。
MSVC 2019 を使用してビルドする場合、CMake の設定時に、適切な静的リンク構成が正しく検出されます。
RDTSCP の使用とレポート¶
GROMACS は、x86 プラットフォームでは、低レイテンシのタイミングのために、常に RDTSCP マシン命令を使用するようにデフォルトで設定されます。非常に古いマシンでは、GMX_USE_RDTSCP=off を使用して設定する必要がある場合があります。非 x86 プラットフォームには影響しませんが、RDTSCP が無効になっていることを報告しなくなります(これは自明であるため)。
ARMv8+SVEサポート (ARM_SVE)¶
ARM Scalable Vector Extensions (SVE) のサポートが追加されました。GROMACS は、CMake の設定時に SVE のベクトルの長さを固定 (通常は -msve-vector-bits= コンパイラオプションを使用) することで SVE をサポートします。この機能は、リリース時には GNU GCC 10 以降、および LLVM 12 およびそれに基づくコンパイラでサポートされます。デフォルトでは、CMake の設定時にデフォルトのベクトルの長さを検出しますが、GMX_SIMD_ARM_SVE_LENGTH=<bits> オプションを使用して変更できます。サポートされている値は 128、256、512、および 1024 です。非相互作用カーネルは、ARM_SVE に対して最適化されていません。ARM_SVE のサポートは、Research Organization for Science Information and Technology (RIST) によって提供されています。