About

clustermq is a R package allows you to send function calls as jobs on a computing backend with a minimal interface. It uses the zeromq messaging library. The function calls are sent to the backend via the so-called Q function.

clustermq supports three types of compute backends

All the logic needed to interface with the respective compute backend is hidden in templates that are pre-installed with the package. On a given environment such templates can be adjusted at install time by the admin. If needed, the users still can bring their own templates as needed.

For the most part the user only needs to specify the resource requirements (unless he/she wants to go with the defaults) and clustermq will take care of converting the required workload into a job, an ssh connection or simply run locally.

Additionally a large benefit that helps with the speed and efficiency of clustermq is the fact that everything is handled in-memory, i.e. no additional overhead from disk I/O.

Due to clustermq dependency on the zeromq library, zeromq is an operating system requirement.