Skip to content

Commit f9ba17d

Browse files
committed
Merge remote-tracking branch 'private/master' into secure-gpl-binSize-float
2 parents 2955d3e + 7c141df commit f9ba17d

File tree

7 files changed

+49
-11
lines changed

7 files changed

+49
-11
lines changed

docs/user/FlowVariables.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,9 +75,10 @@ configuration file.
7575
| <a name="CORNER"></a>CORNER| PVT corner library selection. Only available for ASAP7 and GF180 PDKs.| | |
7676
| <a name="CTS_ARGS"></a>CTS_ARGS| Override `clock_tree_synthesis` arguments.| | |
7777
| <a name="CTS_BUF_DISTANCE"></a>CTS_BUF_DISTANCE| Distance (in microns) between buffers.| | |
78-
| <a name="CTS_BUF_LIST"></a>CTS_BUF_LIST| List of cells used to construct the clock tree.| | |
78+
| <a name="CTS_BUF_LIST"></a>CTS_BUF_LIST| List of cells used to construct the clock tree. Overrides buffer inference.| | |
7979
| <a name="CTS_CLUSTER_DIAMETER"></a>CTS_CLUSTER_DIAMETER| Maximum diameter (in microns) of sink cluster.| 20| |
8080
| <a name="CTS_CLUSTER_SIZE"></a>CTS_CLUSTER_SIZE| Maximum number of sinks per cluster.| 50| |
81+
| <a name="CTS_LIB_NAME"></a>CTS_LIB_NAME| Name of the Liberty library to use in selecting the clock buffers.| | |
8182
| <a name="CTS_SNAPSHOT"></a>CTS_SNAPSHOT| Creates ODB/SDC files prior to clock net and setup/hold repair.| | |
8283
| <a name="DESIGN_NAME"></a>DESIGN_NAME| The name of the top-level module of the design.| | |
8384
| <a name="DESIGN_NICKNAME"></a>DESIGN_NICKNAME| DESIGN_NICKNAME just changes the directory name that ORFS outputs to be DESIGN_NICKNAME instead of DESIGN_NAME in case DESIGN_NAME is unwieldy or conflicts with a different design.| | |
@@ -309,6 +310,7 @@ configuration file.
309310
- [CTS_BUF_LIST](#CTS_BUF_LIST)
310311
- [CTS_CLUSTER_DIAMETER](#CTS_CLUSTER_DIAMETER)
311312
- [CTS_CLUSTER_SIZE](#CTS_CLUSTER_SIZE)
313+
- [CTS_LIB_NAME](#CTS_LIB_NAME)
312314
- [CTS_SNAPSHOT](#CTS_SNAPSHOT)
313315
- [DETAILED_METRICS](#DETAILED_METRICS)
314316
- [EQUIVALENCE_CHECK](#EQUIVALENCE_CHECK)

etc/DockerHelper.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ usage: $0 [CMD] [OPTIONS]
3333
-password=PASSWORD Password to loging at the docker registry.
3434
-ci Install CI tools in image
3535
-dry-run Do not push images to the repository
36+
-push-latest Push the latest image to the repository
3637
-no-constant-build-dir Do not use constant build directory
3738
-h -help Show this message and exits
3839
@@ -136,10 +137,22 @@ _push() {
136137
orfsTag=${org}/orfs:${tag}
137138
echo "Renaming docker image: ${builderTag} -> ${orfsTag}"
138139
${DOCKER_CMD} tag ${builderTag} ${orfsTag}
140+
139141
if [[ "${dryRun}" == 1 ]]; then
140142
echo "[DRY-RUN] ${DOCKER_CMD} push ${orfsTag}"
143+
if [[ "${pushLatest}" == 1 ]]; then
144+
echo "[DRY-RUN] ${DOCKER_CMD} tag ${orfsTag} \"${org}/orfs:latest\""
145+
echo "[DRY-RUN] ${DOCKER_CMD} push \"${org}/orfs:latest\""
146+
fi
141147
else
142148
${DOCKER_CMD} push ${orfsTag}
149+
150+
# Only tag and push as latest if requested
151+
if [[ "${pushLatest}" == 1 ]]; then
152+
${DOCKER_CMD} tag ${orfsTag} "${org}/orfs:latest"
153+
${DOCKER_CMD} push "${org}/orfs:latest"
154+
echo "Tagged and pushed ${org}/orfs:latest"
155+
fi
143156
fi
144157
fi
145158
}
@@ -174,6 +187,7 @@ numThreads="-1"
174187
tag=""
175188
options=""
176189
dryRun=0
190+
pushLatest=0
177191

178192
while [ "$#" -gt 0 ]; do
179193
case "${1}" in
@@ -186,6 +200,9 @@ while [ "$#" -gt 0 ]; do
186200
-dry-run )
187201
dryRun=1
188202
;;
203+
-push-latest )
204+
pushLatest=1
205+
;;
189206
-os=* )
190207
os="${1#*=}"
191208
;;

flow/scripts/cts.tcl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ append_env_var cts_args CTS_BUF_DISTANCE -distance_between_buffers 1
2424
append_env_var cts_args -sink_clustering_size CTS_CLUSTER_SIZE 1
2525
append_env_var cts_args -sink_clustering_max_diameter CTS_CLUSTER_DIAMETER 1
2626
append_env_var cts_args CTS_BUF_LIST -buf_list 1
27+
append_env_var cts_args CTS_LIB_NAME -library 1
28+
2729

2830
if {[env_var_exists_and_non_empty CTS_ARGS]} {
2931
set cts_args $::env(CTS_ARGS)

flow/scripts/variables.yaml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -720,7 +720,7 @@ CTS_BUF_DISTANCE:
720720
- cts
721721
CTS_BUF_LIST:
722722
description: |
723-
List of cells used to construct the clock tree.
723+
List of cells used to construct the clock tree. Overrides buffer inference.
724724
stages:
725725
- cts
726726
CTS_CLUSTER_DIAMETER:
@@ -737,6 +737,11 @@ CTS_CLUSTER_SIZE:
737737
stages:
738738
- cts
739739
tunable: 1
740+
CTS_LIB_NAME:
741+
description: |
742+
Name of the Liberty library to use in selecting the clock buffers.
743+
stages:
744+
- cts
740745
CTS_SNAPSHOT:
741746
description: |
742747
Creates ODB/SDC files prior to clock net and setup/hold repair.

jenkins/public_tests_all.Jenkinsfile

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,22 @@
11
@Library('[email protected]') _
22

33
node {
4+
5+
def isDefaultBranch = (env.BRANCH_NAME == 'master')
6+
def daysToKeep = '20';
7+
def numToKeep = (isDefaultBranch ? '-1' : '10');
48

5-
properties([copyArtifactPermission('${JOB_NAME},'+env.BRANCH_NAME)]);
9+
properties([
10+
copyArtifactPermission('${JOB_NAME},'+env.BRANCH_NAME),
11+
12+
buildDiscarder(logRotator(
13+
daysToKeepStr: daysToKeep,
14+
artifactDaysToKeepStr: daysToKeep,
15+
16+
numToKeepStr: numToKeep,
17+
artifactNumToKeepStr: numToKeep
18+
))
19+
]);
620

721
stage('Checkout') {
822
if (env.BRANCH_NAME && env.BRANCH_NAME == 'master') {

tools/AutoTuner/src/autotuner/distributed.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -565,9 +565,7 @@ def sweep():
565565
temp = dict()
566566
for value in parameter:
567567
temp.update(value)
568-
queue.put(
569-
[args, repo_dir, temp, LOCAL_DIR, SDC_ORIGINAL, FR_ORIGINAL, INSTALL_PATH]
570-
)
568+
queue.put([args, repo_dir, temp, SDC_ORIGINAL, FR_ORIGINAL, INSTALL_PATH])
571569
workers = [consumer.remote(queue) for _ in range(args.jobs)]
572570
print("[INFO TUN-0009] Waiting for results.")
573571
ray.get(workers)

tools/AutoTuner/src/autotuner/utils.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@
4040
import yaml
4141
import subprocess
4242
import sys
43+
import uuid
44+
import time
4345
from multiprocessing import cpu_count
4446
from datetime import datetime
45-
from uuid import uuid4 as uuid
46-
from time import time
4747

4848
import numpy as np
4949
import ray
@@ -624,15 +624,15 @@ def openroad_distributed(
624624
)
625625
if variant is None:
626626
variant = config.replace(" ", "_").replace("=", "_")
627-
t = time()
627+
t = time.time()
628628
metric_file = openroad(
629629
args=args,
630630
base_dir=repo_dir,
631631
parameters=config,
632-
flow_variant=f"{uuid()}-{variant}",
632+
flow_variant=f"{uuid.uuid4()}-{variant}" if variant else f"{uuid.uuid4()}",
633633
install_path=install_path,
634634
)
635-
duration = time() - t
635+
duration = time.time() - t
636636
return metric_file, duration
637637

638638

0 commit comments

Comments
 (0)