You can run Vivado Synthesis incrementally. In this flow, the tool puts incremental synthesis info in the generated DCP file that can be referenced in later runs. It detects when the design has changed and only re-runs synthesis on sections of the design that have changed. This flow significantly reduces runtime for designs with small changes. In addition, inserting small changes into the RTL causes the design's QoR to fluctuate less.
Note: Incremental synthesis is not supported for out-of-context (OOC)
runs.