最近,我从上到下都在学习Chisel,之前没有接触过Scala,只是接触过Java。当我尝试越来越大的硬件构造时,我开始从Java中产生神秘的错误,我已经确定这些错误与Java认为它具有的资源有关。我已经通过在不同的机器上运行相同的Chisel代码来确定这一点,并提出了成功或一系列Java错误,其中包括隐秘的#34;接下来是空迭代器"显式"超出GC开销限制"或Java堆栈空间或堆空间错误。我希望,尽管我不确定,有办法配置Java和/或Scala / Chisel来打开我在某些环境中遇到的限制。我搜索过Chisel文档,了解最低和/或推荐的设置以及确定这些限制的方法,并建立新的限制无效。
如果我们能够掌握一些关于这个可能常见的新手难度的智慧,那将是很棒的。我关心什么Java / Scala设置?我怎么知道它们是什么?我该如何改变它们?提前感谢您的见解。
此外,我们很高兴开始编制一个"命中列表"可能与资源相关的神秘Java / Scala错误。 "接着是空迭代器"一个人真的让我抓住稻草。
答案 0 :(得分:1)
通常我可以通过调整传递给java的参数来解决这些错误(有时会分组在SBT_OPTS
变量中)。以下是我拼凑在一起的设置:
-Xmx4G -Xss4M -XX:MaxPermSize=4G -XX:ReservedCodeCacheSize=64M
增加Xmx
和MaxPermSize
变量通常似乎最有帮助。