美文网首页
使用 Ideal Graph Visualizer 分析编译代码

使用 Ideal Graph Visualizer 分析编译代码

作者: Ethan_Walker | 来源:发表于2018-09-20 23:02 被阅读153次

1. 下载配置 Ideal Graph Visualizer

1.1 下载 Ideal Graph Visualizer

适用于windows 或者 linux

解压 igv_latest.zip 得到 idealgrapjvisualizer 文件夹


image.png
image.png

1.2 配置 jdk 路径

只能是JDK6或者7, 不支持JDK8,9,10

打开 etc 文件夹下的 idealgraphvisualizer.conf


image.png

找到文件内的 jdkhome ,配置其为自己电脑上的 jdk 安装路径,注意将该行的注释 # 去掉

image.png

1.3 启动 idealgraphvisualizer

image.png

启动程序如图所示


image.png

2. 生成编译本地代码的过程信息文件

文件代码示例:

public class CompilationDemo {
    public static final int NUM = 15000;

    public static int doubleValue(int i) {
        for (int j = 0; j < 100000; j++)
            ;
        return i * 2;
    }

    public static long calcSum() {
        long sum = 0;
        for (int i = 1; i <= 100; i++) {
            sum += doubleValue(i);
        }
        return sum;
    }

    public static void main(String[] a) {
        for(int i=0;i<NUM;i++) {
            calcSum();
        }
    }
}

进入 fastdebug 版本的 jdk bin目录下 ,将该文件复制到该目录下,

./javac CompilationDemo.java
./java -XX:PrintIdealGraphLevel=2 -XX:PrintIdealGraphFile=ideal.xml CompilationDemo

在当前目录生成 ideal.xml

3. 使用 Ideal Graph Visualizer 查看 ideal.xml 文件

image.png
image.png

相关文章

  • 使用 Ideal Graph Visualizer 分析编译代码

    1. 下载配置 Ideal Graph Visualizer 1.1 下载 Ideal Graph Visuali...

  • tf.graph visualizer

    在ipython notebook 中visualize tf.graphhttps://github.com/s...

  • Glide 源码分析解读-基于最新版Glide 4.9.0

    项目编译 项目基于最新版 Glide 4.9.0 源码分析,通过如下方式获取并编译代码: 代码量(使用 cloc ...

  • forEach in Java8

    Ideal 支持java 8 lambda,需要通过下面的设置:IntelliJ Idea编译报错:请使用 -so...

  • 有用的工具网站

    数学公式转图形坐标 在线反编译Java、APK Graph Visualization Software 支持使用...

  • OC 方法的本质

    探索 探索案例 使用clang命令把oc代码编译成c代码分析 clang -rewrite-objc main.m...

  • Flutter 前端编译器编译流程分析

    1. 前端编译器和后端编译器的区别 编译流程粗略分为词法分析、语法分析、类型检查、中间代码生成、代码优化、目标代码...

  • 第一章绪论

    编译过程和编译程序结构 五个阶段: 词法分析 语法分析 语义分析和中间代码生成 优化 目标代码生成 编译程序的开发...

  • 2 编译和链接

    第二章 编译和链接词法分析语法分析语义分析中间语言生成目标代码生成与优化链接器 第二章 编译和链接 平时我们使用的...

  • 使用facebook的infer检查Android代码缺陷

    背景 Infer 是一个静态分析工具,它能在 Android 和 iOS 的编译过程中今夕代码分析,发现缺陷。使用...

网友评论

      本文标题:使用 Ideal Graph Visualizer 分析编译代码

      本文链接:https://www.haomeiwen.com/subject/iyannftx.html