我注意到 mvn-gwt 操作期间内存和 CPU 使用率很高,尤其是在编译阶段。内存使用量猛增。我只想知道这是否正常以及是否其他人正在经历这种情况。
我当前的 JVM 设置是-Xms64m -Xmx1280m -XX:MaxPermSize=512m
我认为这很正常。因为 GWT 中的编译阶段确实非常耗费资源。GWT 提供了一个更大的库(在 gwt-user.jar 中),必须在编译期间对其进行分析,以及许多需要大量内存和处理能力的编译器优化。因此,GWT 编译器在内部使用大量内存。
是的,这很正常。它源于谷歌在编写 gwtc 命令(gwtc = GWT Compile)时的 CPU 利用率非常高。
我认为这很好,因为 CPU 的权衡通常是内存使用,这对我来说更有价值。
(我不为谷歌工作:-))
GWT 编译器有一个 localWorkers 设置,告诉它要使用多少个内核。内核越多,它将使用的内存就越多。如果您使用的是 Eclipse 插件,它默认只使用一个(我相信)。但是 Maven 插件默认使用你机器上的所有核心(即,如果你有一个四核,它将使用localWorkers 5
.
有趣的是,我一直在遵循这里的建议:http: //josephmarques.wordpress.com/2010/07/30/gwt-compilation-performance/,它说这localWorkers 2
是内存使用和速度的理想设置。这样我的机器在编译过程中不会死机,速度差异很小。