Introducing osciGL: A Framework for High-Performance Data Visualization
The fundamental idea for osciGL emerged during my Master’s thesis. It’s a small but powerful framework designed to quickly visualize large amounts of data from various digital sources. The goal is to combine lean memory management with OpenGL and CUDA to achieve optimal performance.
Since the idea first took shape in my mind, various implementations of osciGL have been developed. There was a version written with Qt, which was unfortunately discontinued because Qt has grown into too large of a framework to handle in the time I have available. I also explored approaches in Java and Rust, each with their own advantages and challenges.
Currently, I’m tackling the project anew. I’ve chosen C/C++ as the programming language to optimize memory management as much as possible. The primary focus of osciGL’s development is to create a framework that is as modular as possible, allowing developers to customize and extend it for their specific needs.
The framework aims to bridge the gap between raw data acquisition and real-time visualization, providing developers with the tools they need to handle massive datasets efficiently. By leveraging GPU acceleration through CUDA and OpenGL, osciGL can process and render data at speeds that traditional CPU-bound approaches simply can’t match.
The current development status can be found in the git repository: https://github.com/roestzwiee/osciGL
Recently, I acquired a HackRF One, which has rekindled my interest in the project. Perhaps it’s time to start over with fresh eyes and new hardware capabilities in mind?
