USC CSD Home
 

Electronic Submission Guidelines - CSCI 558L, Spring 2009

 
This page contains information about electronic submission for lab exercises and project assignments. Starting this semester, we will be using a new submission software called bsubmit. It behaves very differently from the old submit program that you are used to. Please read more about bsubmit below.

Check the server time at the submission server.

 
Platform for Programming Assignments
You should use your USC accounts and preferably work on the Solaris machines in the ISD computer rooms for testing. The final (submitted) program must run on nunki.usc.edu because we are going to test it in that environment. But you should not do there the whole program development, as nunki is a general purpose server - under heavyuse from many students.
 
Languages for Programming Assignments
You can use either C or C++ for your programming assignments. Files must be named as follows ...
LanguageTypeAllowed Extensions
C or C++Headers.h
CSource.c
C++Source.C,.cc,.cpp
 
On Time Submission
Late submissions will receive penalties. Due to clock skews, submissions will be accepted a few minutes after the specified deadlines. If your submission is more than 15 minutes late according to the machine time at the server, your submission will be considered late. No exceptions.
 
Submission
When you are ready to submit it for grading, you must:
  1. Create a gzip compressed .tar file containing all requested files. For example, if your lab exercise 1 requires you to turn in a PDF file named ex1.pdf and a data file named ex1.data, you should do the following:
        % tar cvf ex1.tar ex1.pdf ex1.data
        % gzip ex1.tar

    If for some reason you cannot run the commands above and decide to use another method, you must inform the TA and the instructor through e-mail as soon as you submit your assignment.

    For human-readable part of an assignment, the only acceptable formats are ASCII text, PDF, Postscript, and HTML. All other formats will not be accepted. If you are planning to submit PDF, Postscript, or HTML files, please make sure in advance that your machine is capable of generating files in the format you want and that you are familiar with the procedure.

    It is recommended that you extract the .tar.gz file you created to a temporary directory somewhere else. This will provide some assurance that your have submitted what you wanted to submit. Please see the verify your submission section below.

  2. Submit the .tar.gz file you created, use the bsubmit executable in the ~csci551b/bin directory on nunki.usc.edu (or any Solaris machine which you can find ~csci551b/bin/bsubmit). (It's not a typo, it really is in ~csci551b.) The syntax is:
        ~csci551b/bin/bsubmit config -set email=you@yourdomain
        ~csci551b/bin/bsubmit upload -event event_id -file submission_file
    Please note that this bsubmit submission software is new and behaves very differently from the old submit program you are used to.

    The first line above is to configure the submission software for the e-mail address where you will receive notifications from the sever.

    The event_id for each assignment is different:

    Assignment Due event_id
    Exercise #1 11:45PM 2/21/2009 (firm) merlot.usc.edu_80_1217617760_23
    Exercise #2 11:45PM 3/8/2009 (firm) merlot.usc.edu_80_1217617760_24
    Exercise #3 11:45PM 4/6/2009 (firm) merlot.usc.edu_80_1217617760_25
    Project Report 11:45PM 5/9/2009 (firm) merlot.usc.edu_80_1217617760_26

    Therefore, you should submit the programming assignments by doing:

        % ~csci551b/bin/bsubmit upload \
              -event merlot.usc.edu_80_1217617760_23 \
              -file ex1.tar.gz
        % ~csci551b/bin/bsubmit upload \
              -event merlot.usc.edu_80_1217617760_24 \
              -file ex2.tar.gz
        % ~csci551b/bin/bsubmit upload \
              -event merlot.usc.edu_80_1217617760_25 \
              -file ex3.tar.gz
        % ~csci551b/bin/bsubmit upload \
              -event merlot.usc.edu_80_1217617760_26 \
              -file project.tar.gz
    respectively.

  3. Check the output of the bsubmit program carefully. It should tell you:

    • where a copy of your submission is stored,
    • where the upload ticket is stored,
    • where the receipt is stored,
    • and at what time did the server received your submission.

    By default, these files are stored in:

        ~/.bistro/tickets/$evid
    where $evid is the event_id for the corresponding event.
Please also check the output and make sure that you have submitted to the correct event.

The bsubmit program can be used multiple times for a given assignment. A later (on time) submission is considered to supersede previous submissions. If you would like us to grade an earlier submission instead of the last on time submission, you need to send e-mail to the grader, the TA, and the instructor within 12 hours after deadline.

 
Verify Your Submission
After you submitted ex1.tar.gz, you should verify what you've submitted is what you wanted to submit. Let's say your ex1.tar.gz is in your ~/ex1 directory. Do the following on nunki.usc.edu:
    % cd ~/ex1
    % mkdir xyzzy
    % cd xyzzy
    % gunzip -c ../ex1.tar.gz > ex1.tar
    % tar xvf ex1.tar
    % [ inspect your file ]
    % cd ..
    % rm -rf xyzzy
Before you run the mkdir command, make sure you don't have the xyzzy directory. If you do, delete it. A few things to note:
  1. If the gunzip command failed, the ex1.tar.gz file your've submitted is not properly gzipped.
  2. If the tar command failed, the ex1.tar.gz file your've submitted is not properly created.
  3. If any of the above failure occurs, you must recreate your submission and submit again and verify again.
 

[Last updated Sat Sep 19 2020]    [Please see copyright regarding copying.]