QD¶
About¶
QD stands for “Quad Double computation package” and it provides numeric types of twice the precision of IEEE double (106 mantissa bits, or approximately 32 decimal digits) and four times the precision of IEEE double (212 mantissa bits, or approximately 64 decimal digits).
Supported versions¶
To check which zlib versions and build types are currently supported on Discoverer, execute on the login node:
module avail qd
The recipe followed to build the source code is available at:
https://gitlab.discoverer.bg/vkolev/recipes/-/tree/main/qd
Note
Currently, there is no LLVM-compatible QD build. That is due to the incomplete Fortran implementation provided in the vanilla LLVM code (no etime
subroutine).
Loading/Compiler affinity¶
Each version of QD installed in the public software repository is built against four compiler sets: (i) Intel oneAPI, (ii) NVIDIA HPC SDK (former PGI Compilers), (iii) AMD Optimized Compiler Collection (AOCC), (iv) GNU Compiler Collection (GCC). The name of the environmental module contains the name of the compiler set employed for compiling the QD source code.
Intel oneAPI¶
module avail qd/*/*intel
NVIDIA HPC SDK¶
module avail qd/*/*nvidia
Warning
QD also comes with the installation of NVIDIA HPC SDK (former PGI Compilers). One may check the parameters of that QD installation by loading first the NVIDIA HPC SDK compiler modules and then use the qd-config
tool.
AOCC¶
module avail qd/*/*aocc
GCC¶
module avail qd/*/*gcc
Getting help¶
See Getting help