XSim System Requirements
Operating System
XSim runs on 64-bit Windows, Linux, and Mac and has installation procedures that users will be familiar with on their respective operating system. Some of the systems supported are:
Windows 10, Server 2019
Linux distributions with glibc 2.17 or later (verified on Fedora/RedHat/CentOS, SUSE, Ubuntu)
Mac OS X Monterey (12.7.1+), Ventura, and Sanoma
Cray XC30
Note
The version of glibc can be found with the command: ldd –version
Memory
Usage of RAM varies with the computational problem size, but with a minimum of 16 GB will run most all examples as described in the documentation. Examples like the Smith Purcell examples will use more than 16 GB, so a more liberal estimate would be 32 GB, but of course any heavy computation could require more.
Graphics Rendering
The visualization in XSim uses OpenGL and requires optimal graphics drivers that support OpenGL 3.2. The standard Linux distributions may not come with drivers written by the graphics-card manufacturer, which are necessary for full hardware acceleration. You should download and install the latest driver for your graphics card from your graphics card vendor’s website. In the case of an NVidia graphics card, you can get the latest driver by going to NVidia’s website, selecting the Download Drivers link, and then selecting the Linux Display Drivers link.
Note
There is a known visualization issue on certain Linux laptops, when Desktop Scaling is set to non-integer scaling values. For example 100% & 200% are ok, but fractional values like 175% (scaling of 1.75) can cause display artifacts in the visualize tab.
Note
There is a known Windows-OpenGL issue when using XSim over a Microsoft Remote Desktop connection where the application window appears blank on some Windows machines with some graphics cards or some drivers. We provide a RemoteXSimComposer.bat script to work around this issue. It disconnects the remote session and starts XSim while disconnected, so that when the user reconnects, XSim works properly. If you see this issue, launch this script by right-clicking on RemoteXSimComposer.bat and choose “Run as administrator”.
On Windows systems using high resolution screens that high DPI (dots-per-inch), poor sizing can occur where fonts are small or panels are cut off. This can be remedied by overriding the scaling behavoir performed by the system. The figure belows shows how to override this scaling by setting a properties of the Composer executable.
Graphics Acceleration
GPU acceleration requires a CUDA capable graphics card and a NVidia
video driver that supports CUDA 12.3. If you see the error message
CUDA error 222 (cudaErrorUnsupportedPtxVersion) the provided
PTX was compiled with an unsupported toolchain.
then this indicates
that you should try upgrading the driver for your CUDA card. The drivers
need are NVIDIA Linux Driver 545.23.08 or NVIDIA Windows Driver 546.12.
Each CUDA card model will have a certain amount of memory and one must ensure that the problem size fits into that memory. On Windows, total CUDA memory is managed by the Windows Display Driver Model (WDDM) which functions differently than other operating systems, in that the WDDM subsystem handles GPU compute memory allocation and scheduling, rather than being handled by the CUDA runtime as on other platforms. Thus, the Windows GPU memory virtualization functionality is a property of Windows rather than CUDA and will endup being larger than the card’s physical memory. We suggest, however, you keep the problem size within the card’s physical memory so that optimal performance is maintained.
Disk Space
The XSim-1.0 Windows installer is around 536MB, and requires around 1.5GB of disk space to install. The Linux installer is 992MB due to the inclusion of additional system packages, and unpacks into around 3.3GB. Please ensure you have enough additional space to run your simulations.
Windows Performance
XSim performance on Windows compared to Linux can be significantly limited by power settings. If the power setting was on “balanced,” which is the default even on a desktop or server, Windows will limit CPU utilization when XSim is running, i.e. Windows will not allow XSim to take all the CPU resource. To overcome the limitation, change the power settings under “Control Panel -> System and Security -> Power Options -> Preferred plans” to “High performance.”
Large Scale And Accelerated Computing
The XSim serial engine (vorpalser) is available for running on single processor workstations. The XSim parallel engine (vorpal) is provided for multi-core systems that support the Message Passing Interface (MPI). There is support for running XSim simulations on Linux clusters with common job schedulers as well as running with the “Windows Clustering” server technology.
XSim is licensed per compute platform, which may be a workstation or a cluster. For a workstation, creating a license requires the MAC (hardware) address.
A cluster is defined to be “A dynamic collection of compute nodes sharing a common filesystem and a single common queuing system.” For a cluster, all nodes be able to determine their own hardware (or MAC) address and hostname. For a cluster, we also require that there is a method available from each compute node that can determine the list of compute nodes from the queuing system given to us by the customer. If the customer wants the capability to dynamically change the size of the cluster after licensing, then we require that the compute nodes be able to remote-shell-connect to each other. If a job is running on a collection of nodes, any one of which is licensed, and all of which can see the shared filesystem and are in the nodes list from the queuing system, then we consider the job to be running on the licensed cluster. Otherwise, if one or more job nodes can reach one the licensed nodes and can validate it, and all of the nodes can see the shared filesystem and are in the nodes list from the queuing system, then we also consider the job to be running on the licensed cluster.
XSim is highly scalable, and has been developed to solve the most challenging computational electromagnetics problems of our time. Some example calculations, particularly for plasma acceleration, require a supercomputer to run adequately in 3D, though XSim desktop users may explore how the files work by running them in 2D. Some microwave device examples, such as the Smith Purcell Radiation example, require 12GB RAM or more to run. However, it is possible to set up an input file at lower resolution if you have limited resources.
For large parallel simulations running across nodes in high performance cluster, there are some requirements that can be worked out easily with system administrators and depend on the details of the cluster configurations. In general, we don’t recommend running XSim on AFS file systems.
Note
The Andrew File System (AFS) is not recommended to run XSim in parallel. The distributed AFS system is optimized for location-transparency over a wide area network rather than the low-latency conditions necessary for high performance in cluster storage. File systems such as Lustre or the General Parallel File System (GPFS) perform better when running XSim.
For installation instructions see: XSim Installation Instructions