OpenROAD icon indicating copy to clipboard operation
OpenROAD copied to clipboard

Improve advice from - [ERROR GPL-0302] Use a higher -density or re-floorplan with a larger core area.

Open oharboe opened this issue 2 years ago • 2 comments

Description

Alternativly to changing the density, what is the actual and suggested CORE_UTILIZATION?

[ERROR GPL-0302] Use a higher -density or re-floorplan with a larger core area.
Given target density: 0.10
Suggested target density: 0.14
Error: global_place_skip_io.tcl, 30 GPL-0302
Command exited with non-zero status 1
Elapsed time: 0:02.44[h:]min:sec. CPU time: user 2.10 sys 0.34 (100%). Peak memory: 601048KB.

Suggested Solution

List is the actual and suggested CORE_UTILIZATION.

Additional Context

No response

oharboe avatar Nov 15 '23 08:11 oharboe

Hi, I ran into this issue when trying a nangate45 design (selected utilization: 10%, suggested utilization: 11%). I originally thought that when aiming for a CORE_UTILIZATION target, the core area would resize to match target utilization.

Isn't it the case? Should this be a silent warning?

agostini01 avatar May 21 '25 19:05 agostini01

The utilization matches what you set it to when the design is loaded, but the utilization changes when running optimizations and adding/removing/resizing cells.

rovinski avatar May 30 '25 17:05 rovinski

Hi, this error 302 was modified, now it is a warning. This error happened when the provided density was too low. Now gpl automatically modifies the density for the lowest valid density value. The change was performed in PR https://github.com/The-OpenROAD-Project/OpenROAD/pull/7692

@oharboe do you still want to see the CORE_UTILIZATION value with the new warning, or perhaps somewhere else in gpl's log?

gudeh avatar Jul 09 '25 10:07 gudeh

It is a usability issue that is not very high on my list: how do I convert from the units in the warning to CORE_UTILIZATION units?

Perhaps it would be better to fix this in ORFS by introducing a CORE_DENSITY variable that is an alternative to CORE_UTILIZATION.

Why do we have two units here anyway?

oharboe avatar Jul 09 '25 10:07 oharboe

The PLACE_DENSITY is used in gpl as the target density. The target density is an upper limit for the gpl bins. In practice the value is used for scaling the bin areas. Setting this value does not guarantee to reach such density on bins, in fact it just an upper limit.

As for CORE_UTILIZATION, I understand it is a general or "global" setting that is not directly used by GPL. Instead, it is used by MPL, although I am not exactly sure how MPL utilizes it.

gudeh avatar Jul 09 '25 12:07 gudeh

@maliberty @gudeh At this point this is just a usability issue. The information is in the log, but what do I as a user do with this information? I should take some advice from place and plonk it into the CORE_FOO variables... Ideally a copy and paste job.

oharboe avatar Jul 09 '25 12:07 oharboe

Thoughts on how to make this a copy and paste job for the user?

oharboe avatar Jul 09 '25 12:07 oharboe

@oharboe I am not sure I understand your main concern, you would like to have a copy and paste suggestion for the core area?

gudeh avatar Jul 09 '25 12:07 gudeh

@oharboe I am not sure I understand your main concern, you would like to have a copy and paste suggestion for the core area?

I think that could be a nice additional suggestion, but I think the user is often after a copy and paste suggestion for CORE_UTILIZATION.

To me the PLACE_DENSITY and CORE_UTILIZATION is confusing. Placement density is a proxy for "proposed initial placement effort", it communicates the intent of the user: how hard to try. The user might be interested in the design quickly running through or higher QoR.

CORE_UTILIZATION / CORE_ASPECT_RATIO is a way to approximate specify how big CORE_AREA should be and the shape.

oharboe avatar Jul 09 '25 12:07 oharboe

I don't think gpl can effectively determine CORE_UTILIZATION. There are many steps after gpl finishes that may add more area and any advice it gives would be as likely to be misleading as useful.

maliberty avatar Jul 14 '25 22:07 maliberty