import sys

usage ="""Usage:

python expcommand.py dataset number_of_cores machine_type

dataset should be either ALeft.fasta, ARight.fasta, BLeft.fasta, BRight.fasta,

machine type should either be m1.xlarge or c1.xlarge
"""

def myround(x, base=10):
    return int(base * round(float(x)/base)) + 10

datasetSizes = {}
datasetSizes["ALeft.fasta"] = 133150.0
datasetSizes["ARight.fasta"] = 208556.0
datasetSizes["BLeft.fasta"] = 166088.0
datasetSizes["BRight.fasta"] = 157920.0

machineTypes = {}
machineTypes["m1.xlarge"] = "4"
machineTypes["c1.xlarge"] = "8"

try:
	dataset = sys.argv[1]
	cores = int(sys.argv[2])-1
	print cores
	blockSize = myround(datasetSizes[dataset] / cores)
	threads = machineTypes[sys.argv[3]]
except:
	print usage
	exit()



dataset2=dataset.replace('.','_')
command = "/var/www/runner/py/runner.py 963271205238 \"blastn -query file:///home/ubuntu/cluster_experiment/%s##\\n##%s -db  /blast_db/nt/nt -outfmt 6 -num_threads %s -out __o__" +dataset2+"_out__" +dataset2+"_out\""

print command % (dataset,str(blockSize),threads)
