i'm having a lot of trouble with reproducibility. ...
# openlane
a
i'm having a lot of trouble with reproducibility. the same few errors seem to crop up. the expected ones are related to overconstrained routing or placement. but i am yet to be able to get my (risc-v core) design to successfully complete the flow twice with the same config
a
Hmm, what are the errors you're getting intermittently? Is there anything special about the design you have?
a
there shouldn't be anything special about this design
so i did a sweep over GLB_RT_ADJUSTMENT (2), FP_CORE_UTIL (3), PL_TARGET_DENSITY (3) and SYNTH_STRATEGY (2). my errors are usually one of:
• openroad or_route.tcl segfaults • openroad or_route.tcl get SIGABRT from somewhere • [ERROR] FastRoute cannot handle very congested design • ANTENNA__1327951__CLK overlaps ANTENNA_clkbuf_opt_2372_clk_A and so on • PHY_2243138 overlaps PHY_9583 and so on
1 set of params managed to produce a GDS. eek
a
Right, so the overlapping issues and sigfaults should now be mostly gone on develop, which will move to master this week. The congestion error still happens occasionally and reducing the target placement density usually helps avoid it; is that the case in your experiences as well?
🎉 1
a
yes, reducing placement density does usually avoid the congestion error. my problem is non-determinism in the process such that two different runs with the same density don't always succeed
a
I haven't had issues with non-determinism; let me know however if you could identify which step produces significantly different results every time. Determinism is the premise of using the continuous integration system to test whether the results generated by every new commit matches (or are better than) the benchmarks that are now stored on the repo (e.g., https://github.com/efabless/openlane/tree/develop/regression_results/benchmark_results).
a
it's possible that some of the bugs that prevent me seeing success with the same parameters repeatedly have been fixed already
but i'm trying to gather data for you