Skip to content

Commit 1fad177

Browse files
committed
docs: Document NUM_CORES
Signed-off-by: Øyvind Harboe <[email protected]>
1 parent da1076d commit 1fad177

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

docs/user/FlowVariables.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,7 @@ configuration file.
175175
| <a name="MAX_ROUTING_LAYER"></a>MAX_ROUTING_LAYER| The highest metal layer name to be used in routing.| |
176176
| <a name="MIN_BUF_CELL_AND_PORTS"></a>MIN_BUF_CELL_AND_PORTS| Used to insert a buffer cell to pass through wires. Used in synthesis.| |
177177
| <a name="MIN_ROUTING_LAYER"></a>MIN_ROUTING_LAYER| The lowest metal layer name to be used in routing.| |
178+
| <a name="NUM_CORES"></a>NUM_CORES| Passed to `openroad -threads $(NUM_CORES)`, defaults to numbers of cores in system as determined by system specific code in Makefile, `nproc` is tried first. OpenROAD does not limit itself to this number of cores across OpenROAD running instances, which can lead to overprovisioning in contexts such as bazel-orfs where there could be many routing, or place jobs running at the same time.| |
178179
| <a name="OPENROAD_HIERARCHICAL"></a>OPENROAD_HIERARCHICAL| Feature toggle to enable to run OpenROAD in hierarchical mode, otherwise considered flat. Will eventually be the default and this option will be retired.| 0|
179180
| <a name="PDN_TCL"></a>PDN_TCL| File path which has a set of power grid policies used by pdn to be applied to the design, such as layers to use, stripe width and spacing to generate the actual metal straps.| |
180181
| <a name="PLACE_DENSITY"></a>PLACE_DENSITY| The desired average placement density of cells: 1.0 = dense, 0.0 = widely spread. The intended effort is also communicated by this parameter. Use a low value for faster builds and higher value for better quality of results. If a too low value is used, the placer will not be able to place all cells and a recommended minimum placement density can be found in the logs. A too high value can lead to excessive runtimes, even timeouts and subtle failures in the flow after placement, such as in CTS or global routing when timing repair fails. The default is platform specific.| |
@@ -480,6 +481,7 @@ configuration file.
480481

481482
## All stages variables
482483

484+
- [NUM_CORES](#NUM_CORES)
483485
- [OPENROAD_HIERARCHICAL](#OPENROAD_HIERARCHICAL)
484486
- [SWAP_ARITH_OPERATORS](#SWAP_ARITH_OPERATORS)
485487
- [SYNTH_WRAPPED_OPERATORS](#SYNTH_WRAPPED_OPERATORS)

flow/scripts/variables.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1215,3 +1215,15 @@ MAX_REPAIR_TIMING_ITER:
12151215
- floorplan
12161216
- grt
12171217
- place
1218+
NUM_CORES:
1219+
description: >
1220+
Passed to `openroad -threads $(NUM_CORES)`, defaults to numbers
1221+
of cores in system as determined by system specific code in Makefile,
1222+
`nproc` is tried first.
1223+
1224+
OpenROAD does not limit itself to this number of cores across
1225+
OpenROAD running instances, which can lead to overprovisioning
1226+
in contexts such as bazel-orfs where there could be many
1227+
routing, or place jobs running at the same time.
1228+
stages:
1229+
- All stages

0 commit comments

Comments
 (0)