Releases: MATF-Software-Verification/2024_Research_MassifCheck
v1.0.0-rc1 – Feature Complete Candidate
🚀 Release v1.0.0-rc1 – Feature-Complete Candidate
This is the first release candidate of 2024_Research_MassifCheck, a fully functional Qt desktop application for profiling and analyzing heap memory usage using Valgrind Massif.
All core features are implemented, and this version is submitted for academic review.
✨ New Features
-
Configurable Thresholds via GUI:
Thresholds for memory analysis are now fully customizable through the Settings window, replacing previously hardcoded values. -
Extended Heap Analysis Heuristics:
Added multiple new analysis rules:- Total memory allocated per function
- Number of allocation calls per function
- Detection of memory fragmentation (based on
useful_heapvs totalheap) - Identification of many small allocations
- Detection if a function allocated a large amount of memory
- Based on the final snapshots, the program estimates whether memory has been properly freed by the end of execution
- Recommendations based on these metrics
-
Detailed Allocation Summaries:
ExtractedAllocationEntrystructures summarize per-function allocation stats: how much, how often, and what kind of allocations were made. -
Compile & Run Flow:
When selecting a.cor.cppfile, the app compiles it and automatically runs it with Valgrind Massif using the current or default options.
🎨 UI & UX Improvements
-
Persistent Settings & Thresholds:
User-selected options and thresholds are now remembered across sessions. The Settings dialog reflects the current configuration when reopened. -
Improved Result Dialog Feedback:
Messages returned after Massif analysis are now grouped into:- Errors
- Informational insights
- Optimization recommendations
🧰 Project Updates
- Updated
README.md - Added Usage Guide on the project Wiki
- Cleaned up error messaging and internal logic
⚠️ Known Limitations
- Tested on Windows 10/11 with WSL2 + Ubuntu 22.04
- Valgrind is only available via Linux/WSL, not natively on Windows
📬 Notes
This version is intended for faculty review as a feature-complete submission.
If issues or suggestions arise during evaluation, they will be tracked in the GitHub Issues section.
🏷 Tag: v1.0.0-rc1
Early Preview
🚀 Release 0.1.0 – Early Preview
This is the early preview release of 2024_Research_MassifCheck, a Qt desktop application for profiling and analyzing heap memory usage with Valgrind Massif.
✨ Features
- Select C or C++ source files (
.c,.cpp) to automatically compile. - Select already compiled binaries for profiling.
- Customize Massif command options.
- Parse and display Massif output summaries.
- Includes an optional helper script to automate profiling of multiple test files (
run_massif_on_tests.sh).
🛠 Requirements
- Qt Creator 6.0+ (MSVC or MinGW kit recommended)
- WSL (Windows Subsystem for Linux)
- Ubuntu installed in WSL
- GCC/G++ compilers in WSL
- Valgrind installed in WSL
⚠️ Known Limitations
- Heap memory usage visualization panel is in development.
- Only tested on Windows 10/11 with WSL Ubuntu 22.04.
- Valgrind requires Linux/WSL and cannot be run natively on Windows.
📚 Documentation & Setup
See the README for installation instructions and usage examples.
💡 Notes
This version is intended for testing, feedback, and further development. Issue reports are welcome.