Skip to content

updated cluster_flops enablement check#4143

Merged
maliberty merged 1 commit intoThe-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:update-cluster-flops-check
Apr 14, 2026
Merged

updated cluster_flops enablement check#4143
maliberty merged 1 commit intoThe-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:update-cluster-flops-check

Conversation

@openroad-ci
Copy link
Copy Markdown
Collaborator

Previous check was enabling cluster_flops if the CLUSTER_FLOPS flow variable was 0 (was checking existence and not "").

Updated docs to include basic CLUSTER_FLOPS_ARGS description.

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 redefines the CLUSTER_FLOPS variable to enable multi-bit flip-flop clustering and introduces CLUSTER_FLOPS_ARGS for passing additional arguments. The changes affect the documentation, variables schema, and global placement script. Feedback recommends avoiding manual edits to the auto-generated FlowVariables.md file and suggests using a more consistent boolean check style in the Tcl script.

Comment on lines +112 to +113
| <a name="CLUSTER_FLOPS"></a>CLUSTER_FLOPS| Enable clustering of flip-flops into multi-bit flip-flops, if the platform PDK includes multi-bit flip-flops| 0|
| <a name="CLUSTER_FLOPS_ARGS"></a>CLUSTER_FLOPS_ARGS| Additional arguments passed to the cluster_flops command.| |
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

This file is automatically generated from flow/scripts/variables.yaml (as noted on line 87). Manual edits to these tables and lists are likely to be overwritten. It is recommended to update the documentation by running the generation script after modifying variables.yaml to ensure consistency and avoid maintenance issues.


if { [env_var_exists_and_non_empty CLUSTER_FLOPS] } {
cluster_flops {*}[env_var_or_empty CLUSTER_FLOPS_ARGS]
if { [env_var_equals CLUSTER_FLOPS 1] } {
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

Using env_var_equals CLUSTER_FLOPS 1 is inconsistent with the boolean check style used elsewhere in this script (e.g., lines 9, 18, and 30), which use direct truthiness checks. For consistency and to allow for standard Tcl boolean values (like true or on), consider using a direct check, as the variable is guaranteed to have a default value from variables.yaml.

if { $::env(CLUSTER_FLOPS) } {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I guess 9b589d2 was a mistake and should just be reverted back to this form.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I think initially I was trying to avoid CLUSTER_FLOPS_ARGS and have CLUSTER_FLOPS do both but it didn't work out.

reverted CLUSTER_FLOPS check

Signed-off-by: Jeff Ng <jeffng@precisioninno.com>
@openroad-ci openroad-ci force-pushed the update-cluster-flops-check branch from 040c328 to 567f1df Compare April 13, 2026 21:51
@maliberty maliberty merged commit e186bba into The-OpenROAD-Project:master Apr 14, 2026
8 checks passed
@maliberty maliberty deleted the update-cluster-flops-check branch April 14, 2026 14:44
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.

3 participants