Scaling HPC applications on your hardware is a vital task in supercomputing. If an application can’t use all of the hardware devoted to it, then you have expensive equipment sitting idle and not doing anyone any good. When looking at scalability, it is important to first ensure that the problem can scale. In other words, […]
Scientists and researchers increasingly use high-performance computers, among other tools, to acquire, organize, and process data. As experts in their domains, it’s natural to expect them to be more productive and successful if their primary focus is on the frontiers of their fields of study rather than on deeply understanding their digital and computational tools. […]
There are many build systems available for software development, and if your software is still using the venerable Make system, it can certainly pay to investigate an upgrade. Kitware’s cross-platform CMake system is one such framework, and it offers a considerable improvement. At its base level, CMake offers a single approach to building your software […]
The programming language Fortran has been in existence since 1957, and a large percentage of software that runs on HPC systems worldwide is written, at least in part, in Fortran. Since it has been in existence for so long, and so many scientists and engineers learned it early in their careers and have utilized it […]
As HPC architectures continue to evolve and offer ever-increasing performance, it has become imperative to adapt existing software in order to fully harness that power. As discussed in an earlier post, the architectural approach to parallelism has come full circle in many ways. Nonetheless, MPI remains a fixture in HPC software design, and finding ways […]
For high-performance computing professionals, a deep understanding of how programs execute is vital. Often, that knowledge can spell the difference between making proper use of computing resources and meeting deadlines – or not. Keys to optimizing HPC resources include profiling program elements such as functions or subroutines and identifying and alleviating potential bottlenecks. Profiling refers […]
As a professional with access to a high performance computing environment, you already know it represents a scarce, precious, and expensive resource. You may have to schedule time in advance, and only get to work with the cluster for a limited period of time. You want to make the best possible use of HPC when […]
Keep connected—subscribe to our blog by email.