This MR reduces the number of calls to sta::Sta::findRequireds.
Previously, we would always call sta::Sta::findRequireds in the beginning of the loop, but instead we should only call it after anything changes in the graph.
This approach reduces the number of calls to this function from 5029 to 1927 in ariane133 design.
I also checked that the sha of the resulting .odb file matches the original version.
I measured the run times of CTS in 5 runs of ariane133:
This MR reduces the number of calls to
sta::Sta::findRequireds
.Previously, we would always call
sta::Sta::findRequireds
in the beginning of the loop, but instead we should only call it after anything changes in the graph. This approach reduces the number of calls to this function from5029
to1927
inariane133
design.I also checked that the sha of the resulting
.odb
file matches the original version. I measured the run times of CTS in 5 runs of ariane133:Signed-off-by: Kamil Rakoczy krakoczy@antmicro.com