Assignment A1: Warm Up Exercises

For many of the assignments in this class, you will start by logging into the "scratch cluster", which consists of the following machines:
cclscratch00.cse.nd.edu
cclscratch01.cse.nd.edu
cclscratch02.cse.nd.edu
cclscratch03.cse.nd.edu
Use ssh to connect to these machines. Accounts were created for everyone in the class at the beginning of the semester. If you do not have an account (perhaps you registered late) email the instructor. (Don't wait until the last minute.) If you find one of these machines to be overloaded or unresponsive, you can always log into another one.

For a warm up assignment, you will make some observations about several Condor pools, and then learn how to submit simple jobs. To begin, read these two pages:

  • Introduction to Condor at Notre Dame
  • Using Condor at Notre Dame
  • You may also find it useful to have the complete Condor manual handy, but you don't have to read it from beginning to end:
  • Condor Manual Online
  • Now, perform the following warm up exercises:

    Exercise 0: Create a directory called /tmp/YOURNAME. Make it private by executing chmod 700 /tmp/YOURNAME. Move to that directory, and use it to store any temporary files that you may create in this assignment. If you want to keep any data that you create, copy it to your home directory when done.

    Exercise 1: Answer the following questions about each of the Notre Dame, Purdue, and Wisconsin Condor pools.

    1. How many machines (slots) are present?
    2. Which machine has the largest/smallest amount of memory?
    3. Which machine has the largest/smallest number of CPUs?
    4. Which machine has the largest/smallest disk space?
    5. Use your favorite graphing program to plot a scatter graph with one point for each CPU in the pool, with the CPU speed (Mips) on the X axis and the RAM (TotalMemory) on the Y axis.

    Hint: Use the condor_status command. To show data for Purdue and Wisconsin, use the -pool flamingo.rcac.purdue.edu and -pool condor.cs.wisc.edu options. There is much more information about each machine than is shown by default. Use the -l option to display absolutely everything. To pick out different values, try this command:

    condor_status -format "%s\t" Name -format "%d\t" TotalMemory -format "%d\t" TotalCpus -format "%d\t" Disk -format "%d\n" Mips
    

    Exercise 2: Submit one Condor job that simply runs the following script and returns the output:

    #!/bin/sh
    uname -a
    date
    

    Once you are 100 percent sure that one job works correctly, then write a single condor_submit script that submits one thousand jobs like the one above, each writing output to a separate file. Make sure that your submit script generates a user log file as follows:

    log = userlog.log
    
    Once the batch is complete, the file userlog.log will tell you everything that Condor did on your behalf to execute the jobs.
    1. How many different machines did your jobs run on?
    2. How much time elapsed from submission of the first job to completion of the last job?
    3. How long does it take to run the same script 1000 times on one machine? Is it faster, or slower, and why? Hint: time repeat 1000 script.sh
    This assignment is due in class on Friday, Sep 5th.