Home Software Consulting Software Consulting for Supercomputing

Software Consulting for Supercomputing

E-mail Print PDF

Software developed for desktop computers must be modified to take full advantage of a computing cluster. Several technologies exist to parallelize code, including threads, OpenMP, MPI, and even commercial runtime libraries. Developing parallelized codes for high performance computing requires a background in computer science, but can pay off in large performance gains, getting you more out of existing resources. Our analysts can help you to optimize your codes to run on high performance clusters or on GPU hardware.

A new area of high performance computing uses graphics processing units (GPUs) to accelerate computations. The graphics card on every desktop computer contains a GPU capable of hundreds of GigaFlops (1 GFlop = 10^9 floating point operations per second). By utilizing the GPU, a desktop or laptop computer can outperform the work of over 100 Intel or AMD processor cores (on some types of problems). To take advantage of the GPU also requires some modification of your software.