RapidWright icon indicating copy to clipboard operation
RapidWright copied to clipboard

Test that Node.getAll{Uphill,Dowhill}Nodes() are unique

Open eddieh-xlnx opened this issue 2 years ago • 1 comments

Signed-off-by: Eddie Hung [email protected]

eddieh-xlnx avatar Sep 30 '22 19:09 eddieh-xlnx

Unit Test Results

  44 files    44 suites   14m 12s :stopwatch: 584 tests 576 :heavy_check_mark: 8 :zzz: 0 :x: 599 runs  591 :heavy_check_mark: 8 :zzz: 0 :x:

Results for commit 8f082c01.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar Sep 30 '22 19:09 github-actions[bot]

After some investigation, it was found that (on at least a VU19P) the duplicates that are present occur very rarely (0.02%), Switching from a List based data structure to a Set based data structure also comes with a performance penalty of ~46% slowdown which is not really worth removing the duplicates for a such a small subset. Infrastructure could be augmented to capture the set of nodes that exhibit this behavior and only use a set in those situations, but this will be left to future work.

To provide a meaningful alternative, we'll overload the Node.getAll{Uphill,Downhill}Nodes() APIs with versions that take as input a Collection<Node> object type so the caller can choose the desired behavior based on the data structure's underlying fundamentals.

clavin-xlnx avatar Oct 28 '22 21:10 clavin-xlnx