WHPC is a software bundle representng a self-contained build and run environment for high performance sequential, multithreaded and MPI-aware numerical code on Microsoft Windows.

WHPC primary purpose is to serve as a testbed for writing and debugging numerical code to be run later in a "real" HPC environment. However, it can also be used for light computations on a local notebook/desktop as well as for education purposes.

WHPC consists of

  • C99/C++11/FORTRAN95 toolchains

  • MPI libraries and runtime

  • Numeric libraries

  • UNIX command-line utilites

  • Preconfigured command-line shell

WHPC bundles a set of useful numeric libraries, mainly (non)linear solvers, such as LAPACK, PETSc, MUMPS etc.

The preconfigured Windows command-line shell allows to build numeric codes easily without messing up with the toolchain options, paths etc. For example, the following command-line snippet

%CC% -o runme %PETSC_DMO_CPPFLAGS% runme.c %PETSC_DMO_LDFLAGS% %PETSC_DMO_LDLIBS%

compiles a PETSc-aware C program runme.c and links it against double precision optimized MPI-aware version of the PETSc runtime which is then run locally on two processors

mpiexec -n 2 runme.exe

The latest packages and detailed instructions can be obtained from here.

Happy number crunching and have fun!

Oleg A. Khlybov <fougas@mail.ru>