1 # This file is a record of remote workers that
2 # @parallelize(method=Method.REMOTE) may send work to. Each must have
3 # the same version of python installed and the cloudpickle package
4 # available, ideally in a virtual environment. See setup instructions
5 # at: https://wannabe.guru.org/pydocs/pyutils/pyutils.parallelize.html.
7 # "username" must be able to ssh into each machine non-interactively
8 # (e.g. with a public/private trusted key, see ssh documentation).
10 # "weight" should be used to indicate the speed of a CPU on the target
11 # machine relative to other cpus in the pool. It doesn't matter what
12 # number you pick but if one pool machine is roughly twice as fast as
13 # another its weight should be twice as high than the other's weight.
15 # Finally "count" should be used to indicate how many parallel jobs
16 # (max) to schedule on that machine. This is usually the CPU count of
19 # The parallelize code looks for this file to be named
20 # .remote_worker_records and live in your $HOME directory but its
21 # name and path can be overridden via the --remote_worker_records_file
22 # commandline argument.
24 # This file is parsed by a JSON parser so spacing doesn't matter
25 # but proper bracing does. A hacky(?) regular expression removes all
26 # comment lines (like this one) before parsing so beware of #'s where
29 "remote_worker_records": [
31 "username": "pyworker",
32 "machine": "machine_one",
37 "username": "pyworker",
38 "machine": "machine_two",
43 "username": "pyworker",
44 "machine": "machine_three",
49 "username": "pyworker",
50 "machine": "machine_four",
55 "username": "pyworker",
56 "machine": "machine_five",