chipsalliance / chipsalliance/chisel
Vec.reduceTree leads to java.lang.OutOfMemoryError
- Dominant language
- Scala
- Stars
- 4.8k
- Forks
- 658
- Avg merge
- 18h 59m
- Merged PRs (30d)
- 14
Description
In my code, the following usage of reduceTree will lead to OutOfMemoryError when the parameter dspXn grows from 16 to 32. The problem disappeared when I change the reduceTree to reduceLeft.
`io.convResult := VecInit((for(i<- 0 until 4)
yield VecInit((for(j<-0 until dspXn)
yield dspArray(j).result(i))).reduceTree(_+&_) ))`
Java runtime memory is enlarged using the following configuration. But the problem remains the same as long as reduceTree is used.
`export JAVA_OPTS="-XX:+CMSClassUnloadingEnabled -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC -Xmx32G -Xmx16G -XX:MaxPermSize=1G -Xss16M"`
Seems there is some memory leakage in the implementation of reduceTree?
Contributor guide
Assessment
This issue has not been assessed yet.