Skip to content

DPL negotiation default algorithm#4186

Open
openroad-ci wants to merge 15 commits intoThe-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:secure-dpl-negotiation-default
Open

DPL negotiation default algorithm#4186
openroad-ci wants to merge 15 commits intoThe-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:secure-dpl-negotiation-default

Conversation

@openroad-ci
Copy link
Copy Markdown
Collaborator

This PR updates metrics for OR PR The-OpenROAD-Project/OpenROAD#10226 to make new negotiation legalizer algorithm into the default one.

This PR also replaces USE_NEGOTIATION for DPL_USE_OLD_DIAMOND, since the OR submodule now does not have -use_negotiation anymore for dpl, and has -use_old_diamond.

I also modified the utilization of a few failing designs.

gudeh added 12 commits April 22, 2026 08:50
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
replace USE_NEGOTIATION for DPL_USE_OLD_DIAMOND, since the OR submodule now does not have -use_negotiation anymore for dpl, and has -use_old_diamond, the default is negotiation legalizer

Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the OpenROAD subproject, reduces core utilization for several designs, and renames the USE_NEGOTIATION variable to DPL_USE_OLD_DIAMOND to reflect that the negotiation legalizer is now the default. Feedback suggests removing leftover debug code in global_route.tcl and adding the stages field to the new variable definition in the configuration files for improved documentation and consistency.

Comment thread flow/scripts/global_route.tcl Outdated
Comment on lines 67 to 69
#set_debug_level DPL negotiation 1
dpl::detailed_placement_debug
log_cmd detailed_placement {*}$dpl_args
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

These lines appear to be leftover debug code. Commented-out code and explicit calls to dpl::detailed_placement_debug should be removed to keep the scripts clean and consistent with other stages (like CTS) that also perform detailed placement.

    log_cmd detailed_placement {*}$dpl_args

Comment thread flow/scripts/variables.json Outdated
Comment on lines 1433 to 1436
"DPL_USE_OLD_DIAMOND": {
"default": 0,
"description": "Enable using negotiation legalizer for detailed placement.\n"
"description": "Use the former diamond search legalizer for detailed placement instead of the default negotiation legalizer.\n"
},
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

It is recommended to include the stages field for the new DPL_USE_OLD_DIAMOND variable to document where it is used (place, cts, and grt) and to maintain consistency with other variables in this file.

  "DPL_USE_OLD_DIAMOND": {
    "default": 0,
    "description": "Use the former diamond search legalizer for detailed placement instead of the default negotiation legalizer.\n",
    "stages": [
      "place",
      "cts",
      "grt"
    ]
  },

Comment on lines +625 to 628
DPL_USE_OLD_DIAMOND:
description: |
Enable using negotiation legalizer for detailed placement.
Use the former diamond search legalizer for detailed placement instead of the default negotiation legalizer.
default: 0
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

To maintain consistency with variables.json and other documented variables, consider adding the stages field here as well.

DPL_USE_OLD_DIAMOND:
  description: |
    Use the former diamond search legalizer for detailed placement instead of the default negotiation legalizer.
  default: 0
  stages:
    - place
    - cts
    - grt

gudeh added 3 commits April 24, 2026 21:00
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants