There is one major problem with this node depth generator: It cannot execute the larger odgi files (LPA.og and DRB1-3123.og). I am currently using verilator to execute the Calyx code due to a bug in the interpreter, and verilator produces a stack overflow error (!). Verilator does not produce a stack overflow error on the implementation which does not use invoke statements.
What this version of the generator does bring to the table is multiplexing (yay!) I haven't done any tests to see how efficient it is (how close it gets to W/N), but the capability is there (for the smaller odgi files, anyways). I also added another group of node depth tests for multiplexing under test/depth/multiplexing.
There are also two files where I attempt to use the ref keyword; this implementation passes the basic tests on verilator (except LPA.og and DRB1-3123.og), but because of a bug with the ref keyword, multiplexing does not work. I left them in the repo because I hope that once the bug is fixed, multiplexing will be possible (and much easier) with the ref keyword, although perhaps they shouldn't be merged to the main branch yet?
There is one major problem with this node depth generator: It cannot execute the larger
odgi
files (LPA.og
andDRB1-3123.og
). I am currently using verilator to execute the Calyx code due to a bug in the interpreter, and verilator produces a stack overflow error (!). Verilator does not produce a stack overflow error on the implementation which does not use invoke statements.What this version of the generator does bring to the table is multiplexing (yay!) I haven't done any tests to see how efficient it is (how close it gets to W/N), but the capability is there (for the smaller odgi files, anyways). I also added another group of node depth tests for multiplexing under
test/depth/multiplexing
.There are also two files where I attempt to use the
ref
keyword; this implementation passes the basic tests on verilator (exceptLPA.og
andDRB1-3123.og
), but because of a bug with theref
keyword, multiplexing does not work. I left them in the repo because I hope that once the bug is fixed, multiplexing will be possible (and much easier) with theref
keyword, although perhaps they shouldn't be merged to the main branch yet?