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