view src/main/java/jp/ac/u_ryukyu/ie/cr/benchMark/index/CreateIndexBenchMark.java @ 308:201cc75a9984

change Red Black Tree Edit Path Extends
author tatsuki
date Thu, 26 Jan 2017 15:23:25 +0900
parents a23069461460
children d6b81870216b
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.benchMark.index;

import jp.ac.u_ryukyu.ie.cr.benchMark.JungleTreeCreater;
import jp.ac.u_ryukyu.ie.cr.jungle.DefaultJungle;
import jp.ac.u_ryukyu.ie.cr.jungle.Jungle;
import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.DefaultNodePath;
import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.NodePath;
import jp.ac.u_ryukyu.ie.cr.jungle.transaction.editor.jungleTreeEditor.JungleTreeEditor;
import jp.ac.u_ryukyu.ie.cr.jungle.tree.JungleTree;

/**
 * Created by e115731 on 2016/12/30.
 */
public class CreateIndexBenchMark {
    public static void main(String args[]) {
        if (args.length == 0) {
            System.out.println("args default or difference");
            System.exit(0);
        }
        if (args[0].equals("default")) {
            System.out.println("create default tree");
        }
        else {
            System.out.println("create red black tree");
        }

        String key = "key";
        String indexKey = "indexKey";
        Jungle jungle = new DefaultJungle(null, "hogehoge");

        for (int i = 100; i <= 100000;) {
            Long t1 = System.currentTimeMillis();
            JungleTree tree;
            if (args[0].equals("default")) {
                tree = jungle.createNewTree("Tree" + i);
            }
            else {
                tree = jungle.createNewRedBlackTree("Tree" + i, key);
            }
                JungleTreeEditor editor = tree.getJungleTreeEditor();
            NodePath path = new DefaultNodePath();
            int maxNodeCount = i;
            JungleTreeCreater creater = new JungleTreeCreater(maxNodeCount);
            editor = creater.createTree(editor, key, indexKey, path);
            Long t2 = System.currentTimeMillis();
            System.out.println((i) + " " + (t2 - t1));
            i = i + 100;
            System.gc(); //GCしないとクソみたいに重くなる
        }
    }
}