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.26k stars 366 forks source link

Running make test fails and hangs for issue_reproducible #1233

Closed vijayank88 closed 1 year ago

vijayank88 commented 1 year ago

Description

Running make test hangs too long (more than hour) with latest OpenLane during issue_reproducible and flow not exit until killing the terminal.

Environment

Please run the following set of commands in the OpenLane folder:

make survey || python3 ./env.py issue-survey
python3 ./env.py issue-survey
Kernel: Linux v3.10.0-1160.49.1.el7.x86_64
Distribution: centos 7
Python: v3.6.8 (OK)
Container Engine: docker v20.10.16 (OK)
OpenLane Git Version: b50b4d03ab10ad0b3a49fd2df64448ad2c2d739e
pip: INSTALLED
python-venv: INSTALLED
---
PDK Version Verification Status: OK
---
Git Log (Last 3 Commits)

b50b4d0 2022-07-25T16:52:54+02:00 Tie Cells at FP Stage, Improved Cell Padding (#1226) - Mohamed Gaber -  (HEAD -> master, tag: 2022.07.26, origin/master, origin/HEAD)
610a329 2022-07-22T15:50:48+02:00 RTD Fixes (#1228) - Mohamed Gaber -  (tag: 2022.07.23)
ee98adb 2022-07-22T15:21:16+02:00 [BOT] Update magic (#985) - Openlane Bot -  ()
---
Git Remotes

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

Reproduction Material

Expected behavior

Flow should not hang

Logs

[STEP 6]
[INFO]: Generating PDN...
[ERROR]: during executing openroad script /openlane/scripts/openroad/pdn.tcl
[ERROR]: Log: designs/spm/runs/openlane_test/logs/floorplan/6-pdn.log
[ERROR]: Last 10 lines:
[INFO ODB-0226] Finished LEF file:  /openlane/designs/spm/runs/openlane_test/tmp/merged.nom.lef
[INFO ODB-0127] Reading DEF file: /openlane/designs/spm/runs/openlane_test/results/floorplan/spm.def
[INFO ODB-0128] Design: spm
[INFO ODB-0130]     Created 36 pins.
[INFO ODB-0131]     Created 462 components and 2602 component-terminals.
[INFO ODB-0133]     Created 336 nets and 952 connections.
[INFO ODB-0134] Finished DEF file: /openlane/designs/spm/runs/openlane_test/results/floorplan/spm.def
[ERROR PDN-0185] Insufficient width (84.32 um) to add straps on layer met5 in grid "stdcell_grid" with total strap width 78.19 um and offset 7.0 um.
Error: pdn_cfg.tcl, 125 PDN-0185
child process exited abnormally

[ERROR]: Creating issue reproducible...
[INFO]: Saving runtime environment...
vijayank88 commented 1 year ago

Its shocking spm design took 1.3T OPENROAD_FLOW/OLFS/sky130_OL/OpenLane/designs/spm/runs/openlane_test/issue_reproducible 1.3T space. @donn please check this. Why its consuming such huge memory?

maliberty commented 1 year ago

I ran make test with 2022.07.26 and it completed without any error or excessive memory usage or runtime. @vijayank88 can you reproduce this issue?

kareefardi commented 1 year ago

I ran into the huge sizes issue before. I don't know how to reproduce it. If i remember correctly the reproducible folder had recursive folders of the reproducible. I am just mentioning this in case its useful

vijayank88 commented 1 year ago

Yes you are right. I also had recursive folder. Also it's copied all my previous runs tag into current part of issue_producible.

On Tue, Jul 26, 2022, 8:35 PM Kareem Farid @.***> wrote:

I ran into the huge sizes issue before. I don't know how to reproduce it. If i remember correctly the reproducible folder had recursive folders of the reproducible. I am just mentioning this in case its useful

— Reply to this email directly, view it on GitHub https://github.com/The-OpenROAD-Project/OpenLane/issues/1233#issuecomment-1195604705, or unsubscribe https://github.com/notifications/unsubscribe-auth/AUOQKCMZZG7MGB2AOI2I33TVV75EPANCNFSM54U6LW6Q . You are receiving this because you were mentioned.Message ID: @.***>

donn commented 1 year ago

I've face this issue before, so I can confirm it happens. Key difference is I don't know how to reliably reproduce it.

donn commented 1 year ago

Ah, got it, you forgot a tiny detail: export PDK=sky130B.

That triggers it consistently. I'm on it.

donn commented 1 year ago

nvm it's no longer triggering consistently

donn commented 1 year ago

@marwaneltoukhy WHY? Screenshot at 2022-07-26 19:26:52

donn commented 1 year ago

Had a discussion with Marwan- #1234 updates the contributing guidelines