Skip to content

Clarify pack, place, route, analysis on vs. off reporting #3039

Open
@vaughnb-cerebras

Description

@vaughnb-cerebras

Proposed Behaviour

Currently the reporting of what stages are run in vpr is confusing. For example, if you specify --route, you will show all stages as being enabled, when really packing and placement are loading from file.

We should instead show one of three values for pack, place, route and analysis: ENABLED, DISABLED, or LOAD

Current Behaviour

Here's an example of a couple of current outputs:


The first file (xx.route.log) only did routing:

Packing was skipped (read from file):

Load packing

Begin loading packed FPGA netlist file.
Netlist generated from file 'wb_conmax_stratixiv_arch_timing.net'.
Detected 0 constant generators (to see names run with higher pack verbosity)
Finished loading packed FPGA netlist file

Placement was skipped (read from file):

Load Placement

Reading ref_wb_conmax_stratixiv_arch_timing.place.

Successfully read ref_wb_conmax_stratixiv_arch_timing.place.

The command line specifies --route (interpreted as only perform routing) so this makes sense. The following output is confusing though, so we should probably fix it Amin:

Packer: ENABLED
Placer: ENABLED
Router: ENABLED
Analysis: ENABLED

===========================

The second ile (xx.place.log) only performed placement. This makes sense, since --place was specified, and that's what it is implies.

Load packing

Begin loading packed FPGA netlist file.
Netlist generated from file 'wb_conmax_stratixiv_arch_timing.net'.
Detected 0 constant generators (to see names run with higher pack verbosity)
Finished loading packed FPGA netlist file

<a bunch of output from placement, and then routing isn't run>

The output below is again misleading though:

Packer: ENABLED
Placer: ENABLED
Router: DISABLED
Analysis: DISABLED

The packer wasn't really enabled (it was loaded). It looks like our logic just checks what the last stage to be run is and marks it and everything before it as "enabled". We should probably also have a "loaded from file" state to explain what is going on more.

Possible Solution

Print ENABLED, DISABLED or LOAD in the command line flow summary.

Adding @amin1377 to make sure he's not simultaneously doing this.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions