UHSSC Logo

UHSSC 2012 Challenges

System Configuration Challenge

Overview

This is a timed challenge. All teams will start at the same time with a wiped system. Instructions for this challenge are available at http://www.uhssc.org/getting-started.html.

The following software must be installed:
  1. Install CentOS 5.7 on the headnode
  2. Set up a local repository on the headnode.
  3. Install all seven nodes via PXE boot.
  4. Configure NTP all nodes
  5. Configure passwordless SSH
  6. Configure NFS
  7. Configure NIS
  8. Install MPICH2
  9. Install MPI4PY
  10. Run multimode Hello World

Restrictions / Allowances

  1. Must use the hardware provided, no substitutions (for example, CD/DVD ROM)
  2. Can attach anything to the nodes' USB ports.
  3. May use a single laptop linked into the local network.
  4. May modify the installed repository as needed.
  5. May use a command line version of CentOS on the headnode.

Determination of Winner

  1. Finish time will be recorded by judges using a single clock, after the successful completion of the Hello World program. All eight configured nodes MUST report with the Hello World program. The order of reporting is not important.
  2. Installation of system will be verified by the judges.
  3. Irregularities in the installation must be corrected before a finish time can be recorded.
  4. Earliest finish time wins.

This challenge is the second longest, taking about 1-2 hours. All teams must finish their system configuration as it is required for the second Software Optimization Challenge.

Software Optimization Challenge

Overview

The Software Optimization Challenge is done by the teams at their home locations. It will involve a multiprocessor implementation of a Word Frequency Analysis Program provided to the teams. The teams must then determine how to distribute the workload amongst their eight nodes to minimize execution time. The execution times of these implementations will be then evaluated at the UHSSC competition.

An example of a single node Word Frequency Analysis program in provided on the UHSSC website. This program takes about 110 seconds to execute on a single head node processor, and it generates a list of words with the number of times that they occur. The output of this program will act as a standard for judging the "correctness" of the teams' implementations.

Restrictions / Allowances

  1. No hardware in addition to what was initially provided.

Determination of Winner

  1. The reference Word Frequency program must be run first, and the duration to the nearest millisecond recorded*. This is the REFERENCE duration.
  2. The team’s Word Frequency implementation must record the execution duration in a method identical to the reference program. The duration of execution will then be recorded to the nearest millisecond**. This is the TEAM duration.
  3. The output of the teams' programs will be deemed correct if a "diff" command comparing team's output to the reference program's yields "no differences".
  4. The team with the largest ratio of REFERENCE/TEAM durations wins.

The teams will be performing the Word Frequency analysis on a selection of eBooks downloaded from Project Gutenberg. This library can be found here (zip version). The size of the library of eBooks is approximately 140 Mbytes uncompressed.

* The REFERENCE duration is measured by averaging ten trials. If any one of the trials varies from the mean by more than two standard deviations, then that trial will be discarded and re-done.

** The TEAM duration is measured by averaging twenty trials. If any one of the trials varies from the mean by more than two standard deviations, then that trial will be discarded and re-done.

The "Hotseat" Challenge

This part of the competition will involve both software construction and hardware optimization. An unknown problem will be provided on the competition day. The team will need to both work on constructing the cluster (for the System Configuration Challenge) and building the hotseat program. The run time of the software that they have created on their individual cluster will determine the points awarded. The hotseat problem will be determined based on monitoring the students' progress on the other two sections before the competition day. This software will be written in Python.
Preload image Preload image Preload image