-
Ross McIlroy authored
The Control Equivalance phase was taking a lot of memory by allocating a large datastructure for every node even if the nodes were dead or wouldn't participate in the control equivalence algorithm. Instead allocate the data on-demand, and use the presense of the data as the flag for whether the node participates in the algorithm. Also remove DFS number field as it was unused. This reduces the amount of memory used for a 10,000 node graph in the linked bug from ~450KB to ~70KB. It also seems to reduce scheduling time by around 10% for local runs of Octane. BUG=chromium:700364 Change-Id: Iedfdf4dff0a01463c5b6471513e6b69ef010b02d Reviewed-on: https://chromium-review.googlesource.com/458219Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#44150}
e73bde18