如何配置Native JNI库

时间:2013-02-07 13:37:31

标签: java c jvm java-native-interface profiling

如何配置用C编写的Java Native Interface库?

我知道通常的C分析器,但我的问题是如何分析 整个 集,包括对JVM方法的调用,这可能会减慢程序的速度

1 个答案:

答案 0 :(得分:4)

经过对此处提出的一些方法的一些研究和测试后,我最终使用了sprof

基本上我按照可用的说明in this answer进行操作。一些评论:

  1. 我必须将LD_PROFILE_OUTPUT留空以便在/var/tmp/中获得结果,否则不会生成输出文件。
  2. 我已分配LD_PROFILE=libXXXX.so
  3. 为了获取配置文件,我运行了加载和使用本机JNI库的Java代码,我得到了一个包含分析结果的文件:

    /var/tmp/libXXXX.so.profile

    获得文件后,您可以使用以下命令阅读:

    sprof /path/to/libXXXX.so /var/tmp/libXXXX.so.profile

    分析结果遵循与gprof相同的模板。 Here您可以找到内容及其含义的说明。