top of page
Quickstart:
-
Run: pip install burla
-
Run: burla login
-
Try out the example
-
Email us with any issues!
from burla import remote_parallel_map
from time import sleep
my_inputs = list(range(2000))
def my_function(my_input):
sleep(60) # <- Pretend this is some complex code!
print(f"Processed Input #{my_input}")
return my_input
results = remote_parallel_map(my_function, my_inputs)
API Docs:
burla.remote_parallel_map
burla.remote_parallel_map(function_, inputs, verbose=True, image=None, gpu=False)
Runs provided function_ on each item in inputs at the same time, in the cloud, each on a separate CPU, up to 4000 CPU's. If more than 4000 inputs are provided, inputs are processed in 4000 item batches.
When run, expect this function to be in the preparing state for at least 3 minutes.
Parameters:
function_ : Callable
inputs : List
parallelism : Int, default: -1
func_cpu : Int, default: 1
func_ram : Int, default: 1
func_gpu : Int, default: 0
verbose : bool, default: True
image : Optional[str], default: None
Python function. Must have single input argument, eg: function_(inputs[0]) does not raise an exception.
Input & return value data types cannot be any of: frame (not DataFrame those are ok!), generator, traceback.
List containing elements passable to function_.
Element data types can be anything except: frame (not DataFrame those are ok!), generator, traceback.
Number of calls to function_ running in parallel.
Set to -1 for maximum (4000 or len(inputs), whichever is greater).
CPU allocated for every individual call to function_, max 96.
RAM allocated for every individual call to function_, max 624.
GPUs (Nvidia Tesla-T4s) allocated for every individual call to function_, max 4.
Optional, verbosity, if False status indicator is not displayed.
Optional, URI of a publicly accessible docker image. If None, Burla will attempt to copy the local environment by installing the result of pip list .. on all remote machines.
Returns:
List :
Outputs returned by function_ for every input in inputs, ordering of this list will not match the order of inputs.
bottom of page