Pluros™

Simple. Scalable. Fast.

Pluros is a distributed computing engine for advanced HPC applications in machine learning, AI, data science, engineering and the physical sciences. Code in your favorite high-level language and let Pluros parallelize execution using the latest hardware and software.

Try our hosted service on the cloud, or install Pluros on your own hardware. Contact us to find out more.

Taking the pain out of HPC

HPC is challenging. It takes enormous expertise and time to exploit the latest technology in a rapidly evolving hardware ecosystem. Open-source HPC software is hard to build, usually non-portable and often poorly documented. Getting independently developed HPC components to play well together can be a nightmare.

Pluros frees the user from the messy aspects of HPC. Express an algorithm at a high level using a language of your choice. Techniques borrowed from compilers and functional languages are then used to optimally execute your algorithm on a variety of hardware systems. Rather than doing everything from scratch, Pluros leverages existing hand-optimized HPC software to drive execution at the lowest level.

Advanced Computing

Pluros is packed with cutting-edge software to leverage SIMD, multicore, GPU, FPGA, clustered and distributed computing. Write your code with a unified functional API and let Pluros figure out how best to run everything.

Intelligent Scheduling

Caffe or Tensorflow? GPU or MPI? NVIDIA or AMD? A sophisticated scheduler learns the optimal hardware and software target for your specific problem and lets you focus on more interesting questions.

Low Latency Streaming

The data-flow model lets you set up streaming computations naturally. The streaming sub-system is designed for low latency applications like audio and video or sensing and control.

Runs anywhere

Big data is born on small devices. Pluros client programs can run on laptops, mobile and embedded boards, optionally with shared context. Pluros makes edge computing easy.

Language Agnostic

Pluros uses HTTP which gets wrapped as ordinary function calls in most modern languages. A pure visual data-flow interface is on the road map for keyboard-less life styles.

Trivially Extensible

To incorporate additional software into the backend, just define the abstract function name and arguments, the logical inputs and outputs, and indicate the type of hardware required. Then use it seamlessly with the rest of Pluros.

About Pluros

Pluros bridges the chasm between ease-of-use and performance. Wouldn't it be awesome if your Scipy code could transparently use Trilinos or PETSc behind the scenes? Or what if you could pop in a couple of GPUs and just have your workflow sped up magically? Imagine not caring whether a package has bindings in your language. Or for that matter, imagine never having to worry about what hardware or which package precisely is decomposing your matrix or training your neural net!

Pluros lets you write high-level code for an abstract virtual system, with no reference to parallelization, scalability or other performance details. The same code gets optimally mapped to the available hardware, be it in the form of a massive cluster with low-latency interconnects, or a distributed collection of smart phones.

Pluros is a distributed operating system fused with a pure-functional compiler and lazy graph reduction engine, all neatly wrapped into a cloud-oriented HTTP API. Client SDKs are dynamically generated and support native syntax in most modern languages like Python, Javascript, R, Java, Scala, Clojure, Matlab, Perl and even Bash. Official Pluros distributions come with out-of-the-box functionality in machine learning and AI, automated data science, graph analytics, machine vision, graphics, virtual and augmented reality, and many other computationally demanding fields. Pluros provides a simple configuration syntax to describe and seamlessly integrate your own or third-party HPC software.

Pluros encapsulates a collection of HPC software with a unified logical API. Each function call roughly corresponds to an independent process. A single logical function can have many different implementations, some complementary (eg. Intel MKL vs. NVIDIA CuBLAS) and some overlapping (eg. Caffe vs. Tensorflow). Using meta-features of your specific data sets, the scheduler selects the right implementation, ensuring that you always get the best possible performance for your hardware. The scheduler also handles data layout conversions letting you seamlessly mix HPC solutions. Task parallelism is automatically extracted without user input.

Pluros is developed by Royal Caliber LLC. with partial support from DARPA awards D14PC00023, D15PC00010, D15PC00106 and WN11NF16C0020. Royal Caliber offers consulting services for Pluros as well as general HPC . Please get in touch using the form below if you would like to customize Pluros or modernize your computing systems with Pluros.

Try Pluros

The easiest way to try Pluros is to use our managed service. Alternatively you can install Pluros on your own hardware to create your own private Pluros instance. To learn about pricing and free trials, please contact us via email or use the form below and we will reach out to you shortly.

Typical compute requirement (number of physical machines):
Areas of interest (please select so we can find the right person to reach out):
I am interested in (select all that apply):