работает hprof от SBT - PullRequest
       21

работает hprof от SBT

11 голосов
/ 08 апреля 2011

Как мне запустить hprof из sbt?

Существуют ли различные параметры для профилирования процессора и кучи?

Ответы [ 2 ]

3 голосов
/ 21 мая 2011

Я предполагаю, что вы не хотите профилировать sbt, поэтому вам придется использовать механизм fork и комбинировать его с параметрами hprof :

override def fork = forkRun("-agentlib:hprof=heap=sites" :: Nil)

или

override def fork = Some(new ForkScalaRun { 
  override def runJVMOptions = super.runJVMOptions ++
    Seq("-Xmx1999m", "-agentlib:hprof=heap=sites") 
  override def scalaJars = Seq(buildLibraryJar.asFile, buildCompilerJar.asFile)
})

Вот несколько примеров вариантов (для получения справки используйте -agentlib:hprof=help):

Option Name and Value  Description                    Default
---------------------  -----------                    -------
heap=dump|sites|all    heap profiling                 all
cpu=samples|times|old  CPU usage                      off
0 голосов
/ 03 февраля 2016

Для полноты: если вы используете традиционный build.sbt, вы также можете использовать

fork in run := true

javaOptions in run += "-agentlib:hprof=heap=sites"
...