Skip to content

Apalis is a python library for parallel computing.

License

Notifications You must be signed in to change notification settings

danielalcalde/apalis

Repository files navigation

What is Apalis?

Apalis is a python library for parallel computing with little overhead. To explore the apalis functionality see the Documentation.

Getting started with Apalis

Apalis can be installed from PyPI:

   pip install apalis

Apalis can send an object into a child process and interact with it through a Handler. To send an object into a parallel process just:

   import apalis
   import time

   class A:
    def expensive(self, x):
      time.sleep(1)
      return x
      
   a = A()
   obj = apalis.Handler(a) # Sends the object to a child process.
   token = obj.expensive(5) # Sends the task to the object in the child process.
   token() # Calling the token yields the result of the operation.

The same can be done with multiple Handlers at once.

   objs = [apalis.Handler(A()) for _ in range(16)]
   tokens = [obj.expensive(5) for obj in objs]
   aplais.get(tokens) # Gets the results of the operations.

More examples can be found in this Jupyter Notebook.

About

Apalis is a python library for parallel computing.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published