The-OpenROAD-Project / OpenLane

OpenLane is an automated RTL to GDSII flow based on several components including OpenROAD, Yosys, Magic, Netgen and custom methodology scripts for design exploration and optimization.
https://openlane.readthedocs.io/
Apache License 2.0
1.27k stars 370 forks source link

Two builds started in the same minute interfere #1590

Closed xobs closed 1 year ago

xobs commented 1 year ago

Description

Design hardening is a process that takes a lot of time and is a very linear process. Developers who want to run experiments need to wait for the design to finish in order to read the results of an experiment.

It is possible to run multiple experiments at once by simply opening up multiple terminals. This allows the developer to start a build, make a change, then start a second build. An example of this might be to build a design for both SKY130 and GF180 at the same time.

However, builds started within one minute of one another run the risk of using the same output directory, resulting in confusing error messages.

Expected Behavior

Builds should never be able to share the same output directory.

Environment report

Kernel: Linux v5.15.79.1-microsoft-standard-WSL2
Distribution: ubuntu 22.04
Python: v3.10.6 (OK)
Container Engine: docker v20.10.21 (OK)
OpenLane Git Version: cb59d1f84deb5cedbb5b0a3e3f3b4129a967c988
pip: INSTALLED
python-venv: INSTALLED
---
PDK Version Verification Status: OK
---
Git Log (Last 3 Commits)

cb59d1f 2022-11-18T18:42:38+02:00 fix return values in `equally_spaced_sequence` (#1503) - Kareem Farid -  (grafted, HEAD, tag: 2022.11.19)
---
Git Remotes

origin  git@github.com:The-OpenROAD-Project/OpenLane (fetch)
origin  git@github.com:The-OpenROAD-Project/OpenLane (push)

Reproduction material

This should occur with any design where synthesis takes enough time to be able to go into another window and run a second build.

Relevant log output

[ERROR]: during executing openroad script /openlane/scripts/openroad/floorplan.tcl
[ERROR]: Log: ../si/work/caravel-gf180-pio/openlane/wb_pio/runs/22_12_23_15_56/logs/floorplan/3-initial_fp.log
[ERROR]: Last 10 lines:
[WARNING ORD-1013] instance _17949_ LEF master sky130_fd_sc_hd__conb_1 not found.
[INFO]: Setting output delay to: 2.4000000000000004
[INFO]: Setting input delay to: 2.4000000000000004
[INFO]: Setting load to: 0.033442
[INFO]: Setting clock uncertainty to: 0.25
[INFO]: Setting clock transition to: 0.15
[INFO]: Setting timing derate to: 0.5 %
[WARNING IFP-0009] SITE unithd not found.
Error: floorplan.tcl, 70 TypeError in method 'insert_tiecells_cmd', argument 1 of type 'odb::dbMTerm *'
child process exited abnormally
xobs commented 1 year ago

This is apparently not an openlane issue, it's an issue with https://github.com/efabless/caravel_user_project/

xobs commented 1 year ago

Opened the issue on caravel_user_project: https://github.com/efabless/caravel_user_project/issues/236