The assignment can be accomplished via cgi or django.
Budget: $10 – $30 USD
This is the final and worth 200 points
Upload to the pilot Dropbox a text file called README
and a proj04.tgz file that includes all your AWS code and proj04Owens.tgz for
all code on owens.
"The tar zcvf proj04.tgz [files]" command MUST be done on AWS or -40 points!
In the README file, include the standard header
#!technology used (such as cgi or django)
# Name: John Nehrbass
# wNumber: w006jwn
# Project name: proj04
# Assigned: Oct 11
# Due date: Dec 6 before 4:45PM
# Tested on: AWS and owens
# Your AWS IP:portnumber/startingWebPage
# Concise instructions to start your web interface
# Include the complete path if needed
Make sure your instance is running so I can test it.
At 4:45 in your AWS account, click on the "Start Lab"
button to reset your clock to 4 hours again as shown in class.
After you get a grade you can turn off your server.
Include instructions that tells exactly what needs to be
typed to start your code. If your server is not running
I have the ability to start it.
An example of concise instructions might be:
sudo service apache2 restart
The assignment can be accomplished via cgi or django.
You MUST development code on the AWSEducate account that was provided to you
for this class. You may NOT use another AWS account.
Cheating includes:
1.) Help from any other student or person. No working in teams!!
All code must be done by you and you alone!
2.) Copying code from the web..
I illustrated the cgi technique with examples.
I also illustrated the django method.
I will also accept other advanced methods you are familiar with
to make your interface look better. but coding must be done with
one of the two techniques.
When I enter your page in by browser, I need to see the following:
*** All user inputs must be validated ***
1) dropdown list to select the weight type (00 through 09 ) initial=00
2) input for a random seed integer from 0 to 32000 initial=0
3) input for #OfTrys>0 and an integer initial=1000000
4) input for #OfBatchJobs>0 and an integer initial=1
5) Text box that displays the best distance so far
..... includes looking at the database initial=NA
6) Text box that displays job status
..... (initial=none submitted, all complete, running job N of M)
7) Update button that updates the above (6) items
..... (including refreshing the best distance for a selected weight)
8 start/stop button - always does update above
8.0) start button to start the process on owens, however after pressing start, the button should change to stop.
8.1) If start is pressed and something is incorrect, a message should tell them what is wrong and for them to try again.
8.2) After pressing stop,
..... touch a file called STOP in the running directory.
..... Note that tspMOD.py will still generate outputs (after a while)
..... Check all outputs for the next best solution and if so
..... update the data base.
8.3) If when pressing stop, the slurm job has not started yet;
..... scancel the job.... (no need to check for a better solution)
8.4) After each jobs, neither a better solution found nor database changes
..... Then running another job with the same conditions is pointless.
..... Therefore, increment each seeds cores by 16 for next next job.
..... Continue until a database update.
..... If updated, return to the original seed values for the next job.
9) A reset button will do:
*) If the job status is "all complete" - set all 6 items to the initial values.
*) Otherwise, kill all jobs and then set all 6 items to the initial values.
..... When jobs are killed you do not need to check for a better solution.
Upload to the pilot Dropbox a text file called README
and a proj04.tgz file that includes all your AWS code and proj04Owens.tgz for
all code on owens.
"The tar zcvf proj04.tgz [files]" command MUST be done on AWS or -40 points!
In the README file, include the standard header
#!technology used (such as cgi or django)
# Name: John Nehrbass
# wNumber: w006jwn
# Project name: proj04
# Assigned: Oct 11
# Due date: Dec 6 before 4:45PM
# Tested on: AWS and owens
# Your AWS IP:portnumber/startingWebPage
# Concise instructions to start your web interface
# Include the complete path if needed
Make sure your instance is running so I can test it.
At 4:45 in your AWS account, click on the "Start Lab"
button to reset your clock to 4 hours again as shown in class.
After you get a grade you can turn off your server.
Include instructions that tells exactly what needs to be
typed to start your code. If your server is not running
I have the ability to start it.
An example of concise instructions might be:
sudo service apache2 restart
The assignment can be accomplished via cgi or django.
You MUST development code on the AWSEducate account that was provided to you
for this class. You may NOT use another AWS account.
Cheating includes:
1.) Help from any other student or person. No working in teams!!
All code must be done by you and you alone!
2.) Copying code from the web..
I illustrated the cgi technique with examples.
I also illustrated the django method.
I will also accept other advanced methods you are familiar with
to make your interface look better. but coding must be done with
one of the two techniques.
When I enter your page in by browser, I need to see the following:
*** All user inputs must be validated ***
1) dropdown list to select the weight type (00 through 09 ) initial=00
2) input for a random seed integer from 0 to 32000 initial=0
3) input for #OfTrys>0 and an integer initial=1000000
4) input for #OfBatchJobs>0 and an integer initial=1
5) Text box that displays the best distance so far
..... includes looking at the database initial=NA
6) Text box that displays job status
..... (initial=none submitted, all complete, running job N of M)
7) Update button that updates the above (6) items
..... (including refreshing the best distance for a selected weight)
8 start/stop button - always does update above
8.0) start button to start the process on owens, however after pressing start, the button should change to stop.
8.1) If start is pressed and something is incorrect, a message should tell them what is wrong and for them to try again.
8.2) After pressing stop,
..... touch a file called STOP in the running directory.
..... Note that tspMOD.py will still generate outputs (after a while)
..... Check all outputs for the next best solution and if so
..... update the data base.
8.3) If when pressing stop, the slurm job has not started yet;
..... scancel the job.... (no need to check for a better solution)
8.4) After each jobs, neither a better solution found nor database changes
..... Then running another job with the same conditions is pointless.
..... Therefore, increment each seeds cores by 16 for next next job.
..... Continue until a database update.
..... If updated, return to the original seed values for the next job.
9) A reset button will do:
*) If the job status is "all complete" - set all 6 items to the initial values.
*) Otherwise, kill all jobs and then set all 6 items to the initial values.
..... When jobs are killed you do not need to check for a better solution.