System Requirements for QuantumATK S-2021.06¶
The requirements and details below apply to QuantumATK S-2021.06.
- QuantumATK should run well on any reasonably modern and updated 64-bit x86 computer with Windows or Linux operating systems. Note that the QuantumATK simulation engines and the NanoLab GUI both run fine on a laptop, but simulating or visualizing complex systems with many atoms can consume a large amount of computational or graphical resources.
- The ideal platform for running larger simulations is a cluster or a powerful workstation. Most QuantumATK simulations run best if executed in parallel on fairly recent 64-bit processors. A huge amount of nodes is not always needed; even parallelizing over 3-4 nodes gives a significant performance improvement. QuantumATK also takes full advantage of multicore processors. Note that MPI parallelization and multicore threading is available with both the Windows and Linux versions of QuantumATK.
- NanoLab runs best on a machine with a graphics card with hardware acceleration. A dedicated card from e.g. NVIDIA or AMD is best for proper 3D graphics performance, but also integrated cards like Intel HD work fine, as long as the corresponding vendor drivers are installed. On Linux, software-rendering using Mesa drivers will work, but can lead to poor performance in the builder tools.
If QuantumATK fails to run on your system, it is likely that a similar problem has already been reported and solved. The solution can then be found in the FAQ. If not, post your problem on the Forum, with as many details as possible, including the exact software version (for Linux, also the exact distribution) and any error messages that appear, and we will try to find a solution. More customer support can be found at Synopsys’s SolveNetPlus.
QuantumATK runs on any modern 64-bit Intel/AMD architecture.
The memory required to run a QuantumATK simulation depends very strongly on simulation parameters and the system treated. For large-scale production simulations on a cluster or workstation, we recommend at least 8 to 16 GB memory per MPI-process.
Hard Drive Space¶
The QuantumATK package itself requires a little more than 2 GB of free space. Temporary files are created while simulations are running, and also the final data files can require substantial amounts of disk space.
NanoLab relies on OpenGL and shader technology for fast rendering of 3D graphics, and optimal graphics performance requires a hardware accelerated OpenGL driver, using either a dedicated GPU or a motherboard-integrated card. Software-emulated OpenGL may be also be used to run NanoLab, but 3D performance may be worse in certain cases.
- The minimal required version of the OpenGL shader library is 3.3.
- Use vendor drivers (NVIDIA, AMD, Intel, etc.) for optimum shader support.
- If the graphics driver does not support shader technology, this option will be disabled (see the “Preferences” dialog, on the NanoLab “Graphics” tab) and the graphical performance will be reduced, but NanoLab will still operate.
- Generally, if NanoLab does not run properly in terms of graphics, most likely it is caused by the driver, not by the hardware. Even an old or quite basic 3D graphics card with properly configured OpenGL driver should be able to run NanoLab.
- A dedicated card with a GPU is better than a motherboard-integrated card, but not a strict requirement.
Specifically for Linux
- Vendor-specific drivers supporting hardware-accelerated OpenGL should always be preferred over generic drivers shipped with the OS, such as the MesaGL drivers.
- So far, no Mesa drivers have been tested successfully for shader support (even version 10.1.3 which claims to support OpenGL 3.3).
- The minimal version NanoLab has been tested on is Mesa version 6.4.2 (which provides OpenGL 1.5, which is insufficient for proper shader support).
On Linux, you can test your OpenGL installation by running the utility glxgears. If it fails, NanoLab will probably not run properly on your system and you should review the system configuration. Helpful information can be found from the output of glxinfo, as it will identify the driver used and it’s capabilities.
Software rendering on virtual machines and remote machines
Software rendering is available if running NanoLab on a Linux virtual machine or on a Linux remote machine through an SSH tunnel. For more info, see Running QuantumATK on a Virtual Machine.
Running QuantumATK requires that TCP/IP networking is installed and enabled. By default, the SCL license system used by QuantumATK must be allowed to receive incoming connections on port 27020 (TCP+UDP). On Windows, the user will normally be asked to accept this exception to the Windows firewall rules the first time the application is launched, but if specific firewall software is used, you may need to create the rules manually. The latter may also be the case on Linux, especially if enhanced security features are enabled. QuantumATK and SCL also communicate through a second port, which by default is chosen dynamically for each session. To ease firewall configuration, this additional port may also be manually specified, see Installation guide for details.
Both the Linux and Windows versions of QuantumATK are compiled against the Intel MPI library and support OpenMP.
Running QuantumATK in parallel should preferentially be done using the Intel
mpiexec.hydra binary that is shipped with the software.
Alternatively, we have successfully tested parallel operation under
as well as Cray MPI (aprun), although it requires some special tweaking.
Specific Platform Requirements¶
In general, QuantumATK follows the software foundation and Qualified System Configuration (QSC) to which all Synopsys products adhere. The current QSC specification can be found on the Synopsys web page. The S-2021.06 release of QuantumATK follows the QSC-S foundation.
QuantumATK has been successfully tested on 64-bit editions of Microsoft Windows 10.
Windows 7 is no longer supported.
It is not possible to run a terminal-based QuantumATK session via a remote network connection.
The QSC-S specifications linked above guarantee the support of the following OS:
- CentOS 7.3.1611+; 8+
- Red Hat Enterprise Linux: 7.3+; 8+
- Suse Linux Enterprise Server 12.4+; 15+
Note that in the up-coming QSC-T specifications the support for CentOS 8 is likely to be dropped.
Additionally, QuantumATK typically runs on all modern Linux distributions without problems, provided all the latest updates are installed, and has been successfully tested on the following popular Linux distributions:
- CentOS 7.9, 8.2
- Ubuntu 16.04 LTS, 18.04 LTS, 20.04 LTS
- Debian 9.13, 10.9.0
- openSuse 13.2, 15.2
- Fedora 34
- Long term support (LTS) versions are always recommended.
- Red Hat 5 and derived distributions are not supported.
The QuantumATK package is fully self-contained, and in general you should not need to install any additional libraries. However, some required libraries may not be present by default on all Linux installations. These may typically be installed using the system package manager.
Distribution specific installation steps¶
On a completely unpatched, default desktop installation of CentOS 7.3.1611, the following command installs needed system libraries for quantumatk:
sudo yum install libxkbcommon libxkbcommon-x11 freetype
On modern Ubuntu systems,
libsensors.so.4 is not easily available, but creating a symlink from
<QuantumATK installation directory>/lib/libsensors.so.4 will work.
Make sure your Linux system has glibc 2.17 or later available.
Full list of required system libraries¶
QuantumATK links dynamically to a number of system libraries, which are not included in the package, but are normally included out-of-the-box in the supported Linux distributions. In case of a missing dynamic library, the program displays a descriptive error message on startup.
In the following we give lists of system libraries system needed for different execution modes of QuantumATK. The first one is a minimal set of libraries needed to start atkpyhon interactively in the command prompt, i.e. forgoing the GUI. The second lists additional libraries loaded when running quantumatk using the GUI and builder. The last list is for libraries not necessarily used in every environment and serves as an additional point of help in case of issues.
If you intend to set up a minimal OS environment, say for a cluster compute node, use the first list and in case of errors consult the others.
Starting atkpython on CentOS 7.3.1611 interactively, not using the GUI with quantumatk, the following system libraries are loaded:
Additional libraries are loaded when running the graphical interface using quantumatk on CentOS 7.3.1611:
Finally, there are additional optional or system-dependent libraries listed here for completeness’s sake: