High Performance Computing

Performance is always an issue for computational software. Therefore, High Performance Computing (HPC) is a core capability of our scientific software engineers. Whether you aim for a multicore architecture, a GPU, a compute cluster or a cloud solution, we make the software as efficient as possible on the available hardware. We do this using a combination of smart programming, the right algorithms and tools like CUDA, OpenCL, OpenMP and MPI.

Experts in high performance computing

When doing large scale computations you will quickly hit the boundaries of computational speed and available memory. We can help you optimize your software for the available hardware. For instance for multicore achitecture or GPU‘s. We get the maximum from the hardware using a combination of clever programming and the use of tools like OpenMP, CUDA, OpenCL and OCCA. For more demanding applications, we can adapt your code for use on the most powerful compute systems like clusters and cloud-solutions. In most cases, this is about parallellisation, for example using MPI.

Let us tell you what we have to offer on High Performance Computing. You may also want to check out our whitepaper about all the different ways to enhance computing speed.

The advantages of High Performance Computing

High Performance Computing (HPC) offers the following advantages.

Get your results faster

Systems for operational applications need to produce results in a limited time frame. But low computing times will also enhance the efficiency of your work as it reduces waiting times.

Higher accuracy

More accurate computations can be done in the same time frame. For example using a finer grid, doing more iterations or (in Monte Carlo simulations) evaluating more samples from a random distribution.

Better models

Optimization of software makes it possible to run better models in the same computing time. Models with less assumptions and simplifications will produce more reliable results.

More alternatives

More variants of a design can be simulated in the same time frame. This will lead to a better design or a better understanding of the error margins.

Three steps to High Performance Computing

1. Use more efficient algorithms

Often, much computing time can be saved by using a smarter algorithm. This requires both mathematical expertise and a thorough understanding of algorithmics.

2. Investigate optimisations

Analyse computing time and make a well-considered plan to increase the performance. Take into account both low level optimisations (better memory use, improved cache-use, vectorisation, use of optimised libraries like the MKL) but also improvements on a higher level (parallellisation or the use of GPUs).

3. Implement optimisations

Improve the code according to plan. This may vary from modifying a few performance-critical lines to an entirely new software architecture. In any case, it is important that the code remains understandable and maintainable.

Our services for High Performance Computing

We offer you a range of services, based on our extensive experience with HPC, scientific software development and mathematical modeling.

The Modelscan

Our modelscan gives you a complete analysis of your code with an advice on the best strategy for improvement, including a development plan and an estimate of costs and benefits.

Software development for High Performance Computing

We implement code improvements for the chosen HPC approachThis may include installation and tuning your software on a specific platform.

High Performance Computing Consultancy

We provide consultancy with respect to the HPC options for your application.

Training

We provide training in the field of scientific software engineering and performance-aware programming.

More information

VORtech offers a fact sheet about HPC. In addition, we regularly publish blog posts about HPC. Feel free to contact us if you have any questions or if you would like to explore whether we could help you with a HPC issue.

Interested?
Feel free to contact us. We'll be happy to come and discuss what we can do for you. Our brochure about High Performance Computing gives you a concise overview of our services in this field.
Contact us