what is the procedure or how to plan how many nodes of dispy need for dsolve differential system in amazon cloud in limited time such as 1 hour, 2 hours.etc ?
#For Amazon Linux, the user name is ec2-user. For RHEL5, the user name is either root or ec2-user. #For Ubuntu, the user name is ubuntu. For Fedora, the user name is either fedora or ec2-user. #For SUSE Linux, the user name is either root or ec2-user. #Otherwise, if ec2-user and root don't work, check with your AMI provider. import random, dispy import ast from __future__ import division from sympy import * x, y, z, t = symbols('x y z t') k, m, n = symbols('k m n', integer=True) f, g, h = symbols('f g h', cls=Function) import inspect def compute(n): # executed on nodes import random, time, socket name = socket.gethostname() cur_best = 1 for ii in range(n[0],n[0]): for jj in range(n[1],n[1]): for kk in range(n[2],n[3],100): #assume dsolve with sympy for differential system dispy_provisional_result((name, r)) cur_best = r time.sleep(0.1) # final result return (name, cur_best) def job_callback(job): # executed at the client if job.status == dispy.DispyJob.ProvisionalResult: #if job.result[1] < 0.005: # acceptable result; terminate jobs print('%s computed: %s %s %s %s' % (job.result[0], job.result[1], job.result[2], job.result[3], job.result[4])) # 'jobs' and 'cluster' are created in '__main__' below for j in jobs: if j.status in [dispy.DispyJob.Created, dispy.DispyJob.Running, dispy.DispyJob.ProvisionalResult]: cluster.cancel(j) if __name__ == '__main__': #cluster = dispy.JobCluster(compute, callback=job_callback) cluster = dispy.JobCluster(compute, nodes=['ec2-35-162-137-237.us-west-2.compute.amazonaws.com'], ip_addr='127.0.0.1', port=51347, node_port=51348, callback=job_callback, keyfile=r"C:\Users\hello\datacenterusekey.ppk") jobs = [] prevk = 1 count = 0 for ii in range(1,2): for jj in range(1,2000): for kk in range(1,2000,100): if ii < jj and jj < kk: job = cluster.submit([ii,jj,prevk,kk]) prevk = kk if job is None: print('creating job %s failed!' % n) continue job.id = count count = count + 1 jobs.append(job) cluster.wait() cluster.print_status() cluster.close() -- https://mail.python.org/mailman/listinfo/python-list