Computes DOS: Decentralized Operating System

@ChrisMatthieu
computes
Published in
4 min readMay 16, 2018

Computes is more like a decentralized operating system than a mesh computer,” replied one of our most active developer partners yesterday. He went on to explain that Computes has all of the components of a traditional computer but designed for decentralized computing. The more I think about it — the more profound his analogy is.

We typically describe Computes as a decentralized peer-to-peer mesh supercomputing platform optimized for running AI algorithms near realtime data and IoT data streams. Every machine running the Computes nanocore agent can connect, communicate, and compute together as if they were physical cores within a single software-defined supercomputer.

In light of yesterday’s discussion, I believe that we may be selling ourselves short on Computes’ overall capabilities. While Computes is uniquely well positioned for enterprise edge and high performance computing, most of our beta developers seem to be building next generation decentralized apps (Dapps) on top of our platform.

All computers consist of three main components: compute, network, and storage. Let’s dissect each of these components as they relate to building Dapps.

  1. Compute:
    Lattice, our decentralized queuing and “blockless” distributed ledger technology, is the perfect implementation of a decentralized logic gate. Lattice orchestrates both serial and massively parallel high performance computing operations. Lattice understands the relationships and dependencies between compute operations and organized queues accordingly. It also understands the importance of routing the right compute task to the right machine, in the right location, at the right time. These parameters are based on matching compute tasks + machines’ MIPS, GPS, TTL, OS, etc.
  2. Network:
    Computes nanocores can be deployed as public or private mesh network nodes. Computes nodes only swarm and discover other nodes on the same software-defined mesh network. As the name implies, the Computes mesh network allows nodes to connect, communicate, and compute together in a peer-to-peer fashion as if they were physical cores within a single computer. Internet access is not required. No additional hardware or infrastructure changes are required.
  3. Storage:
    Computes FS leverages IPFS for its underlying file system. IPFS allows Computes to read, write, and share files as a global peer-to-peer “RAIDed” disk drive. File hashes can be referenced directly from within compute operations as well as specified as input, output, and log file hashes for each compute. Even our docker containers can be referenced by file hash so that the entire mesh computer shares resources in a peer-to-peer fashion. This functionality provides high resiliency and huge performance benefits over traditional HPC and cloud computing architectures.

In addition to compute, network, and storage, there were several other Computes DOS (decentralized operating system) features discussed yesterday.

  1. Treads:
    Lattice provides a similar concept to processor threads. Serial compute operations submitted to Lattice define task dependencies. Lattice ensures that tasks designated for serial computations are performed serially in the same queue or “decentralized thread” based on order of operation. Likewise, parallel compute operations can be distributed to an infinite number of threads based on the size of the mesh network. Lattice can also orchestrate complex compute operations that include both serial and parallel computations.
  2. Intel SGX (Software Guard Extensions) chip partitions:
    Intel SGX chipsets allow developers to write code that only runs inside of these secure/private partitions of their chips. While we could run Computes nanocore agent inside of these SGX chip partitions, we implemented a digital signature for tasks being submitted into Lattice and for the results being returned from the nanocores. This insures that only authorized nodes can submit computations and/or process computations.
  3. Database:
    Computes has designed and developed a CRDT database service called “Grow Only Hash Objects”. This service allows developers to read and write data to a distributed Computes database. Lattice uses this CRDT to retain pointers to the latest file hash as queues update.
  4. RAM (random access memory):
    Computes FS is peer-to-peer fast and behaves like RAM in a decentralized app environment. Our CRDT also allows RAM “pointers” to point to the latest hash of the data object on Computes FS. We also have a concept of stacks and heaps. The stack is used for static memory allocation and heap for dynamic memory allocation, both stored in Computes FS/RAM .
  5. Inter-Core Communications:
    Computes leverages its infrastructureless pubsub messaging system (powered by IPFS) for its inter-nanocore communications. This allows for both machines-to-machine communications and broadcasting messages across all machines. Lattice uses its pubsub to keep the state of the queues in sync; however, it can also be used for streaming IoT data and/or events across the mesh network. Lattice could also broadcast a traditional SIGINT (control-c) to stop all of the tasks in queue. This may be useful in a brute-force password cracking application when the password has been cracked by a node on the network.
  6. SNMP:
    Computes admin tools are starting to look very much like Simple Network Management Protocol (SNMP) results. Details include number of nanocores online, computes per second / FLOPS calculations, machine reputation scores, possible bad actors, and equivalent cloud computing costs for the same computing power.

I believe that we have justified our claim to coin the phrase DOS meaning “Decentralized Operating System” as Computes’ new class of decentralized computing platforms.

Learn more about the Computes vision. Learn more about the Computes architecture. Join our beta program and start mesh computing today!

Stay tuned to this blog for more exciting information about our new technology stack and development progress! You can also reach us on Twitter, Facebook, and GitHub.

--

--

@ChrisMatthieu
computes

Builder of companies, robots, supercomputers, & motorcycles. @xrpanet & @twelephone CEO. Formerly @magicleap @computesio @citrix @octoblu @nodester @teleku