kaist-cp/cs431

[Question] Homework 6 Hashset Debugging tips

Closed this issue · 2 comments

I am currently having some trouble debugging the HashSet concurrent tests. When I run the concurrent test cases stress_concurrent, lookup_concurrent, etc. Half the time they pass and half the time they fail. Every mutating operation on the growable array uses a CAS so I am not sure where to look to debug. Any tips would be appreciated.

Also, I noticed that for the sequential test function abstractions insert, lookup, and delete. The key is set as u32, but I noticed in concurrent tests it is u64 (usize). is there any specific reason for this? Can we change the sequential tests to u64?

For debugging, you can refer to general help for debugging concurrent Rust programs.

Also, adding your own testcases or manual inspection of your code one-by-one might help.

Regarding types in test cases, you can change the type if you want. But actual grading on gg will be done in the original version. Note that a correct solution should work for both cases.