Open David-Durst opened 4 years ago
All the time is spent in CoreIR:
@rdaly525 how do I count the number of instances in a file? The produced json is 70 MB, but I'm not sure why it's so large. In particular, I believe the large size is due to a lot of wire rather than instances.
The json file is in the attached zip ae_example.zip
@rdaly525 the file that generates the slow circuit is: https://github.com/David-Durst/aetherling/blob/master/aetherling/examples/ae_circuit24998-6.py
I know that flattening can be a slow operation. Are you flattening?
Yes, I am flattening.
The entirety of the issue appears to be caused by the reshape at https://github.com/David-Durst/aetherling/blob/master/aetherling/examples/ae_circuit24998-6.py#L102.
The circuit is small but it has a lot of wires. The Reshape makes creating 3 RAMs, each with a port that is 150 ints wide. The circuit is small, but it's a lot of wires.
Is that a resonable circuit for simulation? It seems fine to me but I'd like to get your thoughts @rdaly525 . If this is reasonable, then this appears to be largely a CoreIR wiring issue.
The test https://github.com/David-Durst/embeddedHaskellAetherling/blob/2afef5715c0109e2b212656f890426bfe169bfac/test/Test_Slowdown.hs#L484-L485 is extremely slow.
The issue is not with Haskell. The generated magma circuit file takes 89 seconds to run by itself:
I know this is the right python file as it's the most recent one in
/tmp
and that command is the most recent on I ran that generated files in/tmp
. The fault_stderr file is not related.