This is my submission to the Handmade Essentials Jam. It's an attempt to improve on and replace Task Manager with an emphasis on visibility into the system. It's able to display and track history and information for all running processes and threads as well as general system information. Currently, it only provides information on CPU, memory usage, and some kernel metrics, but it does these well with good and comprehensive data.
Good features and improvements that could be made are:
- Disk
- Network
- GPU
- Process Hierarchy Trees
- Apps (As groups of processes)
- Other system resources (Network ports / connections, files, etc.)
- Linux support (Currently only Windows)
- Bug fixes
- There's a race condition that can cause glitches in some frames.
- There's a use-after-free bug with thread data that can cause bad data to be displayed.
- Better Performance
- Memory usage is much higher than required. Virtually every value tracked is 64 bits because it made working with the plotting library (ImPlot) easier, even for simple percentages.
- CPU and GPU usage is at least an order of magnitude higher than required. Every frame runs the UI loop and draws when the window is open, even though often unnecessary.
- UI Polishing