DtCraft is a programming environment to streamline cluster computing

DtCraft is a general-purpose programming system to make parallel and distributed computing easier to handle. Our programming model allows you to focus on high-level developments without worrying about difficult system details.

Productivity


Boost your productivity in writing parallel programs.

Performance


Leverage your time to produce promising results.

Scalability


Scale out your applications in large clusters.

API


Modernize your parallel code with our API in C++17.

Stream Graph


Parallelize your applications from sequential building blocks.

Resource


Schedule your jobs through in-conext resource controls.

Container


Improve your runtime reliability and security.

Web UI


Monitor your workload through built-in web interface.

Stream Graph Programming

DtCraft introduces a new powerful programming model based on stream graph that eliminates the traditional dataflow limitation and associated performance bottleneck. Stream graph provides a high-level abstraction over parallel operations and resource controls on a cluster, and enables computation to quickly take place whenever data is available. This allows DtCraft to efficiently solve a wide range of optimization and simulation problems.

Performance and Productivity

Building a DtCraft application is natural to parallel thinking. We use advanced C++17 technology to deliver the best performance and programmability. Deploying a DtCraft application to a computer cluster is as simple as running a binary from a local console. Compared with traditional high-performance programming libraries, our API allows you to quickly build up parallel and distributed applications at scale far more productive.

auto L = [=] (auto& vertex, auto& istream) {
  if(string data; istream(data) != -1) {
    // Your program control flow.
  } else { ... }
};