logging: log hash alongside elapsed to help find divergent/non-deterministic results#3294
Conversation
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
|
If |
Yosys didn't fail, the .odb hash just is N/A (not applicable) to yosys. |
|
Also, locally, |
|
@vvbandeira Couldy you automerge? I need a docker image of this before I can try out The-OpenROAD-Project/OpenROAD#7722 |
|
For the yosys step you could hash to .v as it would serve the same purpose of isolating the source of a diff. |
Well... yosys determinism is a bit fickle, so I'd like to lave that be for now. A refinement if it turns out ot be useful. |
|
Same for .gds, hash there doesn't make sense while it contains non-determinism like build dates and more. |
|
yosys is deterministic afaik, its just very sensitive to input changes. For a fixed version and a fixed input you should get the same result consistently. The hash is only a debugging tool and it seems useful for that as much as it is for OR. |
Agreed: a refinement beyond this PR. |
|
@maliberty I'll experiment with yosys after this is in master, I suspect I'll run into some snags. This covers 80-90% of the use-case. I'll have a quickly look at canonicalizing .gds to see if a hash is possible there. |
|
gds is rarely a problem and is at the end of the flow so it is a lower priority for me. |
|
@maliberty I have the rest lined up, but can we merge this so I can have docker image tomorrow morning and continue my chase? |
|
@maliberty Merge manually? There is an unrelated error/lockup here The-OpenROAD-Project/OpenROAD#7741 |
Example. A failed step could end up with log and no .odb file.