如何在Mac OS X 10.9上加速IntelliJ

时间:2014-02-03 06:01:49

标签: java macos intellij-idea

我在装甲机(7i处理器,16GB RAM,64位等)上使用Mac OSX 10.9和Intellij Idea 13。我的事情很好;然而,在我看来,Intellij运行速度很慢(启动约5分钟,编译系统打印线类几乎整整2分钟等)。作为参考框架,我查看了很多帖子,并着陆了下面的配置。我的问题是这个。有没有其他人使用类似的设置并让它运行得更快?如果是这样,您对环境进行了哪些修改以加快速度。提前感谢您的帮助。

Java版本:

从jdk1.6切换到jdk1.7

idea.vmoptions:

-ea
-server
-Xms1g
-Xmx1g
-Xss16m
-XX:PermSize=512m
-XX:MaxPermSize=512m
-XX:+DoEscapeAnalysis
-XX:+UseCompressedOops
-XX:+UnlockExperimentalVMOptions
-XX:+UseConcMarkSweepGC
-XX:LargePageSizeInBytes=256m
-XX:ReservedCodeCacheSize=96m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops
-XX:ParallelGCThreads=8
-XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:+DisableExplicitGC
-XX:+ExplicitGCInvokesConcurrent
-XX:+PrintGCDetails
-XX:+PrintFlagsFinal
-XX:+AggressiveOpts
-XX:+HeapDumpOnOutOfMemoryError
-XX:+CMSClassUnloadingEnabled
-XX:+CMSPermGenSweepingEnabled
-XX:CMSInitiatingOccupancyFraction=60
-XX:+CMSClassUnloadingEnabled
-XX:+CMSParallelRemarkEnabled
-XX:+UseAdaptiveGCBoundary
-XX:+UseSplitVerifier
-XX:CompileThreshold=10000
-XX:+UseCompressedStrings
-XX:+OptimizeStringConcat
-XX:+UseStringCache
-XX:+UseFastAccessorMethods
-XX:+UnlockDiagnosticVMOptions

info.plist(修改):

<key>LSArchitecturePriority</key>
<array>
  <string>x86_64</string>
</array>

  <key>JVMVersion</key>
  <string>1.7*</string>

2 个答案:

答案 0 :(得分:1)

我强烈建议您使用所有这些VM选项(尤其是那些控制垃圾收集器的选项),除非您实际测量它们将提高性能。 请按照https://intellij-support.jetbrains.com/entries/29983118-Reporting-performance-problems

中的说明报告可重现的性能问题

答案 1 :(得分:0)

这是独家新闻。有很多关于改变堆大小,垃圾收集器和其他东西的东西。它可能不是您问题的根本原因。请务必了解您在vmoptions文件中设置的内容,因为不再支持多项建议。我和IntelliJ的人们一起来回使用日志文件和什么不是,它归结为此。检查你的反病毒。调整我的防病毒后,以下设置有IntelliJ尖叫。请注意,这是我个人问题的原因;所以一定要检查你的日志文件,因为那是我开始寻找答案的地方。

JDK 1.6

.vmoptions正在/ Application / IntelliJ13 / bin中运行:

-Xms128m
-Xmx750m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=96m
-XX:+UseCompressedOops

*请注意,您不需要分配大量的系统资源。如果您正确设置了系统,则不需要它。

Idea.plist:

<key>LSArchitecturePriority</key>
<array>
  <string>x86_64</string>
  <string>i386</string>
</array>

<key>JVMVersion</key>
<string>1.6*</string>

我知道这很简单但有效。