示例#1
0
def start_distributed_local():
    instance = DistributedAmuse(redirection="file", redirect_file="distributed_amuse.log")
    instance.initialize_code()
    instance.parameters.debug = True
    instance.use_for_all_workers()
    instance.pilots.add_pilot(new_local_pilot())
    instance.pilots.add_pilot(new_local_pilot(slots=2, label="GPU"))
    instance.pilots.add_pilot(new_local_pilot(slots=24, label="hydro"))
    
    print "Pilots:"
    print instance.pilots
    print "Waiting for pilots"
    instance.wait_for_pilots()
    return instance
def start_distributed_amuse():
    print "Creating distributed amuse"
    distributed_amuse = DistributedAmuse(redirection='none')
    distributed_amuse.parameters.debug = True
    distributed_amuse.parameters.webinterface_port = 4556

    distributed_amuse.use_for_all_workers()

    #open the address of the webinterface in a brower window
    webbrowser.open(distributed_amuse.get_webinterface_url())

    #Add some resources
    #resource = Resource()
    #resource.name='some.machine'
    #resource.location="*****@*****.**"
    #resource.scheduler_type="sge"
    #resource.amuse_dir="/home/user/amuse"
    #distributed_amuse.resources.add_resource(resource)

    print "Resources:"
    print distributed_amuse.resources

    #Claim nodes on the resources. In this example simply the "local" machine
    pilot = Pilot()
    pilot.resource_name = 'local'
    pilot.node_count = 1
    pilot.time = 2 | units.hour
    pilot.slots_per_node = 22
    pilot.label = 'local'
    distributed_amuse.pilots.add_pilot(pilot)

    print "Pilots:"
    print distributed_amuse.pilots

    print "Waiting for pilots"
    distributed_amuse.wait_for_pilots()

    print "setting distributed as default channel"
    distributed_amuse.use_for_all_workers()

    return distributed_amuse
示例#3
0
def start_distributed_amuse():
    print "Creating distributed amuse"
    distributed_amuse = DistributedAmuse(redirection='none')
    distributed_amuse.parameters.debug = True
    distributed_amuse.parameters.webinterface_port = 4556

    distributed_amuse.use_for_all_workers()

    #open the address of the webinterface in a brower window
    webbrowser.open(distributed_amuse.get_webinterface_url())

    #Add some resources
    #resource = Resource()
    #resource.name='some.machine'
    #resource.location="*****@*****.**"
    #resource.scheduler_type="sge"
    #resource.amuse_dir="/home/user/amuse"
    #distributed_amuse.resources.add_resource(resource)

    print "Resources:"
    print distributed_amuse.resources

    #Claim nodes on the resources. In this example simply the "local" machine
    pilot = Pilot()
    pilot.resource_name='local'
    pilot.node_count=1
    pilot.time= 2|units.hour
    pilot.slots_per_node=22
    pilot.label='local'
    distributed_amuse.pilots.add_pilot(pilot)

    print "Pilots:"
    print distributed_amuse.pilots

    print "Waiting for pilots"
    distributed_amuse.wait_for_pilots()

    print "setting distributed as default channel"
    distributed_amuse.use_for_all_workers()
    
    return distributed_amuse
示例#4
0
def start_distributed(lgm_node_names):
    lgm_nodes = [
        new_lgm_node(lgm_node_name) for lgm_node_name in lgm_node_names
    ]
    #   instance = DistributedAmuse()
    instance = DistributedAmuse(redirection="file",
                                redirect_file="distributed_amuse.log")
    #   instance = DistributedAmuse(redirection="none")
    instance.initialize_code()
    instance.use_for_all_workers(True)
    instance.resources.add_resource(new_lgm_gateway())
    for lgm_node in lgm_nodes:
        instance.resources.add_resource(lgm_node)

    instance.pilots.add_pilot(new_local_pilot())
    for lgm_node in lgm_nodes:
        instance.pilots.add_pilot(new_cpu_node_pilot(lgm_node))

    print " ** distributed amuse ** "
    print " ** pilots:"
    print instance.pilots
    print "\t waiting for pilots"
    instance.wait_for_pilots()
    return instance
示例#5
0
# resource.scheduler_type="sge"
# resource.amuse_dir="/home/user/amuse"
# instance.resources.add_resource(resource)
print("Resources:")
print(instance.resources)

# Claim nodes on the resources. In this example simply the "local" machine
pilot = Pilot()
pilot.resource_name = 'local'
pilot.node_count = 1
pilot.time = 2 | units.hour
pilot.slots_per_node = 32
pilot.label = 'local'
instance.pilots.add_pilot(pilot)
print("Pilots:")
print(instance.pilots)

print("Waiting for pilots")
instance.wait_for_pilots()

print("setting distributed as default channel")
instance.use_for_all_workers()

print("Running tests")

nose.run()

print("all tests done, stopping distributed code")

instance.stop()
示例#6
0
# Claim nodes on the resources. In this example simply the "local" machine
pilot = Pilot()
pilot.resource_name = "local"
pilot.node_count = 1
pilot.time = 2 | units.hour
pilot.slots_per_node = 22
pilot.label = "local"
instance.pilots.add_pilot(pilot)

print "Pilots:"
print instance.pilots

print "Waiting for pilots"
instance.wait_for_pilots()

print "setting distributed as default channel"
instance.use_for_all_workers()

print "Running script"

script = sys.argv[1]

sys.argv = sys.argv[1:]

execfile(script)

print "script done, stopping distributed code"

instance.stop()