tsort: use iterative dfs to prevent stack overflows#8737
tsort: use iterative dfs to prevent stack overflows#8737sylvestre merged 1 commit intouutils:mainfrom
Conversation
|
please add a test that trigger the stackoverflow |
CodSpeed Performance ReportMerging #8737 will improve performances by 54.11%Comparing Summary
Benchmarks breakdown
Footnotes
|
0de2521 to
0d6ba6d
Compare
|
GNU testsuite comparison: |
|
GNU testsuite comparison: |
86c8710 to
f5dfb27
Compare
|
GNU testsuite comparison: |
90ac3c2 to
8f0bf8b
Compare
|
GNU testsuite comparison: |
8f0bf8b to
129d362
Compare
|
GNU testsuite comparison: |
34d5994 to
4ae348d
Compare
|
GNU testsuite comparison: |
|
Hope, eventually all unrelated tests pass :) |
It's not necessary a DAG. |
4ae348d to
17f10b8
Compare
|
GNU testsuite comparison: |
17f10b8 to
6baaf65
Compare
|
GNU testsuite comparison: |
|
@sylvestre is there anything left before this can be merged? |
6baaf65 to
1244caf
Compare
|
GNU testsuite comparison: |
|
well done for the perf improvement |
…oval with iterative DFS - Implement iterative DFS to prevent stack overflows (from PR uutils#8737) - Fix minimal cycle reporting to show only actual cycle nodes - Remove redundant back-edge from last cycle node to first - Update test expectations for corrected cycle handling
…oval with iterative DFS - Implement iterative DFS to prevent stack overflows (from PR uutils#8737) - Fix minimal cycle reporting to show only actual cycle nodes - Remove redundant back-edge from last cycle node to first - Update test expectations for corrected cycle handling
…oval with iterative DFS (uutils#8786) - Implement iterative DFS to prevent stack overflows (from PR uutils#8737) - Fix minimal cycle reporting to show only actual cycle nodes - Remove redundant back-edge from last cycle node to first - Update test expectations for corrected cycle handling
…oval with iterative DFS (uutils#8786) - Implement iterative DFS to prevent stack overflows (from PR uutils#8737) - Fix minimal cycle reporting to show only actual cycle nodes - Remove redundant back-edge from last cycle node to first - Update test expectations for corrected cycle handling
…oval with iterative DFS (uutils#8786) - Implement iterative DFS to prevent stack overflows (from PR uutils#8737) - Fix minimal cycle reporting to show only actual cycle nodes - Remove redundant back-edge from last cycle node to first - Update test expectations for corrected cycle handling
Rewrite DFS method in iterative way to avoid stack overflows
Closes #8695
PR is on top of #8694
but changes are independent. Only top commit can be cherry-picked, if needed