hash_debug -
Inject behavior analysis to hash-collections (HashMap, HashSet, etc.)
Accesses to hash collections are instrumented, and statistics are automatically displayed at the end of the program.
This module helps to detect, and track bad behavior on hash-collections, especially collisions.
Simple usage:
- compile your program with
-m hash_debug
- execute your program.
Advanced usage:
import this module and use the functions Sys::show_hash_stats
and
Sys::clear_hash_stats
at strategic points.
You can also use some dynamic call-graph tools (like valgrind) and look
at callers of HashCollection::gt_collide
and HashCollection::st_collide
.
Content
- hash_debug: Inject behavior analysis to hash-collections (HashMap, HashSet, etc.) (lib/hash_debug/hash_debug.nit)