diff --git a/vpr/src/base/read_place.cpp b/vpr/src/base/read_place.cpp index 7fbea78d68d..15ba6d69f11 100644 --- a/vpr/src/base/read_place.cpp +++ b/vpr/src/base/read_place.cpp @@ -1,6 +1,7 @@ #include #include #include +#include #include "vtr_assert.h" #include "vtr_util.h" @@ -15,10 +16,23 @@ #include "read_place.h" #include "read_xml_arch_file.h" -void read_place(const char* net_file, - const char* place_file, - bool verify_file_digests, - const DeviceGrid& grid) { +void read_place_header( + std::ifstream& placement_file, + const char* net_file, + const char* place_file, + bool verify_file_hashes, + const DeviceGrid& grid); + +void read_place_body( + std::ifstream& placement_file, + const char* place_file, + bool is_place_file); + +void read_place( + const char* net_file, + const char* place_file, + bool verify_file_digests, + const DeviceGrid& grid) { std::ifstream fstream(place_file); if (!fstream) { VPR_FATAL_ERROR(VPR_ERROR_PLACE_F, @@ -26,14 +40,58 @@ void read_place(const char* net_file, place_file); } + bool is_place_file = true; + + VTR_LOG("Reading %s.\n", place_file); + VTR_LOG("\n"); + + read_place_header(fstream, net_file, place_file, verify_file_digests, grid); + read_place_body(fstream, place_file, is_place_file); + + VTR_LOG("Successfully read %s.\n", place_file); + VTR_LOG("\n"); +} + +void read_constraints(const char* constraints_file) { + std::ifstream fstream(constraints_file); + if (!fstream) { + VPR_FATAL_ERROR(VPR_ERROR_PLACE_F, + "'%s' - Cannot open constraints file.\n", + constraints_file); + } + + bool is_place_file = false; + + VTR_LOG("Reading %s.\n", constraints_file); + VTR_LOG("\n"); + + read_place_body(fstream, constraints_file, is_place_file); + + VTR_LOG("Successfully read %s.\n", constraints_file); + VTR_LOG("\n"); +} + +/** + * This function reads the header (first two lines) of a placement file. + * The header consists of two lines that specify the netlist file and grid size that were used when generating placement. + * It checks whether the packed netlist file that generated the placement matches the current netlist file. + * It also checks whether the FPGA grid size has stayed the same from when the placement was generated. + * The verify_file_digests bool is used to decide whether to give a warning or an error if the netlist files do not match. + * An error is given if the grid size has changed. + */ +void read_place_header(std::ifstream& placement_file, + const char* net_file, + const char* place_file, + bool verify_file_digests, + const DeviceGrid& grid) { auto& cluster_ctx = g_vpr_ctx.clustering(); - auto& place_ctx = g_vpr_ctx.mutable_placement(); std::string line; int lineno = 0; bool seen_netlist_id = false; bool seen_grid_dimensions = false; - while (std::getline(fstream, line)) { //Parse line-by-line + + while (std::getline(placement_file, line) && (!seen_netlist_id || !seen_grid_dimensions)) { //Parse line-by-line ++lineno; std::vector tokens = vtr::split(line); @@ -84,11 +142,6 @@ void read_place(const char* net_file, && tokens[6] == "blocks") { //Load the device grid dimensions - if (seen_grid_dimensions) { - vpr_throw(VPR_ERROR_PLACE_F, place_file, lineno, - "Duplicate device grid dimensions specification"); - } - size_t place_file_width = vtr::atou(tokens[2]); size_t place_file_height = vtr::atou(tokens[4]); if (grid.width() != place_file_width || grid.height() != place_file_height) { @@ -99,192 +152,155 @@ void read_place(const char* net_file, seen_grid_dimensions = true; - } else if (tokens.size() == 4 || (tokens.size() == 5 && tokens[4][0] == '#')) { - //Load the block location - // - //We should have 4 tokens of actual data, with an optional 5th (commented) token indicating VPR's - //internal block number - - //Grid dimensions are required by this point - if (!seen_grid_dimensions) { - vpr_throw(VPR_ERROR_PLACE_F, place_file, lineno, - "Missing device grid size specification"); - } - - std::string block_name = tokens[0]; - int block_x = vtr::atoi(tokens[1]); - int block_y = vtr::atoi(tokens[2]); - int sub_tile_index = vtr::atoi(tokens[3]); - - ClusterBlockId blk_id = cluster_ctx.clb_nlist.find_block(block_name); - - if (place_ctx.block_locs.size() != cluster_ctx.clb_nlist.blocks().size()) { - //Resize if needed - place_ctx.block_locs.resize(cluster_ctx.clb_nlist.blocks().size()); - } - - //Set the location - place_ctx.block_locs[blk_id].loc.x = block_x; - place_ctx.block_locs[blk_id].loc.y = block_y; - place_ctx.block_locs[blk_id].loc.sub_tile = sub_tile_index; - } else { //Unrecognized vpr_throw(VPR_ERROR_PLACE_F, place_file, lineno, - "Invalid line '%s' in placement file", + "Invalid line '%s' in placement file header", line.c_str()); } } - - place_ctx.placement_id = vtr::secure_digest_file(place_file); } -/** Reads in blocks whose locations are specified in a constraints file. Constraint file is in .place format. - * All blocks specified in this file will be locked down at their specified x, y, subtile locations. - * (Will not be moved by optimizers during placement +/** + * This function reads either the body of a placement file or a constraints file. + * A constraints file is in the same format as a placement file, but without the first two header lines. + * If it is reading a place file it sets the x, y, and subtile locations of the blocks in the placement context. + * If it is reading a constraints file it does the same and also marks the blocks as locked and marks the grid usage. + * The bool is_place_file indicates if the file should be read as a place file (is_place_file = true) + * or a constraints file (is_place_file = false). */ -void read_user_block_loc(const char* constraints_file) { - t_hash **hash_table, *h_ptr; - int xtmp, ytmp; - FILE* fp; - char buf[vtr::bufsize], bname[vtr::bufsize], *ptr; - std::unordered_set constrained_blocks; - +void read_place_body(std::ifstream& placement_file, + const char* place_file, + bool is_place_file) { auto& cluster_ctx = g_vpr_ctx.clustering(); auto& device_ctx = g_vpr_ctx.device(); auto& place_ctx = g_vpr_ctx.mutable_placement(); + auto& atom_ctx = g_vpr_ctx.atom(); - VTR_LOG("\n"); - VTR_LOG("Reading locations of blocks from '%s'.\n", constraints_file); - fp = fopen(constraints_file, "r"); - if (!fp) VPR_FATAL_ERROR(VPR_ERROR_PLACE_F, - "'%s' - Cannot find block locations file.\n", - constraints_file); - - hash_table = alloc_hash_table(); - for (auto blk_id : cluster_ctx.clb_nlist.blocks()) { - insert_in_hash_table(hash_table, cluster_ctx.clb_nlist.block_name(blk_id).c_str(), size_t(blk_id)); - place_ctx.block_locs[blk_id].loc.x = OPEN; /* Mark as not seen yet. */ + std::string line; + int lineno = 0; + + if (place_ctx.block_locs.size() != cluster_ctx.clb_nlist.blocks().size()) { + //Resize if needed + place_ctx.block_locs.resize(cluster_ctx.clb_nlist.blocks().size()); } - for (size_t i = 0; i < device_ctx.grid.width(); i++) { - for (size_t j = 0; j < device_ctx.grid.height(); j++) { - auto type = device_ctx.grid[i][j].type; - if (!is_empty_type(type)) { - for (int k = 0; k < type->capacity; k++) { - if (place_ctx.grid_blocks[i][j].blocks[k] != INVALID_BLOCK_ID) { - place_ctx.grid_blocks[i][j].blocks[k] = EMPTY_BLOCK_ID; /* Flag for err. check */ - } - } - } - } + //used to count how many times a block has been seen in the place/constraints file so duplicate blocks can be detected + vtr::vector_map seen_blocks; + + //initialize seen_blocks + for (auto block_id : cluster_ctx.clb_nlist.blocks()) { + int seen_count = 0; + seen_blocks.insert(block_id, seen_count); } - ptr = vtr::fgets(buf, vtr::bufsize, fp); + while (std::getline(placement_file, line)) { //Parse line-by-line + ++lineno; - while (ptr != nullptr) { - ptr = vtr::strtok(buf, TOKENS, fp, buf); - if (ptr == nullptr) { - ptr = vtr::fgets(buf, vtr::bufsize, fp); - continue; /* Skip blank or comment lines. */ - } + std::vector tokens = vtr::split(line); - if (strlen(ptr) + 1 < vtr::bufsize) { - strcpy(bname, ptr); - } else { - vpr_throw(VPR_ERROR_PLACE_F, constraints_file, vtr::get_file_line_number_of_last_opened_file(), - "Block name exceeded buffer size of %zu characters", vtr::bufsize); - } + if (tokens.empty()) { + continue; //Skip blank lines - ptr = vtr::strtok(nullptr, TOKENS, fp, buf); - if (ptr == nullptr) { - vpr_throw(VPR_ERROR_PLACE_F, constraints_file, vtr::get_file_line_number_of_last_opened_file(), - "Incomplete.\n"); - } - sscanf(ptr, "%d", &xtmp); + } else if (tokens[0][0] == '#') { + continue; //Skip commented lines - ptr = vtr::strtok(nullptr, TOKENS, fp, buf); - if (ptr == nullptr) { - vpr_throw(VPR_ERROR_PLACE_F, constraints_file, vtr::get_file_line_number_of_last_opened_file(), - "Incomplete.\n"); - } - sscanf(ptr, "%d", &ytmp); + } else if (tokens.size() == 4 || (tokens.size() == 5 && tokens[4][0] == '#')) { + //Load the block location + // + //We should have 4 tokens of actual data, with an optional 5th (commented) token indicating VPR's + //internal block number - ptr = vtr::strtok(nullptr, TOKENS, fp, buf); - if (ptr == nullptr) { - vpr_throw(VPR_ERROR_PLACE_F, constraints_file, vtr::get_file_line_number_of_last_opened_file(), - "Incomplete.\n"); - } - int k; - sscanf(ptr, "%d", &k); + std::string block_name = tokens[0]; + int block_x = vtr::atoi(tokens[1]); + int block_y = vtr::atoi(tokens[2]); + int sub_tile_index = vtr::atoi(tokens[3]); - ptr = vtr::strtok(nullptr, TOKENS, fp, buf); - if (ptr != nullptr) { - vpr_throw(VPR_ERROR_PLACE_F, constraints_file, vtr::get_file_line_number_of_last_opened_file(), - "Extra characters at end of line.\n"); - } + //c-style block name needed for printing block name in error messages + char const* c_block_name = block_name.c_str(); - h_ptr = get_hash_entry(hash_table, bname); - if (h_ptr == nullptr) { - VTR_LOG_WARN("[Line %d] Block %s invalid, no such block.\n", - vtr::get_file_line_number_of_last_opened_file(), bname); - ptr = vtr::fgets(buf, vtr::bufsize, fp); - continue; - } - ClusterBlockId bnum(h_ptr->index); - int i = xtmp; - int j = ytmp; + ClusterBlockId blk_id = cluster_ctx.clb_nlist.find_block(block_name); - if (place_ctx.block_locs[bnum].loc.x != OPEN) { - VPR_THROW(VPR_ERROR_PLACE_F, constraints_file, vtr::get_file_line_number_of_last_opened_file(), - "Block %s is listed twice in constraints file.\n", bname); - } + //If block name is not found in cluster netlist check if it is in atom netlist + if (blk_id == ClusterBlockId::INVALID()) { + AtomBlockId atom_blk_id = atom_ctx.nlist.find_block(block_name); - if (i < 0 || i > int(device_ctx.grid.width() - 1) || j < 0 || j > int(device_ctx.grid.height() - 1)) { - VPR_THROW(VPR_ERROR_PLACE_F, constraints_file, 0, - "Block #%zu (%s) location, (%d,%d) is out of range.\n", size_t(bnum), bname, i, j); - } + if (atom_blk_id == AtomBlockId::INVALID()) { + VPR_THROW(VPR_ERROR_PLACE, "Block %s has an invalid name.\n", c_block_name); + } else { + blk_id = atom_ctx.lookup.atom_clb(atom_blk_id); //getting the ClusterBlockId of the cluster that the atom is in + } + } - place_ctx.block_locs[bnum].loc.x = i; /* Will be reloaded by initial_placement anyway. */ - place_ctx.block_locs[bnum].loc.y = j; /* We need to set .x only as a done flag. */ - place_ctx.block_locs[bnum].loc.sub_tile = k; - place_ctx.block_locs[bnum].is_fixed = true; + //Check if block is listed multiple times with conflicting locations in constraints file + if (seen_blocks[blk_id] > 0) { + if (block_x != place_ctx.block_locs[blk_id].loc.x || block_y != place_ctx.block_locs[blk_id].loc.y || sub_tile_index != place_ctx.block_locs[blk_id].loc.sub_tile) { + VPR_THROW(VPR_ERROR_PLACE, + "The location of cluster %d is specified %d times in the constraints file with conflicting locations. \n" + "Its location was last specified with block %s. \n", + blk_id, seen_blocks[blk_id] + 1, c_block_name); + } + } - auto physical_tile = device_ctx.grid[i][j].type; - auto logical_block = cluster_ctx.clb_nlist.block_type(bnum); - if (!is_sub_tile_compatible(physical_tile, logical_block, place_ctx.block_locs[bnum].loc.sub_tile)) { - VPR_THROW(VPR_ERROR_PLACE_F, constraints_file, 0, - "Attempt to place block %s at illegal location (%d, %d).\n", bname, i, j); - } + //Check if block location is out of range of grid dimensions + if (block_x < 0 || block_x > int(device_ctx.grid.width() - 1) + || block_y < 0 || block_y > int(device_ctx.grid.height() - 1)) { + VPR_THROW(VPR_ERROR_PLACE, "Block %s with ID %d is out of range at location (%d, %d). \n", c_block_name, blk_id, block_x, block_y); + } - if (k >= physical_tile->capacity || k < 0) { - VPR_THROW(VPR_ERROR_PLACE_F, constraints_file, vtr::get_file_line_number_of_last_opened_file(), - "Block %s subtile number (%d) is out of range.\n", bname, k); - } - place_ctx.grid_blocks[i][j].blocks[k] = bnum; - place_ctx.grid_blocks[i][j].usage++; + //Set the location + place_ctx.block_locs[blk_id].loc.x = block_x; + place_ctx.block_locs[blk_id].loc.y = block_y; + place_ctx.block_locs[blk_id].loc.sub_tile = sub_tile_index; - constrained_blocks.insert(bnum); + //Check if block is at an illegal location - ptr = vtr::fgets(buf, vtr::bufsize, fp); - } + auto physical_tile = device_ctx.grid[block_x][block_y].type; + auto logical_block = cluster_ctx.clb_nlist.block_type(blk_id); + + if (sub_tile_index >= physical_tile->capacity || sub_tile_index < 0) { + VPR_THROW(VPR_ERROR_PLACE, "Block %s subtile number (%d) is out of range. \n", c_block_name, sub_tile_index); + } + + if (!is_sub_tile_compatible(physical_tile, logical_block, place_ctx.block_locs[blk_id].loc.sub_tile)) { + VPR_THROW(VPR_ERROR_PLACE, "Attempt to place block %s with ID %d at illegal location (%d, %d). \n", c_block_name, blk_id, block_x, block_y); + } - for (auto blk_id : cluster_ctx.clb_nlist.blocks()) { - auto result = constrained_blocks.find(blk_id); - if (result == constrained_blocks.end()) { - continue; + //need to lock down blocks and mark grid block usage if it is a constraints file + //for a place file, grid usage is marked during initial placement instead + if (!is_place_file) { + place_ctx.block_locs[blk_id].is_fixed = true; + place_ctx.grid_blocks[block_x][block_y].blocks[sub_tile_index] = blk_id; + if (seen_blocks[blk_id] == 0) { + place_ctx.grid_blocks[block_x][block_y].usage++; + } + } + + //mark the block as seen + seen_blocks[blk_id]++; + + } else { + //Unrecognized + vpr_throw(VPR_ERROR_PLACE_F, place_file, lineno, + "Invalid line '%s' in file", + line.c_str()); } + } - if (place_ctx.block_locs[blk_id].loc.x == OPEN) { - VPR_THROW(VPR_ERROR_PLACE_F, constraints_file, 0, - "Block %s location was not specified in the constraints file.\n", cluster_ctx.clb_nlist.block_name(blk_id).c_str()); + //For place files, check that all blocks have been read + //For constraints files, not all blocks need to be read + if (is_place_file) { + for (auto block_id : cluster_ctx.clb_nlist.blocks()) { + if (seen_blocks[block_id] == 0) { + VPR_THROW(VPR_ERROR_PLACE, "Block %d has not been read from the place file. \n", block_id); + } } } - fclose(fp); - free_hash_table(hash_table); - VTR_LOG("Successfully read %s.\n", constraints_file); - VTR_LOG("\n"); + //Want to make a hash for place file to be used during routing for error checking + if (is_place_file) { + place_ctx.placement_id = vtr::secure_digest_file(place_file); + } } /** diff --git a/vpr/src/base/read_place.h b/vpr/src/base/read_place.h index 20788b48c68..36740a5dc5d 100644 --- a/vpr/src/base/read_place.h +++ b/vpr/src/base/read_place.h @@ -1,16 +1,24 @@ #ifndef READ_PLACE_H #define READ_PLACE_H +/** + * This function is for reading a place file when placement is skipped. + * It takes in the current netlist file and grid dimensions to check that they match those that were used when placement was generated. + * The verify_file_hashes bool is used to decide whether to give a warning or an error if the netlist files do not match. + */ void read_place( const char* net_file, const char* place_file, bool verify_file_hashes, const DeviceGrid& grid); +/** + * This function is used to read a constraints file that specifies the desired locations of blocks. + */ +void read_constraints(const char* constraints_file); + void print_place(const char* net_file, const char* net_id, const char* place_file); -void read_user_block_loc(const char* constraints_file); - #endif diff --git a/vpr/src/place/initial_placement.cpp b/vpr/src/place/initial_placement.cpp index 1cfbb80710f..44ff26db452 100644 --- a/vpr/src/place/initial_placement.cpp +++ b/vpr/src/place/initial_placement.cpp @@ -449,9 +449,9 @@ void initial_placement(enum e_pad_loc_type pad_loc_type, const char* constraints place_ctx.block_locs[blk_id].loc = t_pl_loc(); } - /*Check whether the constraint file is NULL, if it is not read in the block locations from the constraints file here*/ + /*Check whether the constraint file is NULL, if not, read in the block locations from the constraints file here*/ if (strlen(constraints_file) != 0) { - read_user_block_loc(constraints_file); + read_constraints(constraints_file); } initial_placement_pl_macros(MAX_NUM_TRIES_TO_PLACE_MACROS_RANDOMLY, free_locations); diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/config/golden_results.txt index 930fdf7de86..5809e931f1f 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/config/golden_results.txt @@ -1,22 +1,22 @@ -arch circuit script_params vtr_flow_elapsed_time error odin_synth_time max_odin_mem abc_depth abc_synth_time abc_cec_time abc_sec_time max_abc_mem ace_time max_ace_mem num_clb num_io num_memories num_mult vpr_revision vpr_status hostname rundir max_vpr_mem num_primary_inputs num_primary_outputs num_pre_packed_nets num_pre_packed_blocks num_netlist_clocks num_post_packed_nets num_post_packed_blocks device_width device_height device_grid_tiles device_limiting_resources device_name pack_time placed_wirelength_est place_time placed_CPD_est placed_setup_TNS_est placed_setup_WNS_est min_chan_width routed_wirelength min_chan_width_route_success_iteration logic_block_area_total logic_block_area_used min_chan_width_routing_area_total min_chan_width_routing_area_per_tile min_chan_width_route_time crit_path_routed_wirelength crit_path_route_success_iteration crit_path_total_nets_routed crit_path_total_connections_routed crit_path_total_heap_pushes crit_path_total_heap_pops critical_path_delay geomean_nonvirtual_intradomain_critical_path_delay setup_TNS setup_WNS hold_TNS hold_WNS crit_path_routing_area_total crit_path_routing_area_per_tile crit_path_route_time -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml arm_core.v common 453.54 1.16 135300 18 70.81 -1 -1 69052 -1 -1 861 133 40 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/arm_core.v/common 365824 133 179 18548 18330 1 9095 1213 44 44 1936 memory auto 12.01 149349 29.67 18.0913 -263225 -18.0913 150 253912 39 1.12988e+08 6.8324e+07 1.92078e+07 9921.39 277.40 231613 19 40024 158477 52076170 12218573 19.8912 19.8912 -292770 -19.8912 0 0 2.42606e+07 12531.3 14.03 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml bgm.v common 654.84 10.65 381852 14 234.06 -1 -1 143212 -1 -1 2323 257 0 11 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/bgm.v/common 740400 257 32 36582 33970 1 18948 2623 58 58 3364 clb auto 35.29 238277 125.57 17.5106 -23294.4 -17.5106 112 488447 49 2.00088e+08 1.29555e+08 2.63593e+07 7835.69 187.36 447826 21 100001 474354 42685708 7886876 20.1445 20.1445 -26283.9 -20.1445 0 0 3.33056e+07 9900.58 16.34 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml blob_merge.v common 120.04 0.38 52004 5 43.45 -1 -1 59524 -1 -1 539 36 0 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/blob_merge.v/common 186840 36 100 14037 11284 1 3701 675 29 29 841 clb auto 9.13 45947 10.73 12.9709 -2484.12 -12.9709 94 102353 45 4.4999e+07 2.90489e+07 5.36287e+06 6376.78 43.81 87306 18 16436 73621 5911152 1024706 14.8766 14.8766 -3012.92 -14.8766 0 0 6.71957e+06 7989.97 2.41 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml boundtop.v common 6.54 0.44 42472 3 0.41 -1 -1 37904 -1 -1 91 142 0 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/boundtop.v/common 46728 142 192 1071 1141 1 540 425 14 14 196 clb auto 0.43 1566 0.94 2.91405 -427.491 -2.91405 40 4255 39 9.20055e+06 4.90435e+06 529800. 2703.06 2.11 3756 16 1366 2318 154184 44967 3.59762 3.59762 -540.981 -3.59762 0 0 662635. 3380.79 0.09 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml ch_intrinsics.v common 3.06 0.05 8812 3 0.22 -1 -1 36192 -1 -1 64 99 1 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/ch_intrinsics.v/common 37292 99 130 363 493 1 261 294 12 12 144 clb auto 0.11 682 0.47 2.33331 -212.667 -2.33331 50 1768 19 5.66058e+06 3.99722e+06 437812. 3040.36 1.22 1504 11 639 829 72242 25120 2.93704 2.93704 -249.119 -2.93704 0 0 582970. 4048.40 0.03 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml diffeq1.v common 8.88 0.03 8484 6 0.14 -1 -1 33780 -1 -1 26 162 0 5 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/diffeq1.v/common 51316 162 96 1075 884 1 667 289 16 16 256 mult_36 auto 0.32 5047 1.04 15.3513 -1247.84 -15.3513 62 11348 34 1.21132e+07 3.38124e+06 1.04918e+06 4098.38 5.55 9505 20 3230 5616 1728761 426791 17.2088 17.2088 -1473.67 -17.2088 0 0 1.29183e+06 5046.22 0.32 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml diffeq2.v common 14.29 0.02 7872 6 0.09 -1 -1 33336 -1 -1 17 66 0 7 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/diffeq2.v/common 52292 66 96 866 607 1 533 186 18 18 324 mult_36 auto 0.22 4575 1.10 12.0529 -696.379 -12.0529 46 12333 33 1.57076e+07 3.6882e+06 1.03098e+06 3182.05 10.66 10456 30 4329 9619 3876425 911938 13.7565 13.7565 -880.553 -13.7565 0 0 1.32806e+06 4098.94 0.58 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml LU8PEEng.v common 559.55 8.36 219948 101 85.74 -1 -1 104092 -1 -1 1836 114 44 8 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/LU8PEEng.v/common 668656 114 102 38222 33863 1 17361 2104 52 52 2704 clb auto 48.15 222110 102.21 65.4503 -54133.7 -65.4503 126 409622 43 1.58905e+08 1.26232e+08 2.31921e+07 8576.97 252.62 376912 26 82851 330757 67257256 14848035 74.25 74.25 -73258.9 -74.25 -10.8973 -0.29436 2.92176e+07 10805.3 22.88 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml LU32PEEng.v common 3754.80 75.24 774592 97 853.35 -1 -1 319256 -1 -1 6243 114 167 32 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/LU32PEEng.v/common 2192636 114 102 124854 111149 1 58382 6658 94 94 8836 clb auto 148.45 1001543 675.35 62.3056 -305102 -62.3056 166 1616027 42 5.40921e+08 4.40619e+08 9.94454e+07 11254.6 1751.59 1521201 25 243603 1051871 269506812 65185740 75.0191 75.0191 -453035 -75.0191 -27.2061 -0.293253 1.26268e+08 14290.2 96.62 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mcml.v common 5668.02 25.38 873988 24 3271.01 -1 -1 372928 -1 -1 6718 36 159 27 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mcml.v/common 2466532 36 33 190959 166678 1 60852 6973 97 97 9409 clb auto 166.45 720293 1006.54 42.481 -264118 -42.481 156 1126308 36 5.71422e+08 4.59852e+08 9.95912e+07 10584.7 982.08 1067248 20 262139 704718 144723255 32251249 45.6742 45.6742 -339470 -45.6742 -0.936749 -0.167039 1.25613e+08 13350.3 51.34 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mkDelayWorker32B.v common 63.78 0.69 77324 5 6.27 -1 -1 53220 -1 -1 461 506 44 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mkDelayWorker32B.v/common 346048 506 553 3647 4145 1 3223 1564 50 50 2500 memory auto 3.21 13234 26.21 6.90242 -1505.71 -6.90242 40 20207 15 1.47946e+08 4.89577e+07 7.85310e+06 3141.24 13.46 19271 15 3394 3725 2728861 722501 8.03324 8.03324 -1959.82 -8.03324 -2.28155 -0.21509 9.77405e+06 3909.62 0.92 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mkPktMerge.v common 19.76 0.10 16384 2 0.07 -1 -1 34252 -1 -1 25 311 15 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mkPktMerge.v/common 76800 311 156 1019 1160 1 954 507 28 28 784 memory auto 0.45 8243 2.79 3.86432 -4214.87 -3.86432 40 15667 24 4.25198e+07 9.56735e+06 2.32339e+06 2963.51 12.11 14077 18 3736 4048 3251261 950277 4.01313 4.01313 -5000.91 -4.01313 -21.8082 -0.360359 2.89875e+06 3697.39 0.62 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mkSMAdapter4B.v common 32.26 0.24 30828 4 1.66 -1 -1 39828 -1 -1 167 193 5 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mkSMAdapter4B.v/common 79532 193 205 2926 2852 1 1371 570 20 20 400 memory auto 1.38 10454 2.79 4.17962 -2464.62 -4.17962 80 20576 38 2.07112e+07 1.17403e+07 2.10510e+06 5262.74 22.34 18693 16 5010 14283 1459244 324974 4.84767 4.84767 -2845.86 -4.84767 -12.6591 -0.360359 2.64606e+06 6615.15 0.55 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml or1200.v common 57.79 0.36 40572 8 4.29 -1 -1 43724 -1 -1 198 385 2 1 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/or1200.v/common 121164 385 394 4676 4540 1 2380 980 27 27 729 io auto 3.61 30041 6.71 8.18645 -9050.85 -8.18645 116 55300 35 3.93038e+07 1.2163e+07 5.58964e+06 7667.54 34.67 50149 19 11540 41381 5187884 973316 8.40059 8.40059 -9954.05 -8.40059 0 0 7.00989e+06 9615.76 1.40 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml raygentop.v common 15.80 0.27 30548 3 1.06 -1 -1 40388 -1 -1 100 214 0 8 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/raygentop.v/common 73164 214 305 2964 2870 1 1451 627 19 19 361 io auto 1.28 10755 2.38 4.37602 -2492.44 -4.37602 66 25030 33 1.72706e+07 8.5574e+06 1.65962e+06 4597.28 7.05 21557 18 6240 15039 3702905 854796 4.89746 4.89746 -3048.2 -4.89746 0 0 2.03732e+06 5643.53 0.70 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml sha.v common 265.71 0.64 36380 3 251.21 -1 -1 91660 -1 -1 138 38 0 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/sha.v/common 69024 38 36 2995 2744 1 1210 212 16 16 256 clb auto 1.42 11014 1.95 8.82527 -2309.18 -8.82527 78 22913 37 1.21132e+07 7.43737e+06 1.26536e+06 4942.82 5.14 19405 19 5377 18048 1100353 243120 10.5641 10.5641 -2880.19 -10.5641 0 0 1.59670e+06 6237.09 0.44 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml spree.v common 16.61 0.13 19756 15 0.65 -1 -1 35168 -1 -1 51 45 3 1 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/spree.v/common 54316 45 32 1272 1229 1 812 132 14 14 196 memory auto 0.73 6327 0.99 9.47187 -6313.2 -9.47187 76 16188 46 9.20055e+06 4.78859e+06 943410. 4813.31 11.92 13315 16 4126 11740 2757438 683647 11.2957 11.2957 -7681.61 -11.2957 -25.3409 -0.316352 1.17525e+06 5996.19 0.47 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision0.v common 77.38 1.25 114908 5 9.90 -1 -1 71184 -1 -1 676 157 0 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision0.v/common 271668 157 197 23836 21789 1 6681 1030 33 33 1089 clb auto 5.97 40030 14.42 2.92413 -13198.7 -2.92413 64 69472 30 6.0475e+07 3.64324e+07 5.14656e+06 4725.95 31.14 63458 14 19436 33117 2077129 481916 3.62478 3.62478 -16135 -3.62478 0 0 6.36035e+06 5840.54 1.59 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision1.v common 185.83 1.07 95908 3 43.53 -1 -1 84788 -1 -1 643 115 0 40 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision1.v/common 355404 115 145 23136 19549 1 9701 943 40 40 1600 mult_36 auto 5.49 77785 15.45 4.93288 -21564 -4.93288 92 142135 38 9.16046e+07 5.04945e+07 1.03006e+07 6437.88 97.42 123805 19 37802 61398 23608962 4988966 5.19066 5.19066 -25695.7 -5.19066 0 0 1.30125e+07 8132.82 5.12 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision2.v common 545.72 1.46 147612 3 8.01 -1 -1 202252 -1 -1 1647 149 0 324 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision2.v/common 1586512 149 182 65737 42630 1 35972 2302 104 104 10816 mult_36 auto 24.41 361932 199.02 16.2807 -63997.3 -16.2807 86 512444 31 6.67561e+08 2.17062e+08 6.86328e+07 6345.49 202.17 482918 37 114366 137997 47073565 10003764 18.024 18.024 -77732.4 -18.024 0 0 8.62810e+07 7977.16 21.83 -k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision3.v common 1.53 0.05 9264 5 0.11 -1 -1 33404 -1 -1 15 11 0 0 v8.0.0-1603-g6c2a712a0 success betzgrp-wintermute.eecg.utoronto.ca /home/kmurray/trees/vtr3/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run003/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision3.v/common 32692 11 30 313 321 2 110 56 7 7 49 clb auto 0.14 386 0.12 2.41345 -150.754 -2.41345 32 1237 30 1.07788e+06 808410 87844.5 1792.75 0.24 927 19 657 1950 80232 29730 3.00356 2.30003 -184.587 -3.00356 0 0 106806. 2179.72 0.04 +arch circuit script_params vtr_flow_elapsed_time error odin_synth_time max_odin_mem abc_depth abc_synth_time abc_cec_time abc_sec_time max_abc_mem ace_time max_ace_mem num_clb num_io num_memories num_mult vpr_status vpr_revision vpr_build_info vpr_compiler vpr_compiled hostname rundir max_vpr_mem num_primary_inputs num_primary_outputs num_pre_packed_nets num_pre_packed_blocks num_netlist_clocks num_post_packed_nets num_post_packed_blocks device_width device_height device_grid_tiles device_limiting_resources device_name pack_time placed_wirelength_est place_time place_quench_time placed_CPD_est placed_setup_TNS_est placed_setup_WNS_est placed_geomean_nonvirtual_intradomain_critical_path_delay_est place_quench_timing_analysis_time place_quench_sta_time place_total_timing_analysis_time place_total_sta_time min_chan_width routed_wirelength min_chan_width_route_success_iteration logic_block_area_total logic_block_area_used min_chan_width_routing_area_total min_chan_width_routing_area_per_tile min_chan_width_route_time min_chan_width_total_timing_analysis_time min_chan_width_total_sta_time crit_path_routed_wirelength crit_path_route_success_iteration crit_path_total_nets_routed crit_path_total_connections_routed crit_path_total_heap_pushes crit_path_total_heap_pops critical_path_delay geomean_nonvirtual_intradomain_critical_path_delay setup_TNS setup_WNS hold_TNS hold_WNS crit_path_routing_area_total crit_path_routing_area_per_tile crit_path_route_time crit_path_total_timing_analysis_time crit_path_total_sta_time +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml arm_core.v common 442.21 1.12 136440 17 73.31 -1 -1 68984 -1 -1 849 133 40 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/arm_core.v/common 431016 133 179 18384 18166 1 8856 1201 44 44 1936 memory auto 11.62 144298 27.59 0.14 17.1455 -235333 -17.1455 17.1455 0.0323461 0.0261106 5.38015 3.82461 154 240250 31 1.12988e+08 6.76773e+07 1.95990e+07 10123.5 267.63 26.2269 20.405 224002 15 38214 151737 63530015 16143942 19.0472 19.0472 -271509 -19.0472 0 0 2.47081e+07 12762.5 14.50 1.88962 1.62235 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml bgm.v common 591.74 10.12 382708 14 217.08 -1 -1 149584 -1 -1 2323 257 0 11 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/bgm.v/common 658984 257 32 36582 33970 1 18948 2623 58 58 3364 clb auto 33.81 244133 102.99 0.46 17.11 -23657.3 -17.11 17.11 0.057677 0.0486978 8.81376 6.21496 110 504349 46 2.00088e+08 1.29555e+08 2.59253e+07 7706.69 170.32 34.0132 25.9571 460328 22 103139 485605 43469266 7793704 19.6237 19.6237 -26536.7 -19.6237 0 0 3.29019e+07 9780.58 12.75 4.71595 4.01074 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml blob_merge.v common 109.62 0.37 52264 5 35.35 -1 -1 59360 -1 -1 539 36 0 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/blob_merge.v/common 186396 36 100 14037 11284 1 3701 675 29 29 841 clb auto 8.79 45678 9.53 0.04 12.6096 -2618.54 -12.6096 12.6096 0.0113351 0.0094817 2.12624 1.53556 98 95540 35 4.4999e+07 2.90489e+07 5.54665e+06 6595.30 44.11 9.28917 7.25337 84875 17 15625 69764 5225217 927180 14.4068 14.4068 -3103.1 -14.4068 0 0 6.99642e+06 8319.17 1.68 0.840391 0.723959 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml boundtop.v common 6.09 0.43 42960 3 0.40 -1 -1 37268 -1 -1 90 142 0 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/boundtop.v/common 44452 142 192 1071 1141 1 542 424 14 14 196 clb auto 0.41 1593 0.89 0.00 2.91405 -451.846 -2.91405 2.91405 0.00101101 0.000884252 0.146714 0.127671 42 4296 16 9.20055e+06 4.85046e+06 549384. 2802.98 1.87 0.454353 0.403565 3665 12 1336 2232 132598 38096 3.69263 3.69263 -557.677 -3.69263 0 0 687525. 3507.78 0.07 0.0491475 0.0461066 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml ch_intrinsics.v common 2.33 0.04 8884 3 0.18 -1 -1 36212 -1 -1 64 99 1 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/ch_intrinsics.v/common 36212 99 130 363 493 1 261 294 12 12 144 clb auto 0.10 682 0.48 0.00 2.33331 -212.667 -2.33331 2.33331 0.000406542 0.000352202 0.0563525 0.0486617 50 1768 19 5.66058e+06 3.99722e+06 437812. 3040.36 0.50 0.151 0.134073 1566 10 655 902 74717 26668 2.93372 2.93372 -251.551 -2.93372 0 0 563015. 3909.82 0.03 0.0159193 0.0148549 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml diffeq1.v common 8.49 0.04 8660 6 0.14 -1 -1 34204 -1 -1 26 162 0 5 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/diffeq1.v/common 47692 162 96 1075 884 1 667 289 16 16 256 mult_36 auto 0.31 5047 1.01 0.00 15.3513 -1247.84 -15.3513 15.3513 0.00132103 0.0011904 0.19284 0.17127 62 11547 32 1.21132e+07 3.38124e+06 1.04918e+06 4098.38 5.22 0.572727 0.517613 9626 17 3133 5396 1717551 425285 17.2066 17.2066 -1410.74 -17.2066 0 0 1.29183e+06 5046.22 0.27 0.0725879 0.0673629 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml diffeq2.v common 10.64 0.03 7800 6 0.08 -1 -1 33184 -1 -1 16 66 0 7 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/diffeq2.v/common 46388 66 96 866 607 1 533 185 18 18 324 mult_36 auto 0.21 4658 1.00 0.00 11.9684 -719.49 -11.9684 11.9684 0.00116332 0.00106453 0.169446 0.152962 44 12915 43 1.57076e+07 3.6343e+06 986312. 3044.17 6.92 0.547172 0.499313 10180 32 4865 11032 5552683 1356605 13.1628 13.1628 -877.914 -13.1628 0 0 1.28386e+06 3962.53 0.80 0.096352 0.0899314 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml LU8PEEng.v common 453.60 6.07 221464 101 79.81 -1 -1 104520 -1 -1 1836 114 44 8 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/LU8PEEng.v/common 591064 114 102 38222 33863 1 17360 2104 52 52 2704 clb auto 45.84 229004 87.24 0.40 67.9026 -54269.4 -67.9026 67.9026 0.0719911 0.0503029 9.54634 6.50838 126 415246 33 1.58905e+08 1.26232e+08 2.31921e+07 8576.97 178.41 31.2701 23.2297 379696 25 81363 325329 64298039 14304516 77.3527 77.3527 -71152.1 -77.3527 -27.8778 -0.29768 2.92176e+07 10805.3 17.95 4.89735 3.99366 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml LU32PEEng.v common 3730.95 72.49 779676 97 770.88 -1 -1 312448 -1 -1 6267 114 167 32 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/LU32PEEng.v/common 2298440 114 102 124854 111149 1 58464 6682 94 94 8836 clb auto 144.61 1029329 691.08 3.71 63.0183 -309273 -63.0183 63.0183 0.237526 0.19474 36.6435 26.5947 174 1598484 49 5.40921e+08 4.41912e+08 1.04315e+08 11805.7 1814.87 203.371 154.542 1520697 23 244038 1050549 269858640 63117682 75.3008 75.3008 -465620 -75.3008 -33.8378 -0.293253 1.30927e+08 14817.5 81.83 17.7798 14.5925 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mcml.v common 4763.84 20.22 882420 24 2983.00 -1 -1 371164 -1 -1 6717 36 159 27 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mcml.v/common 2091512 36 33 190959 166678 1 60843 6972 97 97 9409 clb auto 163.22 759287 833.62 3.60 40.8755 -252978 -40.8755 40.8755 0.226052 0.189513 41.9492 30.2235 148 1148976 45 5.71422e+08 4.59798e+08 9.55773e+07 10158.1 553.72 140.537 107.73 1064585 21 271267 728690 140377169 30800260 43.5007 43.5007 -346970 -43.5007 -0.307278 -0.032617 1.20317e+08 12787.4 45.01 15.1689 12.8577 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mkDelayWorker32B.v common 62.30 0.72 77912 5 5.93 -1 -1 52764 -1 -1 461 506 44 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mkDelayWorker32B.v/common 345244 506 553 3647 4145 1 3223 1564 50 50 2500 memory auto 3.05 13410 25.83 0.03 6.90242 -1505.71 -6.90242 6.90242 0.0106089 0.00957085 1.64435 1.4671 40 20238 15 1.47946e+08 4.89577e+07 7.85310e+06 3141.24 12.75 4.27355 3.9093 19258 15 3391 3722 2737451 724296 8.03324 8.03324 -1962.37 -8.03324 -2.28155 -0.21509 9.77405e+06 3909.62 0.97 0.584744 0.550294 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mkPktMerge.v common 11.38 0.10 16520 2 0.08 -1 -1 33920 -1 -1 25 311 15 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mkPktMerge.v/common 75228 311 156 1019 1160 1 954 507 28 28 784 memory auto 0.43 7934 2.62 0.01 4.43635 -4453.24 -4.43635 4.43635 0.00220387 0.00186379 0.319519 0.266069 40 14789 18 4.25198e+07 9.56735e+06 2.32339e+06 2963.51 4.34 0.902194 0.781088 13524 14 2941 3229 2035757 531120 4.73543 4.73543 -5130.5 -4.73543 -16.3596 -0.360359 2.89875e+06 3697.39 0.37 0.10016 0.0914877 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml mkSMAdapter4B.v common 18.45 0.24 31284 4 1.65 -1 -1 37876 -1 -1 167 193 5 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/mkSMAdapter4B.v/common 69312 193 205 2926 2852 1 1371 570 20 20 400 memory auto 1.30 10767 2.75 0.01 4.38764 -2424.87 -4.38764 4.38764 0.00323029 0.00264067 0.53184 0.42022 76 21689 42 2.07112e+07 1.17403e+07 2.02110e+06 5052.76 8.92 1.85245 1.57376 20197 17 5498 15422 1697659 365914 4.80242 4.80242 -2890.94 -4.80242 -6.70715 -0.340786 2.51807e+06 6295.18 0.44 0.209543 0.191246 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml or1200.v common 58.78 0.40 41196 8 4.33 -1 -1 43372 -1 -1 198 385 2 1 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/or1200.v/common 135764 385 394 4676 4540 1 2380 980 27 27 729 io auto 3.50 30145 6.29 0.03 8.19064 -9253.52 -8.19064 8.19064 0.00684422 0.00602994 1.09114 0.896132 120 53439 36 3.93038e+07 1.2163e+07 5.78460e+06 7934.99 36.55 4.74696 4.15675 49301 16 11044 39422 4686944 866984 8.63783 8.63783 -10222.4 -8.63783 0 0 7.22111e+06 9905.50 1.09 0.411397 0.378937 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml raygentop.v common 16.22 0.26 30632 3 1.04 -1 -1 40132 -1 -1 101 214 0 8 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/raygentop.v/common 67084 214 305 2964 2870 1 1459 628 19 19 361 io auto 1.23 10783 2.45 0.01 4.32657 -2517.38 -4.32657 4.32657 0.00312465 0.00270502 0.477028 0.40617 64 25579 50 1.72706e+07 8.61129e+06 1.60702e+06 4451.57 7.57 1.57306 1.37197 22380 23 7257 16658 4445222 1015727 5.15788 5.15788 -3106.7 -5.15788 0 0 1.98721e+06 5504.73 0.76 0.218325 0.200636 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml sha.v common 232.93 0.65 36496 3 218.73 -1 -1 95096 -1 -1 138 38 0 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/sha.v/common 64908 38 36 2995 2744 1 1208 212 16 16 256 clb auto 1.40 11403 1.86 0.01 8.88055 -2441.58 -8.88055 8.88055 0.00257811 0.00211133 0.417409 0.319389 78 24227 42 1.21132e+07 7.43737e+06 1.26536e+06 4942.82 5.07 1.34662 1.07394 19637 18 5483 18058 1092914 240259 10.405 10.405 -3104.77 -10.405 0 0 1.59670e+06 6237.09 0.35 0.196057 0.175713 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml spree.v common 12.85 0.18 20116 15 0.66 -1 -1 35688 -1 -1 50 45 3 1 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/spree.v/common 60508 45 32 1272 1229 1 813 131 14 14 196 memory auto 0.70 6133 0.95 0.00 9.54357 -6247.24 -9.54357 9.54357 0.00142364 0.00116923 0.245421 0.195914 98 14014 31 9.20055e+06 4.7347e+06 1.17525e+06 5996.19 8.24 0.928415 0.772579 11590 14 3643 10452 1585971 416230 10.6714 10.6714 -7103.94 -10.6714 -62.1534 -0.340786 1.48363e+06 7569.53 0.28 0.09782 0.0896197 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision0.v common 53.41 1.22 115784 5 7.85 -1 -1 71060 -1 -1 676 157 0 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision0.v/common 239816 157 197 23836 21789 1 6681 1030 33 33 1089 clb auto 5.61 41800 9.88 0.05 2.86181 -13267.2 -2.86181 2.86181 0.0145867 0.0117097 2.36256 1.75821 64 70626 23 6.0475e+07 3.64324e+07 5.14656e+06 4725.95 14.72 7.20077 5.71024 65672 16 19447 32380 2210504 494795 3.54549 3.54549 -16163.9 -3.54549 0 0 6.36035e+06 5840.54 1.35 1.11582 1.00258 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision1.v common 149.40 1.20 96636 3 35.52 -1 -1 84676 -1 -1 642 115 0 40 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision1.v/common 318604 115 145 23136 19549 1 9720 942 40 40 1600 mult_36 auto 5.08 79024 13.74 0.06 4.95134 -21778.6 -4.95134 4.95134 0.0172501 0.0120408 2.7136 1.9443 98 136828 30 9.16046e+07 5.04406e+07 1.08598e+07 6787.37 71.60 10.2019 8.09264 120442 17 33041 52866 23006151 4683042 5.62934 5.62934 -25350.6 -5.62934 0 0 1.36941e+07 8558.84 4.47 1.19209 1.07171 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision2.v common 541.66 1.46 148724 3 7.22 -1 -1 202148 -1 -1 1647 149 0 324 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision2.v/common 1592904 149 182 65737 42630 1 35973 2302 104 104 10816 mult_36 auto 23.63 369115 199.78 0.46 14.8045 -65232.7 -14.8045 14.8045 0.0852371 0.0747846 15.5504 12.4591 80 523400 32 6.67561e+08 2.17062e+08 6.43241e+07 5947.13 212.20 42.2243 35.0929 488866 18 122978 149362 45951608 9564754 16.4012 16.4012 -77890.3 -16.4012 0 0 8.07606e+07 7466.78 11.85 3.99551 3.53237 +k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml stereovision3.v common 1.73 0.05 9556 5 0.11 -1 -1 32816 -1 -1 15 11 0 0 success v8.0.0-2418-g724f71745-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-60-generic x86_64 2020-09-06T16:31:14 betzgrp-wintermute.eecg.utoronto.ca /home/khalid88/Documents/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_depop/run001/k6_frac_N10_frac_chain_depop50_mem32K_40nm.xml/stereovision3.v/common 31548 11 30 313 321 2 108 56 7 7 49 clb auto 0.14 390 0.12 0.00 2.40726 -153.652 -2.40726 2.01724 0.000319643 0.000261147 0.0398038 0.031786 34 1282 30 1.07788e+06 808410 91376.6 1864.83 0.38 0.134025 0.109215 1116 23 785 2146 110463 39932 3.239 2.7656 -197.562 -3.239 0 0 111771. 2281.05 0.04 0.0232529 0.0204813