Write program comparing performance of bu_hash vs C++ map
The goal of this task is to create a simple little test program that compares the performance of BRL-CAD's hash structure (bu_hash) with a C++ STL hash or other unordered map container. Although there are usage examples all throughout the BRL-CAD codebase, you can find bu_list's API header in:
- include/bu/list.h
You should use bu_gettime() as a stopwatch timer: e.g., int64_t start = bu_gettime(); printf("elapsed is %lf\n", bu_gettime() - start);
Compare performance adding random unique values, adding+removing(popping) random unique values, and adding+retrieving(scanning) random unique values. You can use any build system you want (e.g., CMake) or rely on direct compilation, or just provide a compile-line that will work if we assume BRL-CAD is installed.
SUBMIT your program sourcecode with instructions on how to compile and run.