-
Notifications
You must be signed in to change notification settings - Fork 2
Github sanitizer checks
Sanitizers are cool tools to let the programmer know of some of the major runtime errors or exceptions that compilers can't figure out. Errors like use-after-free, uninitialized memory access and many more. In uBLAS's new CI system I have highly integrated sanitizers and these checks are run on both gcc and clang sanitizers. Below is the complete list of sanitizer checks that we run, each is run independently as a new job in the build matrix.
- Thread Sanitizer: Checks for issues that can arise due to concurrent access to shared resources.
- Undefined Behaviour Sanitizer: Checks for the issues that can potentially trigger undefined behaviour.
- Address Sanitizer: Checks for address related issues, like use-after-free.
All Sanitizers are only run on Tensor
and related files while compiling. because the old uBLAS does not passes address sanitizer and it is no longer receiving patches. I have completely skipped the checks for this code.
I thank our mentor Cem for his constant support and help in achieving our goals. We always find him helpful and he was always easy to reach for help or discussion regarding the work. We would also like to thank Google for the Google Summer of Code Programme, without which all these wouldn't be possible. Lastly, we express our gratitude to our parents for helping and providing us with all resources to carrying out our work nicely from our homes.
- Project Proposal
- Milestones and Tasks
- Implementation
- cpp20
- github-actions
- features/tidy
- features/format
- features/cmake
- Documentation
- Pull Requests
- Future Work