Software
Software projects, both big and small
Big Open Source Projects
RaftLib
- RaftLib is a C++ template library version of the full Raft language. It enables easy use of the stream processing compute paradigm for legacy C / C++ code. The programmer can create safe, parallel programs without knowledge of threads or locks by composing compute kernels into a larger application connected by lock free queues. It is completely self contained, the bulk of the code is compiled into a single library, the rest is added with the inclusion of a single header file within an application. (url: https://raftlib.io)
Raft
- Raft is a language that naturally blends sequential programming with streaming parallel constructs. It features a strong type system, inheritance and virtual methods. Raft integrates heterogeneous systems, providing both a native language interface to author new streaming kernels and a library of pre-built heterogeneous compute kernels. Future work will provide scheduling, instrumentation and code optimizations. (url: https://github.com/jonathan-beard/Raft)
Small Open Source Projects & Tools
Template Lock-Free Queue
- A simple C++ type templated lock free FIFO queue. There are some of the instrumenation tools that are built into the RaftLib framework, however not all. (url: https://github.com/jonathan-beard/fifo)
System Clock
- A C++ template for a clock thread, template selects for cycle timer or system timer. Useful for getting a stable time reference across multiple threads. (url: https://github.com/search?q=user%3Ajonathan-beard+SystemClock&type=repositories)
System Info
- Useful, one stop interface for many system traits and hardware specifications for OS X and Linux systems (perhaps many Unix variants as well). (url: https://github.com/search?q=user%3Ajonathan-beard+System+Info&type=repositories)