Cisco Blogs

Cisco Blog > High Performance Computing Networking

Is your MPI IPv6-ready?

Here’s a poll for readers: is your MPI IPv6-ready?

Many of you may not be using IP-based MPI network transports, but as HPC is becoming more and more commoditized, IP-based MPI implementations may actually start gaining in importance.  Not to ultra-high-performing systems, of course.  But you’d be surprised how many 4-, 8-, and 16-node Ethernet-based clusters are sold these days… particularly as core counts are increasing — a 16-node Westmere cluster is quite powerful!

Owners of such systems are typically running ISV-based MPI applications, or other “canned” parallel software.  Most of them don’t use InfiniBand or other high-speed interconnect — they just use good old Ethernet with TCP as the underlying transport for their MPI.

Read More »

Tags: ,

Exascale: it’s not just the (networking) hardware

Many in the HPC research community are starting to work on “exascale” these days — the ability to do 10^18 floating point operations per second.  Exascale is such a difficult problem that it will require new technologies in many different areas before it can become a reality.  Case in point is this entry at Inside HPC today entitled, “InfiniBand Charts Course to Exascale“.

It cites The Exascale Report and a blog entry by Lloyd Dickman at the IBTA about their course going forward.  It’s a good read — Lloyd’s a smart, thoughtful guy.

That being said, there’s a key piece missing from the discussion: the (networking) software.  More specifically: the current OpenFabrics Verbs API abstractions are (probably) unsuitable for exascale, a fact that Fab Tillier (Microsoft) and I presented at the OpenFabrics workshop in Sonoma last year (1up, 2up).

Read More »

Tags: , , , , ,

Community-contributed Perl and Python bindings for hwloc

I love open source communities.

Two hwloc community members have taken it upon themselves to provide high-quality native language bindings for Perl and Python.  There’s active work going on, and discussions occurring between the hwloc core developers and these language providers in order to provide good abstractions, functionality, and experience.

  • The Perl CPAN module is being developed by Bernd Kallies: you can download it here (I linked to the directory rather than a specific tarball because he keeps putting up new versions).
  • The Python bindings are being developed by Guy Streeter (at Red Hat); his git repository is available here.

Read More »

Tags: ,

Building 3rd party Open MPI plugins

Over the past several years, multiple organizations have approached me asking how to develop their own plugins outside of the official Open MPI tree.  As a community, Open MPI hasn’t really been good about providing a good example of how to do this.

Today, I published three examples of compiling Open MPI plugins outside of the official source tree.  A Mercurial repository is freely clonable from my Bitbucket hosting:

(MOVED: See below)

This repository might get moved somewhere more official (e.g., inside Open MPI’s SVN), but for the moment, it’s an easily-publishable location for sharing with the world.

(UPDATE: the code has been moved to the main Open MPI SVN repository; look under contrib/build-mca-comps-outside-of-tree in the trunk and release branches starting with v1.4)

Read More »

Tags: , ,

Why MPI?

It’s the beginning of a new year, so let’s take a step back and talk about what MPI is and why it is a Good Thing.

I’m periodically asked what exactly MPI is.  Those asking cover many different biases: network administrators, systems programmers, application programmers, web developers, server and network hardware designers, … the list goes on.  Most have typically heard about this “MPI” thing as part of “high performance computing” (HPC), and think that it’s some kind of parallel programming model.

Technically, it’s not.  MPI — or, more specifically, message passing — implies a class of parallel programming models.  But at its heart, MPI is about simplified inter-process communication (IPC).

Read More »

Tags: ,