Category Archives: Tools of the Trade

Tools of the Trade

NEMA plug types

L21-30P image from Wikipedia

As I mentioned in my “Five years in the lab” post, over time I’ve become the de-facto system administrator for the lab. With no formal system administrator training (though I’ve taken many computer science and computer engineering courses), every once in a while I’ve had to overcome a major hurdle of a knowledge gap.

The most recent hurdle, encountered when we moved into our new building and server room, was plug types. There are a ton of plug types, and even my background in Circuits I and Circuits II was not enough to make things readily apparent. I actually find it pretty interesting — enough to write a post about it.

There are four parts to a NEMA plug type (or connector) name:

  1. Locking: If the plug can be twisted to lock it in the socket, a capital “L” is appended to the beginning of the name
  2. NEMA number: This is an arbitrary numbering scheme, and indicates the voltage and phase. For example, “5” means 125 volts with a ground wire and “6” means 208 to 250 volts with a ground wire. “21” is a more exotic example, indicating three-phase power.
  3. Current Rating: The maximum current in amperes that the plug and circuit are rated for. Typical numbers are 15, 20, and 30.
  4. Plug or Receptacle: A “P” for “plug” or “R” for “receptacle” may be tagged on to the end of a designation when the corresponding part is being referred to.

To put these all together for some common examples, we have:

  • 5-15P: The common plugs found on most modern (and grounded) appliances
  • 5-20R: 120V receptacles that can supply up to 20A. Often these have a “T”-shaped slot that will take either the 5-15P (above) or a 5-20P (one prong rotated 90 degrees). Most of the receptacles in the new CSE building have this “T”-shaped socket.
  • L5-30: Locking plug that is the standard for shore power for boats (120V/30A). Note that the “L” does not refer to the black screw-down ring usually present on these cords. That’s an optional add-on. It refers to the locking done by twisting the plug within the socket.
  • TT-30: Cementing the arbitrary nature of the NEMA “number”, the “TT-30” is the standard 120V/30A plug for “all but the largest” recreational vehicles. This is also known as an “RV-30”.

Our new cluster takes 8 L21-20 receptacles and a few L5-15 or L5-20 receptacles (for the battery back-ups). We have a really old battery back-up that we plan to use again, and for that we need an L6-30R installed.

While trying to sort all of this out, I really wished that the NEMA designations were more directly informative about voltage and phase. Would 120-1-30 be so much more difficult to write than 5-30? What about 250-3-20 vs. L21-20? Have you ever encountered an uncommon plug type in a data center or other building?

Full Queue

I’ve been running simulations over the holiday break, trying to get some data for a deadline, and I’ve had the queue on our cluster mostly to myself for two weeks.

As you can see here (if you look soon), there are now plenty of jobs in the queue, submitted by several users. My lovely vacation of nearly-unlimited CPU power is over. Unfortunately, I just discovered today that some old simulations of mine had a few incorrect parameters, and they need to be re-run. This could be done overnight on an empty cluster. Now I shall have to wait a little while.

The cluster includes some open-source, commodity status monitoring software called Ganglia, as well as some proprietary load monitoring software. I’m curious to see how the cluster and queue loads will look over time — how holidays, weekends, and the time of day affect the cluster load. In my experience using other clusters, Friday, Saturday, and morning on Sunday, as well as early morning on weekdays are the best times to run jobs on shared computing resources.

Whew! Jobs running on the cluster. (And travel.)

I’ve been totally absent from most of my life the last week as a result of some problems we had with our code on the cluster. My jobs kept dying, taking down compute nodes in the process, for no apparent reason. After a while I narrowed it down to the time when restart files (from a previous simulation) are read. It turns out that the way the files were read (and that way for a good reason) was really brutal on the network. It involved way too much communication. This was okay for smaller models, but I currently have the largest model we’ve ever run in the lab.

After a conversation with our current programmer and one with our former programmer, and about 6 hours of coding last night, the restart files are now read in a less naughty way, and my jobs are reliably running.

—–

Tomorrow I am leaving for about two and a half weeks in New Orleans and Mandeville! I have an early flight, preceded by an even earlier train ride to the airport. I should be hooked up to the “tubes” and (New Year’s resolution here I come) updating the blog more often with the blow-by-blow as I try to get enough data for a Heart Rhythm conference abstract in time for the deadline, despite all of the sundry delays with the cluster.

*gasps for breath*

—–

Also, Penguin liked my cluster video so much that they put it on their front page.

System Administrator Wanted

I am currently the system administrator for our cluster, but we’re looking for someone to tend it and other machines full time.

The job is posted on the JHU jobs site here. Key information is excerpted below:

General Description: Position will provide systems administration to the Institute for Computational Medicine. The Institute’s mission is to understand the mechanisms and to improve the diagnosis, prediction and treatment of human disease through applications of mathematics and computational science. This individual will be responsible for operating and maintaining high-performance computing equipment in support of the mission of the Institute. Responsibilities include setting up new high-end compute clusters and installing new software releases, and analyzing and resolving problems associated with server hardware and applications software. The individual will be responsible for installing and maintaining commercial and open source software used in the Institute, and modifying the programs/scripts whenever needed. For this purpose, a basic knowledge of shell scripting, file system permissions, security, and UNIX/Linux best-practices is essential.

Qualifications: Bachelors degree; 4 years experience in a support environment or equivalent combination of education and experience. Knowledge of UNIX/Linux systems administration best practices. Extensive knowledge of Linux, specifically Red Hat Enterprise Linux 4 – 5, Fedora 6 – 7; Rocks Cluster software, and components such as Sun Grid Engine, LAM/MPI, and MPICH. Knowledge of Windows 2003 Server and Windows XP operating systems is also required. Excellent verbal and written communication skills are necessary. Candidate must possess the ability to work professionally with faculty, staff, students, collaborators and vendors within and outside of JHU.

If you are interested, please apply directly through the linked JHU jobs site. If you have any questions about what the job currently entails, feel free to comment or otherwise contact me.