DEV Community

Cover image for The future of HPC is C++
David Sugar
David Sugar

Posted on

The future of HPC is C++

I had been working some on HiTycho lately. I see strong use cases for HPX clustering in Geospatial work. For example, one could pass off map tiles in a large map for merging satellite imagery to independent tasks running on separate nodes and machines in a HPC cluster. Processing video feeds by splitting frames, VR simulations, and forms of AI processing may all be valid use case for this kind of scaling. Naturally I think about carrier scale telephony, too.

I have also seen the future, the promised land for true scalable processing, both in horizontal distributed computing and vertical clustering in C++. This is why I am interested in combining HPX with Areg. This to me could make existing things like Temporal feel like legacy code.

The main features in this weekends drop of HiTycho for HPC was in-memory buffer streaming and fork injections I borrowed from Busuto. Busuto has also been better aligned with HiTycho. This will make it easier to test and develop locally with Busuto and later migrate applications to HiTycho for true massive parallel scaling. That is my deeper vision for both of these libraries and why I do want to eventually make Areg work with both.

For further reading:

https://github.com/aregtech/areg-sdk
https://github.com/dyfet/busuto.git
https://github.com/dyfet/hitycho.git

@aregtech

Top comments (1)

Collapse
 
dyfet profile image
David Sugar

Perhaps less noticed is Kakusu (github.com/dyfet/kakusu) which I now use as a generic almost stand-alone C++ header-only front-end and common API to various back-end crypto toolkits (wolfssl, libsodium, openssl, minicrypt, etc). To glue that together and handle key data, digests, etc. it uses a byte_array class. It also includes C++ templates for making consistent hash rings which are commonly used to distribute requests for hosts dynamically in distributed computing.

@aregtech